[Postfix] Integracja serwera pocztowego z czarnymi listami

Niechciana poczta stanowi zawsze spory kłopot zwłaszcza gdy nadchodzi w masowej ilości. Do filtrowania wykorzystywałem standardowo SpamAssassin'a jednak w ostatnim czasie jego skuteczność okazała się mizerna a na skrzynki mailowe docierać zaczęły coraz liczniejsze reklamy rzeczy "niezbędnych" ;) Przed SPAM'em trzeba się bronić zwłaszcza gdy wysyłany jest z maszyn ZOMBIE. Najskuteczniejsze w tym wypadku jest blokowanie niewiarygodnych serwerów i tak też działają czarne listy. 

Wykorzystałem konfigurację opisaną przez Falko Timme'go na łamach HowtoForge rozszerzając delikatnie listę katalogów spamerskich adresów o wykaz ze strony dnsbl.info.

 

Timme opisuje konfigurację dla dwóch wersji Postfixa dlatego na początku warto sprawdzić jaką wersję posiadamy:

 
postconf -d | grep mail_version
 

 

 

Postfix 2.x

Otwieramy plik /etc/postfix/main.cf z ustawieniami postfixa i doklejamy na końcu następujące linijki. Warto sprawdzić czy poniższe linijki przypadkiem już nie istnieją w w/w pliku. Jeżeli tak jest należy je nadpisać. Domyślnie jednak standardowa konfiguracja postfix'a nie zawiera żadnego z poniższego wpisu.

 

 
[...]
smtpd_helo_required = yes
disable_vrfy_command = yes
strict_rfc821_envelopes = yes
invalid_hostname_reject_code = 554
multi_recipient_bounce_reject_code = 554
non_fqdn_reject_code = 554
relay_domains_reject_code = 554
unknown_address_reject_code = 554
unknown_client_reject_code = 554
unknown_hostname_reject_code = 554
unknown_local_recipient_reject_code = 554
unknown_relay_recipient_reject_code = 554
unknown_sender_reject_code = 554
unknown_virtual_alias_reject_code = 554
unknown_virtual_mailbox_reject_code = 554
unverified_recipient_reject_code = 554
unverified_sender_reject_code = 554

smtpd_recipient_restrictions =
            reject_invalid_hostname,
            reject_unknown_recipient_domain,
            reject_unauth_pipelining,
            permit_mynetworks,
            permit_sasl_authenticated,
            reject_unauth_destination,
            reject_rbl_client all.s5h.net,
            reject_rbl_client bl.spamcannibal.org,
            reject_rbl_client blacklist.woody.ch,
            reject_rbl_client cdl.anti-spam.org.cn,
            reject_rbl_client dnsbl-1.uceprotect.net,
            reject_rbl_client dnsbl.anticaptcha.net,
            reject_rbl_client dnsbl.inps.de,
            reject_rbl_client drone.abuse.ch,
            reject_rbl_client dyna.spamrats.com,
            reject_rbl_client http.dnsbl.sorbs.net,
            reject_rbl_client korea.services.net,
            reject_rbl_client orvedb.aupads.org,
            reject_rbl_client psbl.surriel.com,
            reject_rbl_client relays.nether.net,
            reject_rbl_client short.rbl.jp,
            reject_rbl_client socks.dnsbl.sorbs.net,
            reject_rbl_client spam.spamrats.com,
            reject_rbl_client spamsources.fabel.dk,
            reject_rbl_client virbl.bit.nl,
            reject_rbl_client wormrbl.imp.ch,
            reject_rbl_client zombie.dnsbl.sorbs.net,
            reject_rbl_client b.barracudacentral.org,
            reject_rbl_client bl.spamcop.net,
            reject_rbl_client bogons.cymru.com,
            reject_rbl_client combined.abuse.ch,
            reject_rbl_client dnsbl-2.uceprotect.net,
            reject_rbl_client dnsbl.cyberlogic.net,
            reject_rbl_client dnsbl.sorbs.net,
            reject_rbl_client duinv.aupads.org,
            reject_rbl_client dynip.rothen.com,
            reject_rbl_client ips.backscatterer.org,
            reject_rbl_client misc.dnsbl.sorbs.net,
            reject_rbl_client pbl.spamhaus.org,
            reject_rbl_client rbl.megarbl.net,
            reject_rbl_client sbl.spamhaus.org,
            reject_rbl_client singular.ttk.pte.hu,
            reject_rbl_client spam.abuse.ch,
            reject_rbl_client spambot.bls.digibase.ca,
            reject_rbl_client ubl.lashback.com,
            reject_rbl_client virus.rbl.jp,
            reject_rbl_client xbl.spamhaus.org,
            reject_rbl_client bl.emailbasura.org, // ta lista jest wyjątkowo restrykcyjna i blokuje nawet gmail'a - nie zalecam
            reject_rbl_client blackholes.five-ten-sg.com,
            reject_rbl_client cbl.abuseat.org,
            reject_rbl_client db.wpbl.info,
            reject_rbl_client dnsbl-3.uceprotect.net,
            reject_rbl_client dnsbl.dronebl.org,
            reject_rbl_client drone.abuse.ch,
            reject_rbl_client dul.dnsbl.sorbs.net,
            reject_rbl_client exitnodes.tor.dnsbl.sectoor.de,
            reject_rbl_client ix.dnsbl.manitu.net,
            reject_rbl_client noptr.spamrats.com,
            reject_rbl_client proxy.bl.gweep.ca,
            reject_rbl_client relays.bl.gweep.ca,
            reject_rbl_client service.mailblacklist.com,
            reject_rbl_client smtp.dnsbl.sorbs.net,
            reject_rbl_client spam.dnsbl.sorbs.net,
            reject_rbl_client spamrbl.imp.ch,
            reject_rbl_client ubl.unsubscore.com,
            reject_rbl_client web.dnsbl.sorbs.net,
            reject_rbl_client zen.spamhaus.org, 
            permit
 

 

