Building Mail Server in FreeBSD

25
Perancangan dan Implementasi Aplikasi-Aplikasi yang Diperlukan. Komponen-komponen yang akan kita install untuk membangun suatu mailserver di FreeBSD adalah sebagai berikut: Apache HTTP Server 2.2.8 PHP 5.2.5 Postfix SMTP Server 2.5.1 Courier-IMAP Server 4.3.0 Squirrelmail. Sebelum memulai melakukan langkah instalasi pastikan terlebih dahulu hal-hal berikut ini: FreeBSD telah terinstal dengan benar beserta ports collectionnya (penulis menggunakan freeBSD 8.2) FreeBSD kita telah terhubung/terkoneksi ke internet (penulis terhubung ke jaringan ITB dan mendapat IP 167.205.3.53) Kita memakai domain yang dikenali oleh server tempat kita terkoneksi (domain dari FreeBSD yang dipakai adalah 11.arc.itb.ac.id) Instalasi Apache. Jalankan command berikut : # cd /usr/ports/www/apache22 # make config ; make install clean # rehash Setelah apache selesai terinstal jalankan untuk mengecek terjadi error saat instalasi. # apachectl configtest Jika muncul Syntax OK, maka installasi berhasil dan lanjutkan ke command berikut :

description

How to building Mail server in OPerating system FreeBSD

Transcript of Building Mail Server in FreeBSD

Page 1: Building Mail Server in FreeBSD

Perancangan dan Implementasi

• Aplikasi-Aplikasi yang Diperlukan.

Komponen-komponen yang akan kita install untuk membangun suatu mailserver di FreeBSD

adalah sebagai berikut:

• Apache HTTP Server 2.2.8

• PHP 5.2.5

• Postfix SMTP Server 2.5.1

• Courier-IMAP Server 4.3.0

• Squirrelmail.

Sebelum memulai melakukan langkah instalasi pastikan terlebih dahulu hal-hal berikut ini:

• FreeBSD telah terinstal dengan benar beserta ports collectionnya (penulis menggunakan

freeBSD 8.2)

• FreeBSD kita telah terhubung/terkoneksi ke internet (penulis terhubung ke jaringan ITB

dan mendapat IP 167.205.3.53)

• Kita memakai domain yang dikenali oleh server tempat kita terkoneksi (domain dari

FreeBSD yang dipakai adalah 11.arc.itb.ac.id)

• Instalasi Apache.

Jalankan command berikut :

# cd /usr/ports/www/apache22

# make config ; make install clean

# rehash

Setelah apache selesai terinstal jalankan untuk mengecek terjadi error saat instalasi.

# apachectl configtest

Jika muncul Syntax OK, maka installasi berhasil dan lanjutkan ke command berikut :

Page 2: Building Mail Server in FreeBSD

# ee /etc/rc.conf

Tambahkan baris berikut di /etc/rc.conf:

apache22_enable=”YES”

apache22_http_accept_enable=”YES”

Kemudian jalankan Apache dengan command berikut :

# /usr/local/etc/rc.d/apache22 start

