Alhamdulillah, akhirnya migrasi mailserver telah selesai.
Mailserver yang dipakai menggunakan postfix dengan database ldap. LDAP dipergunakan untuk authentifikasi semua service. Misalnya, network auth, wireless auth dan squid auth. Jadi cukup 1 username dan password untuk semua service.
Untuk dokumentasi instalasi dan konfigurasi postfix dengan ldap akan dibahas dilain waktu. Begitu juga untuk dokumentasi instalasi dan konfigurasi LDAP servernya juga dibahas dilain waktu.
Step-step migrasi mailserver dari yang lama ke mailserver baru berikut ini (garis besar):
1. Rsync data mailserver lama ke mailserver baru.
2. Matikan service mail server lama.
3. Rsync data mailserver lama ke mailserver baru.
4. Up-kan mailserver baru.
Itu adalah 4 garis besar dalam memigrasi mailserver. Kebetulan yang saya migrasikan adalah dari mailserver qmail ke postfix. Jadi dalam hal format data tidak ada masalah, yaitu Maildir.
Yang perlu diperhatikan adalah, format dalam tempat penyimpanan Maildir. Di server lama berbentuk seperti ini : "domain.com/usera/Maildir/". Sedang di server yang baru berbentuk seperti ini : "domain.com/karyawan/u/usera/". Untuk itu perlu dibuatkan script untuk mengolah data tersebut setelah di rsync pada proses ke (3) diatas.
Karena user yang ada lumayan banyak, perkiraan kasar sekitar 1000 folder, proses yg dibutuhkan sekitar 1 menit 44 detik. Setelah itu langkah 4 langsung berjalan dengan lancar.
------- setelah menunggu selama 15 menit sambil testing server baru ------
Masalah baru muncul. Yaitu, proses auth ke LDAP berjalan sangat lambat. Bahkan kadang sampai failed. Ternyata juga, server LDAP berada di gedung yang berbeda tempat, sekitar 3 kilo bila ditarik garis lurus. Dan gedung tersebut dihubungkan dengan koneksi WiMax. Setelah di cek di server LDAP, ternyata proses slapd menggunakan 99% cpu.
Jadi pada saat klimaks (auth LDAP berjalan lambat), ternyata memakan b/w sekitar 8mbps. Hal ini disebabkan oleh karena postfix selalu meng-query ke LDAP server setiap ada email yang mau masuk ke server.
Langkah pertama dilakukan adalah optimasi konfigurasi LDAP di postfix. Ada opsi untuk meng-cache hasil query tersebut. Setelah di set supaya meng-cache hasil query, ternyata proses slapd-nya menurun menjadi 80%. Tapi sebentar saja sudah naik lagi menjadi 99%.
Tenang, masih ada tricknya lagi. Yaitu dengan memasang DNSBL di Postfix. Jadi apabila mailserver pengirim diketahui sebagai spammer, tanpa perlu query ke LDAP, postfix langsung men-denied/rejectnya.
Berikut DNSBL yang saya pasang:
reject_rbl_client cbl.abuseat.org,
reject_rbl_client list.dsbl.org,
reject_rbl_client sbl.spamhaus.org,
reject_rbl_client pbl.spamhaus.org
Dan ternyata berhasil!. Proses slapd langsung turun drastis. Hehehe, ternyata banyak juga spammer yah. Setelah menunggu selama 1 jam, tidak ada masalah berarti. Dan dari log mail, yang dibaca menggunakan pflogsumm, ternyata ada 87% email yang direject, entah karena spam, atau hal yg lainnya. Jadi yang masuk sekitar 13% saja. Dari mail admin yang bertugas, diketahui email yg masuk dalam sehari ada sekitar 12ribu. Jadi kalo misalnya email yang valid sekitar 10%, cuma ada 1200 email. Lainnya? Bisa SPAM atau gak valid. Buang-buang bandwidth aja ya..
Semoga di hari senin besok tidak ada masalah yang berarti. Amin.
[update 4 sep 2008]
Ternyata di hari senin banyak user yang susah untuk konek. Selidik punya selidik, proses di mesin ldap-nya sangat tinggi sekali, sekitar 99% CPU time. Setelah seharian nyari tahu kenapa, akhirnya diketahui bahwa database ldap-nya belum diindex. hehehe.. Setelah diindex, langsung terjun bebas ke sekitar 20%. Sementara dibiarkan dulu, sembari membuat ldap tambahan dan di load balance.
--budiw