Postscreen Zimbra Mail Server

Postscreen Zimbra Mail Server

Postscreen Zimbra Mail ServerPostscreen Zimbra Mail Server, Postscreen merupakan antispam tambahan pada zimbra yang berfungsi untuk pencegahan spambot yang dapat menyebabkan mail server menjadi overload proses. Kita bisa melakukan whitelist IP Publik untuk mem bypass proses filter pada postscreen.

Bagaimana cara kerjanya

Skenario Tanpa Postscreen

Pada skenario tanpa postscreen, di mana spambot dan zombie email dapat terkoneksi langsung ke dalam smtp zimbra. Dalam skenario ini, menunggu spambot dan zombie email menyelesaikan koneksi terhadap smtp dan ini membut smtp menjadi timeout. Dampaknya menyebabkan email yang lain tidak bisa di proses pada smtp.

Mar 01 19:29:54 zimbrauk postfix/smtpd[24266]: timeout after RCPT from mail.example.com[60.60.60.70]

 

Skenario Dengan Postscreen

Pada skenario dengan postscreen, dimana spambot dan zombie terkoneksi dahulu pada postscreen. Pada postscreen dilakukan scanning, apabila koneksi merupakan dari spambot dan zombie maka koneksi akan di tolak dan apabila koneksi tersebut dari IP yang sudah di whitelist sebelumnya atau dari IP yang bukan dari spambot dan zombie, maka email akan di teruskan ke antispam dan antivirus lokal zimbra.

 

Alur Kerja Postscreen

Alur kerja pada postscreen dapat dilihat pada gambar berikut

Zimbra attributes untuk Postscreen

Berikut ini table yang berisi atribut baru untuk postscreen dan link ke original postfix yang menjelaskan lengkap tentang atribut yang tersedia.

Mohon diperhatikan perbedaan antara ignore, enforce dan drop untuk atribut tertentu:

  • ignore (default) – Mengabaikan semua koneksi yang masuk ke dalam postscreen. ini biasanya digunakan untuk menguji dan mengumpulkan statistik tanpa memblokir email.
  • enforce – Izinkan semua koneksi pada postscreen. Tolak email dengan balasan 550 SMTP dan akan tercatat di log. helo/sender/recipient information.
  • drop – Drop/tolak semua koneksi dengan balasan 521 SMTP.

 

Name Description Type Optional in Default value Options
zimbraMtaPostscreenAccessList Value for postconf postscreen_access_list. Single valued, commas,separated list. string server,globalConfig permit_mynetworks
zimbraMtaPostscreenBareNewlineAction Value for postconf postscreen_bare_newline_action. enum server,globalConfig ignore ignore,enforce,drop
zimbraMtaPostscreenBareNewlineEnable Value for postconf postscreen_bare_newline_enable. enum server,globalConfig no yes,no
zimbraMtaPostscreenBareNewlineTTL Value for postconf postscreen_bare_newline_ttl. string server,globalConfig 30d
zimbraMtaPostscreenBlacklistAction Value for postconf postscreen_blacklist_action. enum server,globalConfig ignore ignore,enforce,drop
zimbraMtaPostscreenCacheCleanupInterval Value for postconf postscreen_cache_cleanup_interval. string server,globalConfig 12h
zimbraMtaPostscreenCacheRetentionTime Value for postconf postscreen_cache_retention_time. string server,globalConfig 7d
zimbraMtaPostscreenCommandCountLimit Value for postconf postscreen_command_count_limit. integer server,globalConfig 20
zimbraMtaPostscreenDnsblAction Value for postconf postscreen_dnsbl_action. enum server,globalConfig ignore ignore,enforce,drop
zimbraMtaPostscreenDnsblSites Value for postconf postscreen_dnsbl_sites. Multi valued, one DNSBL,value pair per attribute value. string server,globalConfig
zimbraMtaPostscreenDnsblThreshold Value for postconf postscreen_dnsbl_threshold. integer server,globalConfig 1
zimbraMtaPostscreenDnsblTTL Value for postconf postscreen_dnsbl_ttl. string server,globalConfig 1h
zimbraMtaPostscreenDnsblWhitelistThreshold Value for postconf postscreen_dnsbl_whitelist_threshold. integer server,globalConfig 0
zimbraMtaPostscreenGreetAction Value for postconf postscreen_greet_action. enum server,globalConfig ignore ignore,enforce,drop
zimbraMtaPostscreenGreetTTL Value for postconf postscreen_greet_ttl. string server,globalConfig 1d
zimbraMtaPostscreenNonSmtpCommandAction Value for postconf postscreen_non_smtp_command_action. enum server,globalConfig drop ignore,enforce,drop
zimbraMtaPostscreenNonSmtpCommandEnable Value for postconf postscreen_non_smtp_command_enable. enum server,globalConfig no yes,no
zimbraMtaPostscreenNonSmtpCommandTTL Value for postconf postscreen_non_smtp_command_ttl. string server,globalConfig 30d
zimbraMtaPostscreenPipeliningAction Value for postconf postscreen_pipelining_action. enum server,globalConfig enforce ignore,enforce,drop
zimbraMtaPostscreenPipeliningEnable Value for postconf postscreen_pipelining_enable. enum server,globalConfig no yes,no
zimbraMtaPostscreenPipeliningTTL Value for postconf postscreen_pipelining_ttl. string server,globalConfig 30d
zimbraMtaPostscreenWatchdogTimeout Value for postconf postscreen_watchdog_timeout. string server,globalConfig 10s
zimbraMtaPostscreenWhitelistInterfaces Value for postconf postscreen_whitelist_interfaces. Single valued,,comma separated list. string server,globalConfig static:all
zimbraMtaPostscreenDnsblMinTTL Value for postconf postscreen_dnsbl_min_ttl. tbd server,globalConfig tbd 60s
zimbraMtaPostscreenDnsblMaxTTL Value for postconf postscreen_dnsbl_max_ttl. tbd server,globalConfig tbd tbd
zimbraMtaPostscreenUpstreamProxyProtocol Value for postconf postscreen_upstream_proxy_protocol. Single valued, commas,separated list. enum server,globalConfig