Buka IP address kita pada browser (http://167.205.3.53) akan muncul notifikas “It, Works)

yang artinya apache22 sudah terinstal dengan baik pada FreeBSD.

Page 3: Building Mail Server in FreeBSD

lokasi direktori : /usr/local/www/apache22/data

nama file: index.html

lihat konfigurasi :

/usr/local/www/apache22/data

hends# ls

index.html

• Instalasi PHP5.

Jalankan command berikut :

# cd /usr/ports/lang/php5

# make config ; make install clean

Kemudian menu pengaturan php5 akan muncul, scroll ke APACHE dan tekan spacebar

untuk menginstall Apache Modul. Biarkan settingan lain, kemudian tekan tab (OK) dan

enter.

Page 4: Building Mail Server in FreeBSD

Proses instalasi akan berlangsung dan tunggu selama beberapa saat.

Konfigurasi PHP5-Apache.

Sekarang kita akan mengkonfigurasi file httpd.conf agar apache bekerja dengan modul PHP.

Buka file httpd.conf.

# ee /usr/local/etc/apache22/httpd.conf

Scroll ke DirectoryIndex dan masukan index.php ke index.html seperti ini :

<IfModule dir_module>

DirectoryIndex index.php index.html

</IfModule>

Page 5: Building Mail Server in FreeBSD

Scroll httpd.conf ke bawah dan tambahkan baris berikut:

AddType application/x-httpd-php .php

AddType application/x-httpd-php-source .phps

Save file konfigurasi ini.

Copy file php.ini-development ke php.ini pada /usr/local/etc.

# cd /usr/local/etc

# cp php.ini-development php.ini

Buka php.ini :

# ee /usr/local/etc/php.ini

Scroll ke session.save_path declaration (~1050) dan hapus titik komanya. Kemudian akan

menjadi seperti ini setelah diedit :

session.save_path = “/tmp”

Page 6: Building Mail Server in FreeBSD

Save file konfigurasi ini.

Restart Apache

# /usr/local/etc/rc.d/apache22 restart

Untuk mengetes php, buat phpinfo.php pada direktori default Apache.

# ee /usr/local/www/apache22/data/phpinfo.php

dan tambahkan baris ini :

<?php phpinfo(); ?>

Page 7: Building Mail Server in FreeBSD

Save file ini.

Tes php dengan membuka http://11.arc.itb.ac.id/phpinfo.php pada browser.

Jika konfigurasi berhasil, maka akan terlihat beberapa tabel informasi.

• Instalasi Postfix.

Untuk memulai instalasi jalankan perintah berikut :

# cd /usr/ports/mail/postfix

# make config ; make install clean

Konfigurasi biarkan dalam keadaan default.

Instalasi akan berjalan dan tunggu selama beberapa saat.

Di tengah proses installasi kita akan diminta untuk menambah user postfix ke group mail.

Enter Y untuk melanjutkan instalasi.

Page 8: Building Mail Server in FreeBSD

Ketika anda ditanya apakah ingin mengaktifkan Postfix pada /etc/mail/mailer.conf, enter Y.

Postfix-specific mailer.conf akan dibuat pada /etc/mail

# rehash

Konfigurasi Postfix

Edit file main.cf pada /usr/local/etc/postfix. Pertama, bukan main.cf dengan Easy Editor.

# ee /usr/local/etc/postfix/main.cf

Scroll kebawah pada bagian “mydestination” dan hilangkan komentar yang kedua dari tiga

mydestination statements dengan menghilangkan tanda pagar. Sehingga menjadi :

Page 9: Building Mail Server in FreeBSD

mydestination = $myhostname, localhost.$mydomain, localhost,

$mydomain

Scroll kebawah bagian “home_mailbox” dan hilangkan komentar home_mailbox declaration

untuk mengaktifkan mail delivery ke Maildir. Baris tersebut akan terlihat seperti ini :

home_mailbox = Maildir/

Untuk meneruskan email yang dialamatkan ke root user, anda perlu mengedit file bernama

aliases yang berada di direktori /etc/mail . Buka file ini dengan Easy Editor :

# ee /etc/mail/aliases

Page 10: Building Mail Server in FreeBSD

Scroll kebawah, pada baris “root:….”, dan masukkan email adress dari system

administrator. Akun email root akan diteruskan ke email adress ini. Baris tersebut akan

muncul seperti berikut, dengan mengganti [email protected] dengan email adress

yang benar.

root: [email protected] ( [email protected] )

Save file konfigurasi ini.

Untuk mengupdate aliases.db, masukkan command berikut :

# newaliases

Testing Postfix

Buka rc.conf :

# ee /etc/rc.conf

dan tambahkan baris berikut untuk menjalankan Postfix secara otomatis saat booting :

postfix_enable=”YES”

sendmail_enable=”NO”

sendmail_submit_enable=”NO”

Page 11: Building Mail Server in FreeBSD

sendmail_outbound_enable=”NO”

sendmail_msp_queue_enable=”NO”

Save dan exit.

Buat dan buka file /etc/periodic.conf :

# ee /etc/periodic.conf

dan tambahkan baris berikut ke file kosong (seperti pada gambar di bawah) :

daily_clean_hoststat_enable=”NO”

daily_status_mail_rejects_enable=”NO”

daily_status_include_submit_mailq=”NO”

daily_submit_queuerun=”NO”

Page 12: Building Mail Server in FreeBSD

Save dan exit.

Enter dan masukan command berikut untuk menghentikan Sendmail dan memulai Postfix

untuk testing:

# killall sendmail

# /usr/local/etc/rc.d/postfix start

Mengirim Mail

Masukkan command berikut untuk memulai koneksi dengan Postfix menggunakan telnet:

# telnet localhost 25

Sebelum mengirim email, kita perlu membuat user, dengan cara

# adduser

dengan username : admin, fullname : administrator, shell : tcsh, pass : admin

sedangkan yang lain biarkan default.

Page 13: Building Mail Server in FreeBSD

Kemudian tes dengan mengirim email, dengan cara seperti pada gambar berikut (email akan

dikirim oleh user lainnya (bukan admin yang baru dibuat), yaitu “lukman”):

Email yang telah dikirim kita cek dengan browser dan ternyata sudah diterima dengan baik.

Page 14: Building Mail Server in FreeBSD

• Instalasi Courier Authlib.

Jalankan command berikut untuk memulai installasi :

# cd /usr/ports/security/courier-authlib

# make config ; make install clean

Biarkan konfigurasi default.

Proses instalasi akan berlangsung dan tunggu selama beberapa saat.

Selanjutnya, buka authdaemonrc:

# ee /usr/local/etc/authlib/authdaemonrc

Hilangkan nama dari semua authentication modules pada authmodulelist declaration kecuali

untuk authpam. Authmodulelist akan terlihat seperi ini

authmodulelist=”authpam”

Page 15: Building Mail Server in FreeBSD

Save dan exit.

Testing

Buka rc.conf:

# ee /etc/rc.conf

Tambahkan baris berikut :

courier_authdaemond_enable=”YES”

Jalankan courier authdaemond dan lihat statusnya (seperti pada gambar berikut):

# /usr/local/etc/rc.d/courier-authdaemond start

# /usr/local/etc/rc.d/courier-authdaemond status

Page 16: Building Mail Server in FreeBSD

• Instalasi Courier IMAP.

Courier-imap adalah program server IMAP (Internet Message Access Protocol) open-source

yang berfungsi dengan bergabung dengan MTA (Mail Transfer Agent) semacam Postfix.

Untuk menginstal courier-imap:

# cd /usr/ports/mail/courier-imap

# make config ; make install clean

Page 17: Building Mail Server in FreeBSD

Tunggu proses instalasi yang sedang berlangsung.

Konfigurasi Courier-Imap bagian Imapd.

Setelah proses penginstalan selesai maka kita akan menyeting courier-imap. Untuk

menyetingnya ketikkan perintah :

# ee /etc/rc.conf

Lalu tambahkan line berikut pada file tersebut

courier_imap_imapd_enable=”YES”

courier_imap_pop3d_enable=”YES”

Save konfigurasi ini.

Karena program courier-imap belum terjalankan, kita perlu menjalankannya dengan

mengetik perintah :

# /usr/local/etc/rc.d/courier-imap-imapd start

cd /home/user

Ganti user dengan user Anda sendiri

Mkdir Maildir/

Page 18: Building Mail Server in FreeBSD

Chown –R Maildir/

add direktori di Maildir

cur

new

tem

lalu : Chown –R Maildir/

hasil :

.Drafts courierimapkeywords cur

.Sent courierimapsubscribed new

.Trash courierimapuiddb tmp

Testing Courier-Imap bagian Imapd

Setelah imap berjalan, kita perlu mengecek apakah imap tersebut berjalan dengan baik.

Ketikkan perintah :

# telnet localhost 143

Setelah terhubung, maka kita perlu login dengan nama dan password salah satu user selain

root. Dalam percobaan ini kita akan login menggunakan nama admin dan pasword admin.

Ketik perintah :

aa login username password

Setelah login, kita bisa melihat inbox dari user tersebut dengan cara mengetik perintah :

ab select inb

jika program berhasil berjalan dengan baik maka login dan pengecekan akan berhasil

sehingga akan muncul tulisan yang menunjukkan inbox kita, setelah selesai mengecek,

logout dengan menggunakan perintah

Page 19: Building Mail Server in FreeBSD

ac logout

Setelah itu, sama dengan imap, untuk menjalankan pop3 ketikkan perintah :

# /usr/local/etc/rc.d/courier-imap-pop3d start

Testing Courier-Imap bagian POP3

Lalu untuk mengecek berjalannya pop3 maka ketikkan perintah ;

# telnet localhost 110

Setelah terkoneksi, login dengan username dan password yang ada selain root, dengan

perintah :

user username

pass password

Seperti contoh sebelumnya, dalam contoh kali ini kita juga menggunakan user admin

dengan password admin.

Untuk mengecek status pop3 maka ketikkan persintah „stat‟. jika pop3 berjalan dengan baik

maka akan keluar tulisan OK. Setelah selesai, ketikkan perintah „quit‟ untuk keluar.

Page 20: Building Mail Server in FreeBSD

• Instalasi Squirrelmail.

Ports squirrelmail pada:

# cd /usr/ports/mail/squirrelmail

# make config ; make install clean

Biarkan konfigurasi default dan tunggu sampai proses instalasi selesai.

Konfigurasi SquirrelMail

Setelah proses instalasi selesai, kita akan mengkonfigurasi squirelmail, pertama

meningkatkan kapasitas file yang bisa diupload menjadi 8 Mb dengan cara membuka file

php ini di /usr/local/etc/php.ini dengan easy editor. ketik perintah ;

# ee /usr/local/etc/php.ini

Page 21: Building Mail Server in FreeBSD

Langkah selanjutnya:

# cd /usr/local/www/squirrelmail

#./configure

Pastikkan konfigurasi dibawah ini di setting dengan benar

[2] Server Settings

[1] Domain

Pada prompt, ganti example.com dengan nama domain

[2] Server Settings

Page 22: Building Mail Server in FreeBSD

[A] Update IMAP Settings

[8] Server Software

Pada prompt, ganti other dengan courier

keluar dan simpan

Kemudian, buatlah file squirrelmail.conf di direktori berikut:

# ee /usr/local/etc/apache22/Includes/squirrelmail.conf

Lalu tambahkan konfigurasi berikut:

Alias /squirrelmail “/usr/local/www/squirrelmail/”

<Directory "/usr/local/www/squirrelmail/">

Options None

AllowOverride None

Order allow,deny

Allow from all

</Directory>

Save dan exit.

Page 23: Building Mail Server in FreeBSD

Untuk membiarkan squirrelmail berkerja, kita perlu merestart apache22 dengan perintah:

# /usr/local/etc/rc.d/apache22 restart

Selesai dan squirrelmail pun telah terinstal dengan benar

• Testing Squirrelmail.

Squirrelmail merupakan webmail. Jadi kita bisa mengaksesnya melalui web browser. Pada

browser, masukkan alamat http://167.205.3.53/squirrelmail/

Kemudian kita tinggal login dengan username dan password yang kita miliki (user:admin

pass:admin). Halaman depan squirrelmail seperti pada gambar berikut:

Page 24: Building Mail Server in FreeBSD

Kemudian kita akan mengirim dan menerima email dengan squirrelmail ini.

Bab IV

Pengujian Sistem

Pada pengujian mail server, dicoba proses pengiriman email oleh user dengan alamat

[email protected] ke [email protected]. Dan diuji untuk menerima email dari

[email protected].

Pada gambar di bawah ini email dari Gmail berhasil diterima oleh Squirrelmail.

Page 25: Building Mail Server in FreeBSD

Pada gambar di bawah ini Yahoo Mail berhasil menerima email dari squirrelmail

([email protected]).