Statistik menunjukan bahwa untuk e-mail merupakan aplikasi utama yang sering digunakan oleh pengguna Internet, terutama pengguna veteran bukan pemula. Tentunya dalam sebuah kantor, sekolah, institusi yang mempunyai banyak pengguna akan sangat tidak praktis jika setiap orang harus diberikan komputer & modem untuk mengakses e-mail. Akan lebih sederhana, jika kita bisa membuatkan sebuah e-mail server yang akan mengatur e-mail untuk semua orang, mengambilkan semua mail di Internet, mengirimkan mail ke Internet, maupun mengirimkan e-mail antar pengguna lokal.
Ada beberapa skenario yang dapat dikembangkan dalam memberikan fasilitas e-mail di sebuah sekolah / institusi. Tergantung pada jenis saluran komunikasi yang digunakan, ada yang menggunakan dedicated line (yang tersambung 24 jam), ada yang menggunakan dial-up (yang hanya sewaktu-waktu saja tersambung ke Internet). Lebih mudah urusannya jika anda memiliki dedicated line, akan berbeda & biasa cukup sulit urusannya jika sambungan anda berupa dial-up. Untuk e-mail lokal antar user di server yang sama, proses-nya amat sangat mudah & biasanya dapat beroperasi tanpa perlu banyak di setting.
Selain menset mailserver & software pengambil mail ke pop server di Internet, tentunya ada beberapa hal tambahan yang biasanya perlu di set di server Linux, seperti menambahkan user & memberikan mailbox untuk masing-masing user, menset dial-up ke Internet (untuk sambungan dial-up). Beberapa contoh praktis untuk menset hal tersebut pada Linux Mandrake akan di jelaskan pada tulisan ini.
Sebelum melanjutkan pembahasan teknisnya, ada baiknya kita pelajari teori / konsep cara kerja sebuah mailserver. Dalam proses pengiriman e-mail ada komponen utama yang akan bermain, yaitu:
- Mail User Agent (MUA), seperti Microsoft Outlook, Kmail, Eudora Mail, pine dll.
- Mail Transfer Agent (MTA), seperti qmail, sendmail, postfix.
- Local Delivery Agent (LDA), seperti qmail, sendmail, postfix.
Umumnya MTA & LDA di sediakan di software mailserver yang sama.
Konsep mailserver dengan dedicated line
Pada mailserver yang tersambung ke Internet melalui dedicated line (24 jam), proses yang terjadi menjadi sangat sederhana. Seperti tampak pada gambar, Alice mentik berita yang di tangkap oleh MUA. MUA kemudian akan memanggil MTA untuk mengirimkan e-mail ke MTA di mesin penerima. Setelah mail di terima seluruhnya & diketahui bahwa mail tersebut di tujukan untuk user lokal mail tersebut, MTA di mesin penerima akan memanggil LDA di mesin penerima untuk meletakan e-mail yang dia terima di mailbox Bob di mesin penerima. Sesampainya mail dimailbox Bob, jika Bob mengaktifkan software untuk memberitahukan ada mail masuk (seperti biff) – maka Bob akan memperoleh pemberitahuan bahwa ada mail baru masuk ke mailbox-nya. Bob dapat membaca mail yang masuk menggunakan MUA di komputer Bob.
+---------+ +-------+
+-------+ types | sending | calls |sending|
| Alice |--------->| MUA |--------->| MTA |::::>::::
+-------+ | | | | :: on the
+---------+ +-------+ :: sending
:: machine
.......................................................................
SMTP ::
::::::::::::::::::::::::::::<::::::::::::::::::::::::::::
::
:: +---------+ +-----+ +-------+
:: |receiving| calls | | delivers to | Bob's |
::::>| MTA |--------->| LDA |===============>|mailbox| on the
| | | | | | receiving
+---------+ +-----+ +-------+ machine
| |
| |
+----------------<-------------+ |
| |
+---------+ +-------+ |
| Bob's | | Bob's |<----------+
| notifier| | MUA |
+---------+ +-------+
| |
| +-----+ |
+----->| Bob |<----+
+-----+
Konsep mailserver pada hubungan dial-up
Untuk hubungan dial-up, kita menyelipkan satu proses antar pengirim & penerima mail yaitu mail server di Internet. Yang pada kenyataannya bisa berupa mail server freemail seperti yahoo.com atau mail server ISP. Hal ini diperlukan agar mail kita dapat di tampung sementara di Internet, selama hubungan dial-up belum dilakukan.
Pada saat hubungan dial-up di lakukan, maka server mail lokal akan menjalankan program untuk mengambil mail di mail server Internet menggunakan protokol POP3 atau IMAP untuk di distribusikan ke mailbox lokal. Biasanya di Linux, kita menggunakan program fetchmail untuk mengambil mail server di Internet. Proses selanjutnya mirip dengan proses yang terjadi pada mailserver lokal yang tersambung ke dedicated line.
+---------+ +-------+
+-------+ types | sending | calls |sending|
| Alice |--------->| MUA |--------->| MTA |::::>::::
+-------+ | | | | ::
+---------+ +-------+ :: on the
:: sending
SMTP :: machine
::::::::::::::::::::::::::::<::::::::::::::::::::::::::::
::
.::.......................................................................
::
:: +---------+ +-----+ +-------+
:: |receiving| calls | | delivers | Bob's |
::::>| MTA |--------->| LDA |============>|server |::::>::::
| | | | to |mailbox| :: on the
+---------+ +-----+ +-------+ :: mail
:: server
POP or IMAP ::
::::::::::::::::::::::::::::<:::::::::::::::::::::::::::::::::::
::
.::........................................................................
::
:: +-----------+
:: | |
:::::::>::::::::::::| fetchmail |:::::::: on the
:: | | :: receiving
:: +-----------+ :: machine,
:: :: with fetchmail
:: ::::::::::::::::<:::::::::::::::::::
:: ::
:: :: +---------+ +-----+ +-------+
:: :: |receiving| calls | | delivers to | Bob's |
:: ::::>| MTA |--------->| LDA |===============>|mailbox|
:: | | | | | |
:: +---------+ +-----+ +-------+
:: | |
:: | |
:: +----------------<-------------+ |
:: | |
:: +---------+ +-------+ |
:: | Bob's | | Bob's |<----------+
:: | notifier| | MUA |
:: +---------+ +-------+
:: | |
.::........................................................................
:: . | |
:: without . | |
:: fetchmail . | |
:: . | +-----+ |
:: +----------+ . +----->| |<----+
:: | Bob's | . | Bob |
:::::| POP/IMAP |----.--------->| |
| MUA | . +-----+
+----------+ .
Setup user Linux
Untuk memberikan mailbox untuk setiap orang / user, cara yang paling sederhana dengan menambahkan user di Linux server. Sebagai contoh, program userdrake (start à configuration à userdrake) adalah program utility untuk menambahkan (Add), mengedit (Edit), dan membuang (Delete) user. Jangan lupa jika proses telah di lakukan tekan tombol Save. Jika Save tidak di tekan, proses yang kia lakukan tidak akan terjadi.
Pada saat kita menambakan user di Linux, ada beberapa hal yang perlu di isi seperti, login, nama user (biasanya ada di kolom Comment), dan terakhir password. Kita juga akan memperoleh informasi dimana lokasi directory si user, biasanya ada di bawah directory /home.
Setup mailserver untuk e-mail lokal.
Untuk menerima & mengirimkan e-mail ke user lokal, sebetulnya sebuah mailserver tidak perlu di set apa-apa. Yang di perlukan hanya:
- Memastikan bahwa ada software mailserver yang di install. Biasanya kalau kita menggunakan Mandrake 8.0 ke atas, software yang di install adalah Postfix yang amat sangat mudah menggunakannya.
- Check apakah mailserver tersebut sudah langsung jalan di background pada saat booting. Cara mencheck yang paling sederhana adalah dengan melakukan perintah:
$ telnet localhost 25
dengan menggunakan perintah tersebut maka kita akan masuk ke mailserver. Biasanya software Telnet tidak di install pada setting default Mandrake, jadi kita harus memastikan agar telnet terinstall; atau di install melalui software manager.
Setup mailserver untuk mengirim e-mail ke Internet.
Pada Linux Mandrake 8.0 ke atas, yang biasanya menggunakan mailserver postfix. File yang perlu diperhatikan pada saat setup mail server adalah:
/etc/postfix/main.cf
Jika mailserver tersambung ke LAN, dan kita menginginkan aga semua workstation / PC di LAN dapat merelay mail ke Internet melalui mailserver, ada baiknya dibuka ijin untuk merelay dengan cara menulis parameter:
mynetworks = 192.168.0.0/24, 127.0.0.0/8
dengan cara ini, maka semua workstation di LAN dengan IP 192.168.0.x dapat merelay mail ke Internet.
Untuk mensetup agar mailserver dapat langsung mengirim ke Internet tidak sukar. Jika anda menggunakan dedicated line (24 jam), praktis mail server yang anda gunakan hampir tidak perlu di apa-apakan.
Untuk mailserver yang menggunakan hubungan dial-up ke Internet, agar proses pengiriman mail dapat dipercepat, ada baiknya di set parameter relayhost ke SMTP server milik ISP. Sebagai contoh relayhost saya yang menggunakan ISP indo.net.id, adalah:
relayhost = smtp.indo.net.id
Setup fetchmail untuk mengambil e-mail dari Internet.
Langkah paling seru adalah untuk mengambil e-mail dari Internet. Jika anda mempunyai dedicated line, maka anda bisa memiliki domain sendiri & mail akan masuk langsung ke mailserver anda dan di distribusikan ke mailbox lokal oleh LDA tanpa puisng-pusing.
Bila anda menggunakan hubungan dial-up, maka teknik e-mail dengan domain sendiri menjadi lumayan sulit & membuat kepala pusing. Karena anda meminta ISP untuk menjalankan teknik ETRN atau domain forwarding, yang memungkinkan anda untuk mengambil semua mail domain anda dari Internet walaupun menggunakan hubungan dial-up.
Bagi anda yang menggunakan hubungan dial-up, saya sarankan untuk menggunakan mail di yahoo.com atau sebangsa-nya yang memberikan fasilitas POP kepada kita. Memang tidak terlalu wah tampaknya, karena kita tidak mempunyai domain sendiri – tapi tidak apa-apa karena semua komunikasi akan berjalan lancar.
Untuk mem-POP semua mail user di yahoo.com, pada Linux Mandrake 8.0 saya menggunakan program fetchmail yang memungkinkan untuk mem-POP-kan beberapa mailbox sekaligus secara bersamaan.
Yang perlu dilakukan adalah:
- Buat / edit file /root/.fetchmailrc isikan informasi di bawah ini, untuk masing-masing user-nya, misalnya:
poll pop.mail.yahoo.com protocol pop3
user "ani" password "rahasia_ani" is "ani" here;
poll pop.mail.yahoo.com protocol pop3
user "ayu" password "rahasia_ayu" is "ayu" here;
poll pop.mail.yahoo.com protocol pop3
user "paijo" password "rahasia" is "paijo" here;
poll pop.mail.yahoo.com protocol pop3
user "carox" password "gombal" is "carox” here;
Dengan cara demikian e-mail ani@yahoo.com, ayu@yahoo.com, paijo@yahoo.com dan carox@yahoo.com akan di ambil oleh fetchmail dan akan di simpan di mailbox lokal ani, ayu, paijo dan carox.
- Agar fetchmail dapat jalan dengan baik, ganti permission .fetchmailrc ke 710 dengan cara:
# chmod 710 .fetchmailrc
- Pengambilan semua mail tersebut dapat dilakukan dengan mudah, dengan menjalankan perintah:
# fetchmail –v
User di Linux Server membaca e-mail.
Bagi user yang menggunakan workstation Linux & Server Linux, membaca e-mail dapat sangat dimudahkan dengan menggunakan Kmail. Tampilannya akan sangat mirip dengan Microsoft Outlook Express.
Incoming mail juga dapat di set apakah akan membaca local mailbox atau mengambil-nya melalui POP server tertentu. Jika kita menggunakan fetchmail untuk mengambil mail semua user, maka kita cukup menset agar mengambil mail lokal saja di Kmail.
User di Workstation di LAN membaca e-mail.
Bagi workstation Windows yang terkait ke LAN, pembacaan mail dapat dilakukan menggunakan Microsoft Outlook Express (OE). Hati-hati menggunakan Microsoft Outlook Express (OE), karena walaupun mailserver anda Linux, virus akan tetap tembus ke Microsoft Outlook Express (OE). Berbeda jika anda menggunakan Kmail di Linux, kalaupun ada virus yang masuk dia tidak akan bisa jalan.
Pada Linux Mandrake yang menjalankan KDE sebagai Window Manager-nya, tersedia KPPP untuk hubungan dial-up ke ISP.
Pada bagian account, kita bisa menset nomor telepon ISP tempat kita masuk ke Internet.