Asfihani
Wed, 10 Mar 2004 00:29:33 -0800
Halo, Kalau ada yang tertarik memerangi spam dengan greylisting, berikut ini kira-kira caranya :
1 - Salin file smtpd-policy.pl pada direktori examples/smtpd-policy ke
direktori /usr/libexec/postfix
2 - Edit file /usr/libexec/postfix/smtpd-policy.pl pada bagian :
$database_name="/var/mta/smtpd-policy.db";
$greylist_delay=60;
database_name: sesuaikan dengan letak direktori yang akan dibuat
pada langkah berikutnya
greylist_delay: sesuaikan dengan waktu (dalam detik) dimana suatu
message akan ditunda sebelum diproses.
3 - Buat direktori /var/mta ganti pemiliknya menjadi nobody.
% mkdir /var/mta
% chown nobody /var/mta
4 - Buat entry "policy" pada master.cf, misalnya :
policy unix - n n - - spawn
user=nobody argv=/usr/bin/perl /usr/libexec/postfix/smtpd-policy.pl
5 - Set Postfix untuk melakukan greylisting. Anda bisa melakukan
greylisting terhadap SEMUA email yang masuk (dari luar mynetworks)
atau hanya dari beberapa domain saja.
Pilih salah satu saja :-) dibawah ini:
- Untuk menerapkan greylisting ke semua message:
smtpd_recipient_restrictions =
permit_mynetworks
reject_unauth_destination
check_sender_access hash:/etc/postfix/maps/sender_access
check_policy_service unix:private/policy
...RBL stuff disini...
permit
Lakukan "whitelist" ke mailing-list yang ada, atau database policy
akan dipenuhi oleh sampah :-), misalnya bikin sebuah file:
/etc/postfix/maps/sender_access
Isinya:
securityfocus.com OK
returns.groups.yahoo.com OK
linux.or.id OK
cloud9.net OK
postfix.org OK
list.cr.yp.to OK
worldless.net OK
groups.or.id OK
lists.untroubled.org OK
- Untuk menerapkan greylisting dari domain tertentu:
smtpd_recipient_restrictions =
permit_mynetworks
reject_unauth_destination
check_sender_access hash:/etc/postfix/maps/sender_access
...RBL stuff disini...
permit
restriction_classes = greylist
greylist = check_policy_service unix:private/policy
Kemudian daftarkan nama domain yang sering digunakan untuk
forgery pada file /etc/postfix/maps/sender_access
yahoo.com greylist
aol.com greylist
hotmail.com greylist
bigfoot.com greylist
...
5 - % postmap /etc/postfix/maps/sender_access
% postfix reload
Anda bisa melihat log Postfix atau mencoba mengirim email dari tempat
lain untuk mengetestnya.
Catatan: Selama sekitar 4 hari saya terapkan di server disini dan saya
tinggal pulang ke kampung, alhamudlillah spam yang benar-benar
"diniati" hanya 5 buah :-) dan diidentifikasi dengan baik oleh SA.
File databse "smtpd-policy.db" juga tidak sampai 1 MB. Atau mungkin
pas ditesting spammernya lagi istirahat :-)
[EMAIL PROTECTED] mta]# du -sh smtpd-policy.db
864K smtpd-policy.db
Semoga berguna,
Asfihani