Na zakończenie restartujemy Postfix'a

 
/etc/init.d/postfix restart
 

 

Jest wysoce prawdopodobne, iż w tej chwili na ekranie wyświetlone zostaną liczne powiadomienia i ostrzeżenia.

 

Postfix 1.x

Tak samo jak dla wersji 2.x otwieramy plik /etc/postfix/main.cf, a następnie doklejamy na końcu poniższe linijki. Wcześniej jednak sprawdzamy, czy wspomniane linie istnieją już w pliku main.cf. Jeżeli tak jest nadpisujemy je właściwą konfiguracją. 

 

 
[...]
smtpd_helo_required = yes
disable_vrfy_command = yes
strict_rfc821_envelopes = yes
invalid_hostname_reject_code = 554
multi_recipient_bounce_reject_code = 554
non_fqdn_reject_code = 554
relay_domains_reject_code = 554
unknown_address_reject_code = 554
unknown_client_reject_code = 554
unknown_hostname_reject_code = 554
unknown_local_recipient_reject_code = 554
unknown_relay_recipient_reject_code = 554
unknown_sender_reject_code = 554
unknown_virtual_alias_reject_code = 554
unknown_virtual_mailbox_reject_code = 554
unverified_recipient_reject_code = 554
unverified_sender_reject_code = 554

maps_rbl_domains =
            all.s5h.net,
            bl.spamcannibal.org,
            blacklist.woody.ch,
            cdl.anti-spam.org.cn,
            dnsbl-1.uceprotect.net,
            dnsbl.anticaptcha.net,
            dnsbl.inps.de,
            drone.abuse.ch,
            dyna.spamrats.com,
            http.dnsbl.sorbs.net,
            korea.services.net,
            orvedb.aupads.org,
            psbl.surriel.com,
            relays.nether.net,
            short.rbl.jp,
            socks.dnsbl.sorbs.net,
            spam.spamrats.com,
            spamsources.fabel.dk,
            virbl.bit.nl,
            wormrbl.imp.ch,
            zombie.dnsbl.sorbs.net,
            b.barracudacentral.org,
            bl.spamcop.net,
            bogons.cymru.com,
            combined.abuse.ch,
            dnsbl-2.uceprotect.net,
            dnsbl.cyberlogic.net,
            dnsbl.sorbs.net,
            duinv.aupads.org,
            dynip.rothen.com,
            ips.backscatterer.org,
            misc.dnsbl.sorbs.net,
            pbl.spamhaus.org,
            rbl.megarbl.net,
            sbl.spamhaus.org,
            singular.ttk.pte.hu,
            spam.abuse.ch,
            spambot.bls.digibase.ca,
            ubl.lashback.com,virus.rbl.jp,
            xbl.spamhaus.org,
            bl.emailbasura.org,
            blackholes.five-ten-sg.com,
            cbl.abuseat.org,
            db.wpbl.info,dnsbl-3.uceprotect.net,
            dnsbl.dronebl.org,
            drone.abuse.ch,
            dul.dnsbl.sorbs.net,
            exitnodes.tor.dnsbl.sectoor.de,
            ix.dnsbl.manitu.net,
            noptr.spamrats.com,
            proxy.bl.gweep.ca,
            relays.bl.gweep.ca,
            service.mailblacklist.com,
            smtp.dnsbl.sorbs.net,
            spam.dnsbl.sorbs.net,
            spamrbl.imp.ch,
            ubl.unsubscore.com,
            web.dnsbl.sorbs.net,
            zen.spamhaus.org

smtpd_recipient_restrictions =
            permit_sasl_authenticated,
            permit_mynetworks,
            reject_invalid_hostname,
            reject_non_fqdn_hostname,
            reject_non_fqdn_sender,
            reject_unknown_sender_domain,
            reject_unknown_recipient_domain,
            reject_maps_rbl,
            check_relay_domains
 

 

Na zakończenie restartujemy Postfix'a

 
/etc/init.d/postfix restart
 

 

Źródła:

HowtoForge - How To Block Spam Before It Enters The Server (Postfix)

DNSBL.info - SPAM Database Lookup

Dodaj komentarz

Kod antyspamowy
Odśwież



Twój koszyk jest pusty

Odsłony:
213355
Wszelkie prawa zastrzeżone. Copyright © 2009 - 2017 Maciej Kaleta