Bagaimana Meng-aktifkan Postscreen

Pada zimbra 8.7 ke atas Postscreen sudah aktif secara otomatis dalam kondisi default

Untuk mengecek konfigurasi postscreen yang ada saat ini

zmprov gacf | grep zimbraMtaPostscreen

Postscreen bisa di konfigurasi menggunakan perintah berikut:

zmprov mcf zimbraMtaPostscreenAccessList permit_mynetworks
zmprov mcf zimbraMtaPostscreenBareNewlineAction ignore
zmprov mcf zimbraMtaPostscreenBareNewlineEnable no
zmprov mcf zimbraMtaPostscreenBareNewlineTTL 30d
zmprov mcf zimbraMtaPostscreenBlacklistAction ignore
zmprov mcf zimbraMtaPostscreenCacheCleanupInterval 12h
zmprov mcf zimbraMtaPostscreenCacheRetentionTime 7d
zmprov mcf zimbraMtaPostscreenCommandCountLimit 20
zmprov mcf zimbraMtaPostscreenDnsblAction enforce
zmprov mcf zimbraMtaPostscreenDnsblSites 'b.barracudacentral.org=127.0.0.2*7' zimbraMtaPostscreenDnsblSites 'dnsbl.inps.de=127.0.0.2*7' zimbraMtaPostscreenDnsblSites 'zen.spamhaus.org=127.0.0.[10;11]*8' zimbraMtaPostscreenDnsblSites 'zen.spamhaus.org=127.0.0.[4..7]*6' zimbraMtaPostscreenDnsblSites 'zen.spamhaus.org=127.0.0.3*4' zimbraMtaPostscreenDnsblSites 'zen.spamhaus.org=127.0.0.2*3' zimbraMtaPostscreenDnsblSites 'list.dnswl.org=127.0.[0..255].0*-2' zimbraMtaPostscreenDnsblSites 'list.dnswl.org=127.0.[0..255].1*-3' zimbraMtaPostscreenDnsblSites 'list.dnswl.org=127.0.[0..255].2*-4' zimbraMtaPostscreenDnsblSites 'list.dnswl.org=127.0.[0..255].3*-5' zimbraMtaPostscreenDnsblSites 'bl.mailspike.net=127.0.0.2*5' zimbraMtaPostscreenDnsblSites 'bl.mailspike.net=127.0.0.[10;11;12]*4' zimbraMtaPostscreenDnsblSites 'wl.mailspike.net=127.0.0.[18;19;20]*-2' zimbraMtaPostscreenDnsblSites 'dnsbl.sorbs.net=127.0.0.10*8' zimbraMtaPostscreenDnsblSites 'dnsbl.sorbs.net=127.0.0.5*6' zimbraMtaPostscreenDnsblSites 'dnsbl.sorbs.net=127.0.0.7*3' zimbraMtaPostscreenDnsblSites 'dnsbl.sorbs.net=127.0.0.8*2' zimbraMtaPostscreenDnsblSites 'dnsbl.sorbs.net=127.0.0.6*2' zimbraMtaPostscreenDnsblSites 'dnsbl.sorbs.net=127.0.0.9*2'
zmprov mcf zimbraMtaPostscreenDnsblTTL 5m
zmprov mcf zimbraMtaPostscreenDnsblThreshold 8
zmprov mcf zimbraMtaPostscreenDnsblTimeout 10s
zmprov mcf zimbraMtaPostscreenDnsblWhitelistThreshold 0
zmprov mcf zimbraMtaPostscreenGreetAction enforce
zmprov mcf zimbraMtaPostscreenGreetTTL 1d
zmprov mcf zimbraMtaPostscreenNonSmtpCommandAction drop
zmprov mcf zimbraMtaPostscreenNonSmtpCommandEnable no
zmprov mcf zimbraMtaPostscreenNonSmtpCommandTTL 30d
zmprov mcf zimbraMtaPostscreenPipeliningAction enforce
zmprov mcf zimbraMtaPostscreenPipeliningEnable no
zmprov mcf zimbraMtaPostscreenPipeliningTTL 30d
zmprov mcf zimbraMtaPostscreenWatchdogTimeout 10s
zmprov mcf zimbraMtaPostscreenWhitelistInterfaces static:all

