Jika saat ini Anda tanyakan kepada paramahasiswa di kota-kota besar, apakahmereka sudah mempunyai alamat e-mail atau belum, mayoritas dari mereka pasti akan menjawab sudah. Saat ini e-mail sudah menjadi alat komunikasi yang murah dan efektif untuk berkomunikasi. Demikian banyaknya pengguna e-mail di Internet, sampai layanan search engine Google, juga menyediakan layanan Gmail untuk menyaingi layanan Yahoo! Mail. Hebatnya lagi, mereka menyediakan ruang sampai lebih dari 1 GB untuk sebuah alamat e-mail yang kita buat. Cara untuk ber-e-mail ria di Internet juga cukup beragam. Mulai dari membacanya langsung melalui WebMail maupun menggunakan program Mail User Agent (MUA). Di Linux, aplikasi Mail User Agent (MUA) untuk membaca dan mengirim e-mail sudah cukup beragam. Mulai dari yang berbasis grafis seperti Mozilla Thunderbird, Mozilla Mail, Sylpheed, Evolution, sampai yang berbasiskan CLI seperti pine, mutt, dan sebagainya. Setelah membahas e-mail dari segi client, sekarang kita akan membicarakan e-mail dari segi server. Telah kita ketahui, kalau salah satu yang menjadi kelebihan Linux adalah karena keandalannya untuk digunakan sebagai server. Dengan Linux, kita dapat memilih program-program server berkualitas tinggi, yang kebanyakan dapat kita pergunakan secara free. Bicara mengenai program mail server di Linux, ada beberapa pilihan program mail server (atau biasa disebut MTA) yang dapat Anda gunakan. Beberapa di antaranya adalah Qmail, Postfi x, Sendmail, Exim, Vmail Server, dan sebagainya. Pada artikel ini, penulis akan menjelaskan dasar pengonfigurasian Postfi x sebagai MTA untuk beberapa keperluan.

Postfix
Postfix adalah Mail Transfer Agent yang dikembangkan oleh Wietse Venema. Beberapa fitur yang ditawarkan oleh Postfix:
Performance. Postfix mampu melayani sejuta e-mail dalam sehari. Hal ini menunjukkan kalau Postfix dapat dikategorikan sebagai mail server berskala besar.
Kompatibilitas. Postfix sangat kompatibel dengan Sendmail (yang sudah banyak dipergunakan orang sebagai MTA di UNIX). Postfix terdiri beberapa program kecil yang saling tidak percaya. Jika Sendmail hanya mempunyai satu program besar dan satu file konfigurasi besar, Postfix memiliki program-program kecil yang menjalankan tugasnya secara spesifik.
Keamanan. Postfix dijalankan dengan proteksi bertingkat, oleh program-program kecil yang saling tidak percaya. Masing-masing program dijalankan oleh user khusus (bukan setuid).
Multiple Transport. Postfix dapat mengirim surat dengan modus SMTP (Simple Mail Transfer Protocol) dan UUCP (Unix to Unix Copy Protocol) sekaligus.
Mendukung format Maildir. Maildir adalah format boks penyimpanan surat dalam bentuk folder daripada berbentuk satu file (mbox).
Kemudahan konfigurasi. Meskipun Postfix terdiri dari banyak program kecil, namun hanya memiliki satu file konfigurasi yang mudah untuk di-setting, yakni /etc/postfix/main.cf.

Cara kerja Postfix
Berikut sekilas gambaran bagaimana Postfix bekerja:
1. Jika ada mail lokal, maupun mail remote yang mempergunakan SMTP, diletakkan ke dalam direktori /var/mail/postfi x/mail-drop. Direktori ini world writable, dan permission-nya selalu dicek oleh pickup daemon setiap kali ada mail masuk.
2. Disini akan dicek host, domain, maupun username yang dituju. Pengecekan juga termasuk yang didefinifisikan di /etc/aliases dan ~/.forward. Jika bermasalah, mail akan dikembalikan ke pengirim. Biasanya ada satu tembusan ke postmaster.
3. Dari maildrop, mail akan di-clean-up dengan menambahkan header, dan meletakkannya di direktori /var/mail/postfix/incoming. Di sini program queue manager akan diaktifkan.
4. Queue Manager akan memisahkan mail-mail yang ditujukan untuk jaringan lokal dan mail yang ditujukan untuk host/jaringan remote. Jika ada mail yang macet, Queue Manager akan memilahnya, sehingga tidak mempengaruhi pengantaran mail lainnya.
5. Trivial-rewrite adalah program yang dipanggil oleh Queue Manager untuk resolving alamat dari tujuan surat.

