Beberapa hari lalu terjadi insiden kecil di kantor saya, tiba – tiba saja ada email yang ‘kurang menyenangkan’ yang datang dari domain luar, tepatnya dari salah satu account gmail. Hal ini tentu saja membuat gerah pihak manajemen… menurut mereka harusnya Millis (lebih tepatnya yang saya gunakan disini adalah Distribution List, fasilitas dari mail server Zimbra Collaboration Suite) hanya digunakan untuk kebutuhan internal, jadi harus steril dari user diluar perusahaan / diluar domain perusahaan. Ujung – ujungnya tantangan baru nih… , setelah googling kesana – sini, browsing ke zimbra, nanya – nanya ke millis…so akhirnya semua dapat teratasi dengan baik.Pada kesempatan ini saya mencoba menuliskan ulang langkah – langkahnya, mudah – mudahan saja tulisan ini dapat menjadi ‘rekam peristiwa’ yang dapat berguna nantinya, in case saya lupa misalnya, lebih – lebih kalau dapat berguna buat teman – teman yang mengalami kejadian yang sama.
Catatan :
1. Langkah – langkah ini adalah langkah merubah postfix,
dengan membuat rule baru, untuk menentukan domain mana yang boleh
mengirim, atau tidak ke dalam distribution list.
2. Dalam hal ini
nantinya akan terbentuk beberapa file baru dan beberapa manipulasi
konfigurasi postfix. Sangat saya sarankan untuk melakukan backup
sebelum melakukan eksekusi.
3. Langkah – langkah ini sudah teruji
dalam mail server saya, namun mungkin saja tidak dapat dilakukan dimail
server yang lain, atau butuh penyesuaian. Maka ada baiknya sebelum
melakukannya, anda pelajari dulu langkah – langkah yang saya tulis ini
secara menyeluruh.
4. Resiko apapun yang timbul dikarenakan
perubahan konfigurasi pada mail server anda, sepenuhnya menjadi
tanggung jawab anda dan bukan tanggung jawab saya selaku penulis.
Create a ‘permitted senders’ list (as user zimbra) – This is your list of domains and/or users who can email your protected email addresses:
vi /opt/zimbra/postfix/conf/permitted_senders
[paste in contents below editing as required]
localhost OK
mydomain.com OK
zimbra.mydomain.com OK
okuser@externaldom.com OK
Create a ‘protected recipients’ list (as user zimbra) – This is your list of email addresses that may only receive email from ‘permitted senders’
vi /opt/zimbra/postfix/conf/protected_recipients
[paste in contents below editing as required]
test-dist-list@mydomain.com
permitted_senders_list
protected-user@mydomain.com
permitted_senders_list
Create a simple bash script to create postfix DB files (as user zimbra):
vi /opt/zimbra/postfix/conf/update_protected_recipients
[paste in contents below editing as required]
#!/bin/bash
echo “rebuild permitted_senders…”
postmap /opt/zimbra/postfix/conf/permitted_senders
echo “rebuild protected_recipients…”
postmap /opt/zimbra/postfix/conf/protected_recipients
Make new script executable, then run it
chmod 755 /opt/zimbra/postfix/conf/update_protected_recipients
/opt/zimbra/postfix/conf/update_protected_recipients
You should now see permitted_senders.db and protected_recipients.db in the directory
Add necessary settings to /opt/zimbra/postfix/conf/main.cf
vi /opt/zimbra/postfix/conf/main.cf
[add these items to the file – note permitted_senders_list must match value in protected_recipients]
permitted_senders_list = check_sender_access hash:/opt/zimbra/postfix/conf/permitted_senders, reject
smtpd_restriction_classes = permitted_senders_list
**Note this change to the main.cf won’t survive upgrades. Be sure to save a copy of your main.cf file**
Now add your new restriction to the top of postfix_recipient_restrictions.cf
vi /opt/zimbra/conf/postfix_recipient_restrictions.cf
[paste this into the first line of the file, above any other settings]
check_recipient_access hash:/opt/zimbra/postfix/conf/protected_recipients
Reload postfix to activate settings:
postfix reload
Note 3 from talk: files ownership should be set to root:postfix before reloading postfix. This avoids annoying warning messages in logfile.
SAATNYA UNTUK MELAKUKAN TESTING :
Test your settings via telnet:
Enter command:
telnet zimbra.mydomain.com 25
You will see:
Trying 192.168.1.1…
Connected to zimbra.mydomain.com.
Escape character is ‘^]’.
220 zimbra.mydomain.com ESMTP Postfix
Enter command:
HELO test.com
You will see:
250 zimbra.mydomain.com
Enter command:
MAIL FROM: jdoe@test.com
You will see:
250 Ok
Enter command:
RCPT TO: test-dist-list@mydomain.com
You will see:
554 : Recipient address rejected: Access denied
QUIT
221 Bye
Connection closed by foreign host.
That’s it. If you need to protect new distribution lists or emails, or add new senders, just edit and re-run the update script, then reload postfix.
Sumber berita : http://wiki.zimbra.com/index.php?title=RestrictPostfixRecipients
Menghapus Mail Queue Yang Membandel (Solved)
Siang ini tiba – tiba server email dikantor saya ngedrop, user yang jumlahnya sudah mencapai 1600an tidak dapat mendownload email, baik melalui mail client maupun webmail. Setelah coba diselidiki ternyata banyak email yang queue yang bersumber dari 1 account email. Email queue tersebut dapat dilihat dengan command :
# /opt/zimbra/postfix/sbin/mailq
Gak lama keluar rentetan mail queue yang jumlahnya sampai 4150 email dan terus bertambah. Dalam daftar yang keluar tersebut terlihat ada 1 account yang mengirim ke seluruh member distribution list yang ada diserver zimbra, dengan kata lain membroadcast email + attachment yang lumayan besar ke seluruh account yang ada. Normalnya saya akan menggunakan command postsuper : Read more »
Siang ini tiba – tiba server email dikantor saya ngedrop, user yang jumlahnya sudah mencapai 1600an tidak dapat mendownload email, baik melalui mail client maupun webmail. Setelah coba diselidiki ternyata banyak email yang queue yang bersumber dari 1 account email. Email queue tersebut dapat dilihat dengan command :
# /opt/zimbra/postfix/sbin/mailq
Gak lama keluar rentetan mail queue yang jumlahnya sampai 4150 email dan terus bertambah. Dalam daftar yang keluar tersebut terlihat ada 1 account yang mengirim ke seluruh member distribution list yang ada diserver zimbra, dengan kata lain membroadcast email + attachment yang lumayan besar ke seluruh account yang ada. Normalnya saya akan menggunakan command postsuper :
# /opt/zimbra/postfix/sbin/postsuper -d ALL
untuk menghapus seluruh email yang queue. Tapi command postsuper diatas akan menghapus seluruh email yang sedang antri (queue), sementara yang saya butuhkan hanya menghapus mail queue yang bersumber dari 1 account saja.
Setelah lari ke Wiki zimbra, maka permasalahan tersebut dapat diselesaikan dengan mudah, cukup dengan 2 command sebagai berikut :
1. Melihat daftar ID mail yang akan kita delete (asumsi akun email : bandel@email.com)
mailq | tail +2 | grep -v ‘^ *(‘ | awk ‘BEGIN { RS = “” } { if ($8 ==
“bandel@amail.com” && $9 == “”) print $1 } ‘ | tr -d ‘*!’
2. Kemudian untuk delete semua mail dari bandel@email.com, cukup tambahkan command postsuper -d diakhir command yang pertama tadi
mailq | tail +2 | grep -v ‘^ *(‘ | awk ‘BEGIN { RS = “” } { if ($8 ==
“bandel@email.com” && $9 == “”) print $1 } ‘ | tr -d ‘*!’ | postsuper -d –
3. Taraaaaa…. 4150 email yang queue tadi tinggal 100an email, itupun karena Over Quota, jadi biarin aja dulu… hehe.
Catatan : Command panjang diatas ditulis dalam satu command. Untuk lebih lengkapnya dapat melihat di link ini.
http://nanks306.wordpress.com/2009/06/09/memproteksi-distribution-list-dari-domain-yang-tidak-diinginkan/
http://nanks306.wordpress.com/2010/07/05/menghapus-mail-queue-yang-membandel-solved/#more-272
Like this:
Like Loading...