Value diatas merupakan default. Anda bisa mengatur value menggunakan perintah diatas sesuai security yang akan diterapkan.

Testing Postscreen

Sebelumnya DNSBLs sudah diaktifkan terlebih dahulu. Berikut merupakan contoh apabila mendapatkan error 550 dari postscreen

Mar  1 02:03:26 edge01 postfix/postscreen[23154]: DNSBL rank 28 for [112.90.37.251]:20438 
Mar  1 02:03:26 edge01 postfix/postscreen[23154]: CONNECT from [10.210.0.161]:58010 to [10.210.0.174]:25 
Mar  1 02:03:26 edge01 postfix/postscreen[23154]: WHITELISTED [10.210.0.161]:58010 
Mar  1 02:03:27 edge01 postfix/postscreen[23154]: NOQUEUE: reject: RCPT from [112.90.37.251]:20438: 550 5.7.1 Service unavailable; client [112.90.37.251] blocked using zen.spamhaus.org; from=<hfxdgdsggfvfg@gmail.com>, to=<support@zimbra.com>, proto=ESMTP, helo=<gmail.com>
Mar  1 02:03:27 edge01 postfix/postscreen[23154]: DISCONNECT [112.90.37.251]:20438 

Whitelist dan Blacklist IP Address Menggunakan Postscreen

Ketika perusahaan A tetap ingin mengirim email, namun perusahaan A tersebut IP Publik ter blacklist dnsbl dan mau di whitelist pada zimbra. atau ingin memblacklist ip publik yang tidak terdeteksi postscreen dan mau di blacklist bisa mengikuti langkah-langkah berikut.
1. Buat file postscreen_wblist pada direktori /opt/zimbra/conf/postfix/ bila belum ada folder postfix bisa dibuatkan dulu direktori tersebut.

su - zimbra
cd /opt/zimbra/conf/
mkdir postfix
cd postfix
nano postscreen_wblist

Masukkan pada postscreen_wblist ip yang mau di blacklist (reject) atau di whitelist (permit) menggunakan CIDR

# Rules are evaluated in the order as specified.
# Blacklist 60.70.80.* except  60.70.80.91.
60.70.80.91/32 permit
60.70.80.0/24 reject
70.70.70.0/24 reject

save file tersebut

2. Set postscreen sebagai berikut

su - zimbra
zmprov mcf zimbraMtaPostscreenAccessList "permit_mynetworks, cidr:/opt/zimbra/conf/postfix/postscreen_wblist"
zmprov mcf zimbraMtaPostscreenBlacklistAction enforce

Untuk mengecek default setting zimbraMtaPostscreenAccessList dan zimbraMtaPostscreenBlacklistAction bisa menggunakan perintah berikut

su - zimbra
zmprov gacf | grep zimbraMtaPostscreenAccessList 
zmprov gacf | grep zimbraMtaPostscreenBlacklistAction

Selesai

sumber: https://wiki.zimbra.com/wiki/Zimbra_Collaboration_Postscreen

Berikut layanan yang ada di saadwebid terkait zimbra
Layanan Jasa Maintenance Zimbra
Layanan Jasa Migrasi Zimbra Mail Server
VPS/Cloud Zimbra
SSL Zimbra Mail Server
SMTP Relay

Silahkan hubungi kami melalui contact atau WhatsApp

×

Hello!

Klik salah satu dibawah untuk chat WhatsApp atau kirim email kepada kami ke info@saad.web.id

× WhatsApp Kami