Instalasi Postfix
Untuk menginstalasikan Postfix, Anda dapat melakukannya dengan mudah. Hampir semua distro sudah menyertakan paket installer Postfix ke dalam distribusinya. Pada uji coba kali ini, penulis menggunakan distro Fedora Core 4.
Sebelum dapat menginstalasikan Postfix di Fedora, uninstall terlebih dahulu paket mail server Sendmail yang ada pada komputer Anda.
# rpm -qa | grep sendmail sendmail-8.13.4-2
# rpm -e sendmail-8.13.4-2–nodeps

Setelah meng-uninstall paket Sendmail, langkah berikutnya adalah menginstalasi Postfix. Pada Fedora Core 4, paket Postfix berada pada disc 3. Untuk menginstalasi paket Postfix, ketikkan perintah berikut:
# rpm -ivh postfix-2.2.2-2.i386.rpm

Setelah paket Postfix terinstalasi dengan baik di sistem Anda, Postfix dapat langsung diaktifkan sebagai SMTP server (dengan catatan komputer memiliki alamat host FQDN), dengan menjalankan skrip yang sudah terpasang di /etc/init.d.
# /etc/init.d/postfix start

Untuk mengecek apakah Postfix sudah berjalan dengan baik, bisa dilakukan dengan beberapa cara.
# ps ax | grep postfix 1894 ? Ss 0:00 /usr/libexec/postfix/master

Konfigurasi Postfix
Untuk mengonfigurasikan Postfix, Anda tinggal mengedit file konfi gurasi postfix yang berada di /etc/postfi x/main.cf. Beberapa parameter penting yang perlu diedit untuk memfungsikan Postfix:

Konfigurasi dasar
Berikut contoh konfigurasi dasar dari Postfix:
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
mail_owner = postfix
default_privs = nobody
myhostname = ws034.pinpoint.co.id
mydomain = pinpoint.co.id
myorigin = $mydomain
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain
virtual_maps = hash:/etc/postfix/virtual
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
recipient_delimiter = +mail_spool_directory = /var/spool/mailmynetworks = 192.168.0.0/24, 127.0.0.0/8
smtpd_banner = $myhostname ESMTP$mail_name
debugger_command=PATH=/usr/bin:/usr/X11R6/binxxgdb$daemon_directory/$process_name$process_id & sleep 5

(Note: Sesuaikan hostname sesuai dengan hostname komputer Anda).

Berikutnya, reload service Postfix untuk melihat perubahan dengan mengetikkan perintah berikut:
# /etc/init.d/postfix reload

Postfix sebagai mail server Intranet
Cara yang paling mudah untuk setting Postfix di dalam intranet, adalah mengirimkan semuanya ke mail gateway, dan biarkan mail gateway meneruskan semua emailnya. Ada beberapa konfigurasi yang perlu ditambahkan, di antaranya adalah sebagai berikut:
# vi /etc/postfix/main.cf:
myorigin = $mydomain
relayhost = gateway.ws034.pinpoint.co.id
disable_dns_lookups= yes

Atau secara lengkapnya adalah sebagai berikut:
queue_directory = /var/spool/postfix
command_directory = /usr/sbindaemon_directory = /usr/libexec/postfix
mail_owner = postfix
default_privs = nobody
disable_dns_lookups = yes
myhostname = ws034.pinpoint.co.id
mydomain = pinpoint.co.id
myorigin = $mydomain
relayhost = gateway.ws034.pinpoint.co.id
inet_interfaces = all
mydestination = $myhostname, localhost.$mydomain
virtual_maps = hash:/etc/postfix/virtual
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
recipient_delimiter = +mail_spool_directory = /var/spool/mailmynetworks = 192.168.0.0/24,127.0.0.0/8
smtpd_banner = $myhostname ESMTP$mail_name
debugger_command=PATH=/usr/bin:/usr/X11R6/binxxgdb$daemon_directory/$process_name$process_id & sleep 5

Postfix sebagai mail host lokal dalam intranet
Jika di dalam intranet, Postfix berperan sebagai host yang mengirimkan e-mail lokal, langsung mengirim mail tanpa melewati mail server gateway, setting-nya sebagai berikut:
Edit file /etc/postfix/transport.
ws034.pinpoint.co.id
smtp:
.ws034.pinpoint.co.id
smtp:
host.ws034.pinpoint.co.id
smtp:
.host.ws034.pinpoint.co.id
smtp:

Tambahkan baris berikut dalam file /etc/postfi x/main.cf :
transport_maps = hash:/etc/postfix/transport

Postfix menggunakan koneksi dial-up
Pada host dengan sambungan dial-up, Postfix dapat di-setting dengan menambahkan parameter berikut. Edit file /etc/postfi x/main.cf, pada bagian berikut:
relayhost = smtp.provider.net
defer_transports = smtp
disable_dns_lookups = yes

Saat Anda mengirimkan e-mail, Postfix akan menempatkannya dalam antrian, dan dapat dipaksa untuk mengirimkan (flush the queue), dengan menjalankan perintah:
# /usr/sbin/sendmail -q

Jangan lupa untuk menjalankan ulang postfix setelah anda mengubah konfigurasinya.
# /etc/rc.d/init.d/postfix restart

Virtual domain
Untuk setting virtual domain, tambahkan atau edit baris berikut pada fi le /etc/postfix/main.cf :
virtual_maps = hash:/etc/postfix/virtual

Edit file /etc/postfix/virtual dengan sintaks:
virtual.domain sakarepmu
user@virtual.domain
ezarnilaru,root

Dari keterangan di atas, berarti secara default, semua user di real domain, punya alamat juga di virtual domain. Kemudian di baris kedua, dapat pula ditambahkan, user tertentu akan diteruskan ke alamat tertentu. Dalam contoh di atas, setiap email yang tertuju ke user@virtual.domain akan diteruskan ke ezarnilaru@real.domain dan root@real.domain.
Selesai editing file /etc/postfi x/virtual, jalankan:
# postmap -c /etc/postfix hash:/etc/postfix/virtual

Kemudian restart postfix untuk memastikan virtual domain telah aktif.
# postfix reload

Aliases
Untuk mengaktifkan aliases cukup mudah. Pertama pastikan baris berikut ada di /etc/postfi x/main.cf
alias_maps = hash:/etc/postfix/aliases
alias_database = hash:/etc/postfix/aliases

Setelah itu edit file /etc/aliases, tambahkan beberapa baris alias.
…………………………..
…………………
…………………………..
…………………
# tambahkan alias sendiri
ezar : ezarnilaru
…………………………..
…………………
…………………………..
…………………
Selesai edit file tersebut, jalankan perintah newaliases untuk memasukkan alias baru ke dalam postfix, dan setelah itu reload postfix-nya.
# newaliases
# /etc/init.d/postfix reload

POP3 server
Untuk menginstalasikan POP3 server, Anda dapat menginstallasikan paket dovecot yang ada di CD 3 Fedora Core 4. Instalasikan dovecot dengan mengetikkan perintah berikut:
# rpm -ivh dovecot-0.99.14-4.fc4.i386.rpm

Jalankan atau restart service dovecot.
# /etc/init.d/dovecot start

Untuk mengecek apakah service POP3-nya sudah berjalan atau belum, ketikkan perintah berikut:
# nmap localhost
Starting nmap 3.81 ( http://www.insecure.org/nmap/ ) at 2008-09-26 07:35 WIB
Interesting ports on localhost (127.0.0.1):
(The 1656 ports scanned but not shown below are in state: closed)
PORT STATE SERVICE
22/tcp open ssh
25/tcp open smtp
110/tcp open pop3
111/tcp open rpcbind
143/tcp open imap
993/tcp open imaps
995/tcp open pop3s

Pengujian
Tahap terakhir untuk mengetahui apakah postfix sudah berjalan dengan baik atau belum, dapat dilakukan dengan mengirimkan mail, baik antar-user lokal maupun Internet.

Test kirim kepada user lokal
[root@ws034 ~]# mail
ezarnilaru@ws034.pinpoint.co.id
Subject: Test Mail
Coba Kirim E-mail ke user
ezarnilaru dari user root.
Thanks
Cc:

Test terima dari user lokal
[ezarnilaru@ws034 ~]$ mail
Mail version 8.1 6/6/93. Type ? for help.
“/var/spool/mail/ezarnilaru”: 1 message 1 unread
>U 1 root@pinpoint.co.id TueMar 18 10:14 16/559 “Test Mail”
& 1
Message 1:
From root@pinpoint.co.id Tue Mar 18 10:14:06 2008
X-Original-To: ezarnilaru@ws034.pinpoint.co.id
Delivered-To: ezarnilaru@ws034.pinpoint.co.id
To: ezarnilaru@ws034.pinpoint.co.id
Subject: Test Mail
Date: Tue, 18 Mar 2008 10:14:06 +0700 (WIB)
From: root@pinpoint.co.id (root)

Coba Kirim E-mail ke user
ezarnilaru dari user root.
Thanks
& quit
Saved 1 message in mbox

Test terima dan kirim dari host lain
Untuk menjalankan test dari host lain, cukup tunjuk mesin postfix (baik real host maupun virtual host) menjadi SMTP dan POP3 Server. Seting tergantung pada mail client yang dipergunakan.