V tomto tutoriálu bych se s vámi rád podělil o svých 7 tipů pro blokování e-mailového spamu pomocí serveru Postfix SMTP na CentOS/RHEL. Za poslední čtyři roky, co jsem provozoval svůj vlastní e-mailový server, jsem dostal spoustu spamu, neboli nevyžádaných komerčních e-mailů. Spam existuje, protože je tak levné posílat velké množství e-mailů na internet. Postfix vám umožňuje blokovat spam dříve, než se dostane do vaší poštovní schránky, takže můžete ušetřit šířku pásma a místo na disku.
Poznámka :Pokud plánujete provozovat svůj vlastní poštovní server, doporučuji použít iRedmail, který opravdu zjednodušuje proces nastavení poštovního serveru. Dodává se také s pravidly proti spamu. Pokud dáváte přednost nastavení poštovního serveru od začátku, podívejte se na mou sérii výukových programů pro poštovní server.
Charakteristiky spamu
Níže je uvedeno, co jsem našel o e-mailovém spamu. Tyto spamy lze snadno zablokovat.
- Jejich adresy IP nemají záznamy PTR.
- Spammer neuvádí platný název hostitele v klauzuli HELO/EHLO.
- Zfalšují adresu MAIL FROM.
- Obecně neposílají e-maily po neúspěšném doručení e-mailu.
Legitimní e-mailové servery by nikdy neměly mít tyto vlastnosti. Takže tady je mých 7 tipů, které zablokují 90 % spamu.
Skutečnost:Přibližně 93 %~95 % e-mailů na světě je odmítnuto bránou SMTP a nikdy nedorazí do doručené pošty nebo složky se spamem.
Tip #1:Odmítněte e-mail, pokud klient SMTP nemá záznam PTR
Záznam PTR mapuje IP adresu na název domény. Je to protějšek k záznamu A. Na CentOS/RHEL se můžete dotázat na název domény přidružený k IP adrese provedením následujícího příkazu:
hostitel
Pokud host
příkaz nelze nalézt, pak musíte nainstalovat bind-utils
balíček.
sudo dnf install bind-utils
Například následující příkaz vrátí název hostitele mého poštovního serveru.
hostitel 23.254.225.226
Výstup:
226.225.254.23.in-addr.arpa ukazatel názvu domény mail.linuxbabe.com.
Kvůli převládajícímu spamu vyžaduje mnoho poštovních serverů (jako je Gmail, gmx.com, gmx.net, facebook.com), aby klienti SMTP měli platné záznamy PTR spojené s jejich IP adresami. Každý administrátor poštovního serveru by měl nastavit záznam PTR pro své SMTP servery. Pokud má klient SMTP záznam PTR, můžete najít řádek v protokolu Postfixu (/var/log/maillog)
jako níže.
připojit z mail.linuxbabe.com[23.254.225.226]
Pokud klient SMTP nemá záznam PTR, bude název hostitele identifikován jako unknown
v protokolu Postfixu.
připojit z neznámého[120.41.196.220]
Chcete-li odfiltrovat e-maily bez záznamů PTR, otevřete hlavní konfigurační soubor Postfixu.
sudo nano /etc/postfix/main.cf
Přidejte následující řádek do smtpd_sender_restrictions
. Tato směrnice odmítne e-mail, pokud IP adresa klienta nemá záznam PTR.
reject_unknown_reverse_client_hostname
Příklad:
smtpd_sender_restrictions =permit_mynetworks permit_sasl_authenticated cancel_unknown_reverse_client_hostname
Uložte a zavřete soubor. Poté restartujte Postfix, aby se změna projevila.
sudo systemctl restart postfix
Tip #2:Povolte omezení názvů hostitele HELO/EHLO v Postfixu
Někteří odesílatelé spamu neposkytují v dialogovém okně SMTP platný název hostitele HELO/EHLO. Může se jednat o neplnohodnotný název domény, název domény neexistuje nebo pouze pro interní síť. Například spammer, který k rozesílání spamu používá instanci Amazon EC2, je na mém serveru přihlášen následovně:
Aug 16 04:21:13 email postfix/smtpd[7070]:connect from ec2-54-237-201-103.compute-1.amazonaws.com[54.237.201.103]Aug 16 04:21:13 email policyd-spf[7074]:předřadit Received-SPF:None (mailfrom) identity=mailfrom; client-ip=54.237.201.103; helo=ip-172-30-0-149.ec2.interní; [chráněný e-mailem]; přijímač=Jak můžete vidět, název hostitele HELO je
ip-172-30-0-149.ec2.internal
, který je platný pouze v interní síti AWS. Nemá žádný platný záznam A ani MX.Chcete-li povolit omezení názvu hostitele HELO/EHLO, upravte hlavní konfigurační soubor Postfixu.
sudo nano /etc/postfix/main.cfNejprve přidejte následující řádek, který požaduje, aby klient poskytl název hostitele HELO/EHLO.
smtpd_helo_required =anoPoté přidejte následující 3 řádky, abyste povolili
smtpd_helo_restrictions
.smtpd_helo_restrictions =permit_mynetworks permit_sasl_authenticatedNásledující řádek použijte k odmítnutí klientů, kteří poskytují nesprávný název hostitele HELO/EHLO.
reject_invalid_helo_hostnamePomocí následujícího řádku odmítněte neplně kvalifikovaný název hostitele HELO/EHLO.
reject_non_fqdn_helo_hostnameChcete-li odmítnout e-mail, když název hostitele HELO/EHLO nemá záznam DNS A ani záznam MX, použijte
reject_unknown_helo_hostnameTakhle:
smtpd_helo_required =yessmtpd_helo_restrictions =permit_mynetworks permit_sasl_authenticated cancel_invalid_helo_hostname odmítnutí_non_fqdn_helo_hostname odmítnutí_neznámý_helo_hostnameUložte a zavřete soubor. Poté znovu načtěte Postfix.
sudo systemctl reload postfixVšimněte si, že ačkoli většina legitimních poštovních serverů má platný záznam A pro název hostitele HELO/EHLO, legitimní poštovní server občas tento požadavek nesplňuje. Musíte je přidat na seznam povolených pomocí
check_helo_access
.smtpd_helo_required =yessmtpd_helo_restrictions =permit_mynetworks permit_sasl_authenticated check_helo_access hash:/etc/postfix/helo_access odmítnout_invalidní_název_hostitele_helo odmítnutí_non_fqdn_helo_hostnamePoté musíte vytvořit
/etc/postfix/helo_access
soubor.sudo nano /etc/postfix/helo_accessNa seznam povolených jmen hostitele HELO/EHLO legitimního poštovního serveru, jak je uvedeno níže.
optimus-webapi-prod-2.localdomain OKva-massmail-02.rakutenmarketing.com OKJe pravděpodobné, že nevíte, které názvy hostitelů přidat na seznam povolených, pak jednoduše zkopírujte dva výše uvedené řádky, což jsou jediné řádky v mém
helo_access
soubor. Vždy můžete později přidat další názvy hostitelů. Uložte a zavřete soubor. Poté spusťte následující příkaz a vytvořte soubor /etc/postfix/helo_access.db.sudo postmap /etc/postfix/helo_accessA znovu načtěte Postfix.
sudo systemctl reload postfixTip #3:Odmítněte e-mail, pokud název hostitele klienta SMTP nemá platný záznam A
Legitimní e-mailový server by měl mít také platný záznam A pro svůj název hostitele. IP adresa vrácená ze záznamu A by se měla shodovat s IP adresou e-mailového serveru. Chcete-li odfiltrovat e-maily od hostitelů, kteří nemají platný záznam A, upravte hlavní konfigurační soubor Postfixu.
sudo nano /etc/postfix/main.cfPřidejte následující dva řádky do
smtpd_sender_restrictions
.reject_unknown_reverse_client_hostnamereject_unknown_client_hostnamePříklad:
smtpd_sender_restrictions =permit_mynetworks permit_sasl_authenticated cancel_unknown_reverse_client_hostname zamítnutí_neznámého_client_hostnameUložte a zavřete soubor. Poté restartujte Postfix, aby se změna projevila.
sudo systemctl restart postfixVšimněte si, žereject_unknown_client_hostname
nevyžaduje HELO od SMTP klienta. Načte název hostitele ze záznamu PTR a poté zkontroluje záznam A.Tip #4:Odmítněte e-mail, pokud POŠTA Z domény nemá záznam MX ani záznam
MAIL FROM
adresa je také známá jakoenvelope from
adresa. Někteří spameři používají vMAIL FROM
neexistující doménu adresa. Pokud název domény nemá žádný záznam MX, Postfix najde záznam A hlavní domény a odešle e-mail tomuto hostiteli. Pokud doména odesílatele nemá záznam MX ani záznam A, Postfix nemůže odeslat e-mail do této domény. Proč tedy neodmítnout e-maily, na které nemůžete odpovědět?Chcete-li odfiltrovat tento druh spamu, upravte hlavní konfigurační soubor Postfixu.
sudo nano /etc/postfix/main.cfPřidejte následující řádek do
smtpd_sender_restrictions
. Odmítne e-mail, pokud název domény adresy zadané s příkazem MAIL FROM nemá záznam MX ani záznam A.reject_unknown_sender_domainPříklad:
smtpd_sender_restrictions =permit_mynetworks permit_sasl_authenticated reject_unknown_sender_domain odmítnout_neznámý_název_klienta_hostitele odmítnout_neznámého_klientaUložte a zavřete soubor. Poté restartujte Postfix, aby se změna projevila.
sudo systemctl restart postfixVšimněte si, že jsem toto omezení umístil nad ostatní
reject
omezení. Z mé zkušenosti, pokud je pod jinýmreject
omezení, nebude to fungovat. (Možná se to děje pouze na mém e-mailovém serveru.)Tip #5:Povolte Greylisting v Postfixu
Jak vyžaduje protokol SMTP, každý legitimní klient SMTP musí být schopen znovu odeslat e-mail, pokud se doručení nezdaří. (Ve výchozím nastavení je Postfix nakonfigurován tak, aby znovu posílal neúspěšné e-maily po dobu 4 až 5 dnů, než informuje odesílatele, že zprávu nebylo možné doručit.) Mnoho šiřitelů spamu obvykle odešle pouze jednou a už to nezkouší.
Postgrey
je greylisting policy server pro Postfix. Uživatelé CentOS/RHEL jej mohou nainstalovat z úložiště EPEL.instalace sudo dnf epel-releasesudo dnf install postgreyJakmile je nainstalován, spusťte jej pomocí systemctl.
sudo systemctl start postgreyPovolit automatické spouštění při spouštění.
sudo systemctl povolit postgreyNa CentOS/RHEL Postgrey naslouchá na Unixovém soketu (
/var/spool/postfix/postgrey/socket
).Dále musíme upravit hlavní konfigurační soubor Postfixu, aby používal server zásad greylisting.
sudo nano /etc/postfix/main.cfPřidejte následující řádek do
smtpd_recipient_restrictions
.check_policy_service unix:postgrey/socket
V případě, že nevíte, direktiva
check_policy_service unix:private/policyd-spf
na výše uvedeném snímku obrazovky Postfix zkontroluje záznam SPF v doméně odesílatele. Tato direktiva vyžaduje, abyste si nainstalovali a nakonfigurovali balíček pypolicyd-spf.Uložte a zavřete soubor. Poté restartujte Postfix.
sudo systemctl restart postfixOd této chvíle bude Postgrey odmítat e-mail, pokud se odesílatel ztrojnásobí (IP adresa odesílatele, e-mailová adresa odesílatele, e-mailová adresa příjemce) je nová. Následující zpráva protokolu v
/var/log/maillog
ukazuje nový odesílatel triplet. Akce „greylist
” znamená, že tato e-mailová zpráva byla odmítnuta.postgrey[1016]:action=greylist, reason=new, client_name=unknown, client_address=117.90.24.148/32, [e-mail protected], [email protected]Podle mých zkušeností čínští e-mailoví spameři rádi používají falešnou, podivně vypadající a náhodně vygenerovanou adresu odesílatele pro každý e-mail, takže přidání těchto falešných e-mailových adres na černou listinu je nezastaví. Na druhou stranu se nikdy nepokusí znovu odeslat odmítnutý e-mail se stejnou adresou odesílatele, což znamená, že greylisting může být velmi účinný při zastavení tohoto druhu spamu.
Jak minimalizovat špatný uživatelský dojem
Greylisting může mít za následek špatnou zkušenost pro koncového uživatele, protože uživatel musí čekat dalších několik minut, než e-mail dorazí. Chcete-li tento špatný zážitek minimalizovat, můžete vytvořit bílou listinu a použít druhý záznam MX, který ukazuje na stejného hostitele.
Bílá listina
Postgrey se dodává se dvěma soubory bílé listiny (
/etc/postfix/postgrey_whitelist_clients
a/etc/postfix/postgrey_whitelist_recipients
). První obsahuje seznam názvů hostitelů a druhý obsahuje seznam adres příjemců.Ve výchozím nastavení jsou poštovní servery Google na seznamu povolených. Bez ohledu na to, zda odesílatel používá adresu @gmail.com nebo jinou adresu, pokud odesílatel používá poštovní server Google, Postgrey e-mail neodmítne. Následující řádek v mém
/var/log/maillog
soubor to ukazuje.postgrey[1032]:action=pass, reason=client whitelist, client_name=mail-yb0-f190.google.comPoznámka :Záznamy postgrey můžete také zobrazit pomocí tohoto příkazu
sudo journalctl -u postgrey
.Další názvy hostitelů můžete přidat v
/etc/postfix/postgrey_whitelist_clients
soubor, jakofacebook.combounce.twitter.comblogger.comemail.medium.comTyto názvy hostitelů můžete získat pomocí nástroje nazvaného
pflogsumm
, kterému se budu věnovat později v tomto článku. Uložte a zavřete soubor a restartujte Postgrey.sudo systemctl restart postgreyVytvořte další název hostitele MX se stejnou IP adresou
Pro název své domény můžete zadat více než jeden záznam MX, jak je uvedeno níže.
Typ záznamu Název Mail Server PriorityMX @ mail.yourdomain.com 0MX @ mail2.yourdomain.com 5Odesílatel se pokusí o první poštovní server (s prioritou 0). Pokud mail.yourdomain.com odmítne e-mail pomocí greylistingu, odesílatel by okamžitě zkusil druhý poštovní server (s prioritou 5).
Pokud mají dva názvy hostitelů poštovního serveru stejnou IP adresu, pak když odesílatel zkusí název hostitele druhého poštovního serveru, e-mail bude okamžitě přijat (pokud projdou všechny ostatní kontroly) a koncoví uživatelé si nevšimnou zpoždění e-mailu způsobeného greylistingem.
Upozorňujeme, že to vyžaduje, abyste v
/etc/sysconfig/postgrey
nastavili velmi malé zpoždění, například 1 sekundu soubor jako níže. Doba zpoždění sděluje klientovi SMTP, kolik sekund má čekat, než jej znovu odešle. Pokud doba zpoždění není dostatečně krátká, bude druhé doručení e-mailu stále odmítnuto.POSTGREY_DELAY="--delay=1"Uložte a zavřete soubor. Poté restartujte Postgrey.
sudo systemctl restart postgreyPozor, ne všechny poštovní servery by okamžitě zkusily druhého hostitele MX.
Tip #6:Používání veřejných seznamů zakázaných položek v reálném čase
Existují spamové e-maily, které jsou odesílány ze serverů, které mají platný název hostitele, platný záznam PTR a mohou projít greylistingem. V tomto případě můžete použít blacklist k odmítnutí spamu. Existuje mnoho veřejných blacklistů v reálném čase (RBL), známých také jako DNSBL (seznamy založené na DNS). V reálném čase to znamená, že seznam se neustále mění. IP adresa nebo název domény může být na seznamu dnes a zítra mimo seznam, takže můžete získat různé výsledky v závislosti na tom, kdy na seznam zadáte dotaz.
K blokování spamu můžete použít několik blacklistů. Přejděte na https://www.debouncer.com a mxtoolbox.com , zadejte doménu a IP adresu spammeru, abyste viděli, které černé listiny je blokují, a pak můžete tyto černé listiny použít. Zjistil jsem například, že spameři jsou uvedeni na černé listině na jedné z následujících černých listin:
- dbl.spamhaus.org
- zen.spamhaus.org
- multi.uribl.com
- ivmURI
- InvaluementURI
Takže mohu přidat následující konfigurace v
/etc/postfix/main.cf
soubor. Některé veřejné černé listiny vyžadují měsíční poplatek. Prozatím používám bezplatnou službu spamhaus.org.smtpd_recipient_restrictions =permit_mynetworks permit_sasl_authenticated check_policy_service unix:private/policyd-spf check_policy_service unix:postgrey/socketzamítnout_rhsbl_helo dbl.spamhaus.org zamítnout_rhsbl_reverse_client dbl.spamhaus.org zamítnout_rhsbl_sender dbl.spamhaus.org cancel_rbl_client zen.spamhaus.orgKde:
rhs
znamená pravou stranu, tj. název domény.reject_rhsbl_helo
způsobí, že Postfix odmítne e-maily, když je název hostitele klienta HELO nebo EHLO na černé listině.reject_rhsbl_reverse_client
:odmítnout e-mail, když je na černé listině neověřený název hostitele reverzního klienta. Postfix načte název hostitele klienta ze záznamu PTR. Pokud je název hostitele na černé listině, odmítněte e-mail.reject_rhsbl_sender
způsobí, že Postfix odmítne e-maily, když je doména MAIL FROM na černé listině.reject_rbl_client
:Toto je černá listina založená na IP. Když je IP adresa klienta na černé listině, odmítněte e-mail.Někteří šiřitelé spamu používají poštovní server Google, takže
reject_rhsbl_helo
je neúčinné, ale většina z nich používá své vlastní názvy domén v hlavičce MAIL FROM, takžereject_rhsbl_sender
bude účinné.Vytvořit seznam povolených
Někdy jsou na černé listině legitimní e-mailové servery. Můžete vytvořit seznam povolených, aby nebyli blokováni. Vytvořte následující soubor.
sudo nano /etc/postfix/rbl_overrideV tomto souboru přidejte na seznam povolených doménových jmen, jak je uvedeno níže.
dripemail2.com OK //Tato doména patří drip.commlsend.com OK //Tato doména patří službě mailerlite email marketingUložte a zavřete soubor. Poté spusťte následující příkaz k vytvoření
rbl_override.db
soubor.sudo postmap /etc/postfix/rbl_overrideUpravte hlavní konfigurační soubor Postfixu.
sudo nano /etc/postfix/main.cfV
smtpd_recipient_restrictions
, přidejte následující řádek.check_client_access hash:/etc/postfix/rbl_overrideJako níže. Měl by být umístěn nad ostatními kontrolami RBL.
smtpd_recipient_restrictions =permit_mynetworks permit_sasl_authenticated check_policy_service unix:private/policyd-spf check_policy_service unix:postgrey/socket check_client_access hash:/etc/postfix/rbl_override odmítnutí_rhsbl_helo dbl.spamhaus.org odmítnutí_rhsbl_reverse_client dbl.spamhaus.org odmítnutí_rhsbl_sender dbl.spamhaus.org odmítnutí_rbl_client zen.spamhaus.orgZnovu načtěte Postfix, aby se změny projevily.
sudo systemctl reload postfixPoužívání veřejného seznamu povolených ke snížení falešně pozitivních výsledků
Udržování soukromého whitelistu je někdy nutné, ale můžete také použít veřejné whitelisty, z nichž nejznámější je dnswl.org. V současné době existuje pouze seznam povolených adres IP. Seznam povolených doménových jmen je ve verzi beta. Chcete-li jej použít, vložte následující řádek do
smtpd_recipient_restrictions
.permit_dnswl_client list.dnswl.org=127.0.[0..255].[1..3]Jako níže. Měl by být umístěn nad
reject_rbl_client
zkontrolovat.smtpd_recipient_restrictions =permit_mynetworks permit_sasl_authenticated check_policy_service unix:private/policyd-spf check_policy_service unix:postgrey/socket check_client_access hash:/etc.postfix/rbl_override odmítnutí_rhsblsblspam_orgcliff_rhsblsblspam_orgcliff_rhsblsblspam_orgcli_rhsblsblspam_orgcli_rhsblsblspampa> permit_dnswl_client list.dnswl.org=127.0.[0..255].[1..3] odmítnout_rbl_client zen.spamhaus.orgDalším známým whitelistem je swl.spamhaus.org , takže jej můžete také přidat do své konfigurace.
permit_dnswl_client swl.spamhaus.orgNení možné, aby byla IP adresa uvedena na seznamu povolených a zakázaných položek ve Spamhausu současně, takže pokud v Postfixu používáte pouze černou listinu Spamhaus, není nutné porovnávat se s whitelistem Spamhaus.
Moje spamové filtry Postfix
Zde je snímek obrazovky mých spamových filtrů Postfix.
Hlášení protokolu Postfix
Pflogsumm
je skvělý nástroj pro vytváření souhrnu protokolů Postfixu. Na CentOS/RHEL je pflogsumm poskytován pomocípostfix-perl-scripts
balíček.instalační skripty postfix-perl-scripts sudo dnfPomocí následujícího příkazu vygenerujte zprávu pro dnešek.
sudo pflogsumm -d dnes /var/log/maillogVygenerujte přehled za včerejšek.
sudo pflogsumm -d včera /var/log/maillogPokud chcete vygenerovat přehled pro tento týden.
sudo pflogsumm /var/log/maillogChcete-li před "normálními" statistikami vydávat zprávy o problémech (odskoky, odložení, varování, odmítnutí), použijte
--problems-first
vlajka.sudo pflogsumm -d dnes /var/log/maillog --problems-firstChcete-li připojit e-mail z adresy ke každému záznamu v hlášení o odmítnutí, použijte
--rej-add-from
vlajka.sudo pflogsumm -d dnes /var/log/maillog --rej-add-fromChcete-li v souhrnech odmítnutí zobrazit úplný důvod, použijte
--verbose-msg-detail
vlajka.sudo pflogsumm -d dnes /var/log/maillog --rej-add-from --verbose-msg-detailMůžete přidat úlohu cron, aby se pflogsumm každý den odeslal přehled na vaši e-mailovou adresu.
sudo crontab -ePřidejte následující řádek, který vygeneruje zprávu každý den ve 4:00.
0 4 * * * /usr/sbin/pflogsumm -d včera /var/log/maillog --problems-first --rej-add-from --verbose-msg-detail -qChcete-li zprávu obdržet e-mailem, přidejte následující řádek nad všechny úlohy cron.
MAILTO="vaše-e-mailová-adresa"Měli byste věnovat pozornost
message reject detail
sekce, kde můžete vidět, z jakého důvodu jsou tyto e-maily odmítnuty a zda existují nějaké falešně pozitivní výsledky. Odmítnutí Greylistingu je bezpečné ignorovat.
Pokud již byla proměnná MAILTO nastavena, ale chcete, aby byl souhrn protokolu Postfixu zaslán na jinou e-mailovou adresu, můžete do své úlohy Cron vložit následující řádek.
0 4 * * * /usr/sbin/pflogsumm -d včera /var/log/maillog --problems-first --rej-add-from --verbose-msg-detail -q | mutt -s "Shrnutí protokolu Postfix" vaše e-mailová adresaVýstup
pflogsumm
příkaz je přesměrován namutt
, poštovní uživatelský agent příkazového řádku, který použije výstup jako tělo e-mailu a odešle jej na e-mailovou adresu, kterou zadáte na konci. Samozřejmě musíte nainstalovat mutt na váš server CentOS/RHEL.instalace sudo dnf muttTip #7:Nastavte OpenDMARC tak, aby odmítal e-maily, které neprošly kontrolou DMARC
DMARC (Domain-based Message Authentication, Reporting, and Conformance) je internetový standard, který umožňuje vlastníkům domén zabránit tomu, aby jejich názvy domén byly používány e-mailovými spoofery. Přečtěte si prosím jednu z následujících příruček pro nastavení OpenDMARC.
- Nastavte OpenDMARC s Postfixem na CentOS/RHEL pro blokování e-mailového spoofingu
Spuštění Local DNS Resolver pro urychlení vyhledávání DNS
Jak můžete vidět, Postfix bude muset vyhledat záznamy DNS, aby mohl analyzovat každý dialog SMTP. Chcete-li urychlit vyhledávání DNS, můžete spustit místní překladač DNS. A většina blacklistů DNS má limit dotazů. Spuštění vlastního místního překladače DNS pro ukládání záznamů DNS do mezipaměti vám může pomoci zůstat pod limitem dotazů.
Můžeme nainstalovat server bind9 DNS.
instalační vazba sudo dnfSpusťte BIND 9 pomocí:
sudo systemctl start s názvemA povolte automatické spouštění při spouštění:
povolení sudo systemctl pojmenovanéJeho stav můžete zkontrolovat pomocí:
stav systemctl pojmenovanýUkázkový výstup:
● named.service – Berkeley Internet Name Domain (DNS) Načteno:načteno (/usr/lib/systemd/system/named.service; povoleno; přednastaveno dodavatelem:zakázáno> Aktivní:aktivní (běžící) od neděle 2020-05 -17 11:07:34 EDT; před 9s Proces:7203 ExecStop=/bin/sh -c /usr/sbin/rndc stop> /dev/null 2>&1 || /bin/kill -TE> Proces:7218 ExecStart =/usr/sbin/named -u named -c ${NAMEDCONF} $OPTIONS (code=exited,> Process:7215 ExecStartPre=/bin/bash -c if [ ! "$DISABLE_ZONE_CHECKING" =="yes" ];> Hlavní PID:7220 (pojmenovaný) Úkoly:4 (limit:5045) Paměť:55,5M CGroup:/system.slice/named.service └─7220 /usr/sbin/named -u named -c /etc/named.conf -4Tip:Pokud se výše uvedený příkaz okamžitě neukončí, stiskněte Q.
Nastavení výchozího překladače DNS na poštovním serveru CentOS /RHEL
Musíme nastavit 127.0.0.1 jako výchozí DNS resolver. Aktuální překladač DNS na CentOS/RHEL můžete zkontrolovat pomocí následujícího příkazu.
cat /etc/resolv.confUkázkový výstup:
# Generováno NetworkManagernameserver 192.168.0.1nameserver 8.8.8.8Chcete-li nastavit BIND jako výchozí překladač, musíte nejprve najít název hlavního síťového rozhraní pomocí následujícího příkazu.
adresa IPMůj je
ens3
. Dále spusťte následující příkaz pro úpravu konfiguračního souboru síťového rozhraní. Nahraďteens3
s vaším vlastním názvem rozhraní.sudo nano /etc/sysconfig/network-scripts/ifcfg-ens3Najděte
DNS1
parametr a změňte jeho hodnotu na127.0.0.1
. Všimněte si, že pokud jsou hodnoty pro ostatní parametry v tomto souboru zabaleny do dvojitých uvozovek, musíte také zabalit127.0.0.1
s dvojitými uvozovkami.DNS1="127.0.0.1"Pokud nemůžete najít
DNS1
parametr, pak přidejte výše uvedený řádek na konec tohoto souboru. Doporučuje se zadat sekundární překladač DNS přidáním následujícího řádku do tohoto souboru, aby se snížila pravděpodobnost selhání DNS.DNS2="8.8.8.8"Uložte a zavřete soubor. Poté restartujte NetworkManager, aby se změna projevila.
sudo systemctl restartujte NetworkManagerNyní můžete zkontrolovat obsah
/etc/resolv.conf
znovu. Jak můžete vidět, 127.0.0.1 (BIND) je nyní výchozím DNS resolverem na CentOS/RHEL.
Jak deaktivovat IPv6 v BIND
Pokud váš poštovní server nemá veřejnou adresu IPv6, pak je dobré vypnout IPv6 v BIND, jinak bude v protokolu BIND spousta chyb o IPv6, jak je uvedeno níže.
řešení nedosažitelnosti sítě 'mirrors.fedoraproject.org/A/IN':2001:4178:2:1269:dead:beef:cafe:fed5#53nedostupné řešení sítě 'mirrors.fedoraproject.org/AAAA/IN':2001 :4178:2:1269:dead:beef:cafe:fed5#53síť nedostupná řešení 'mirrors.fedoraproject.org/A/IN':2610:28:3090:3001:dead:beef:cafe:fed5#53síť nedostupná řešení mirrors.fedoraproject.org/AAAA/IN':2610:28:3090:3001:dead:beef:cafe:fed5#53Chcete-li zakázat IPv6 v BIND na CentOS/RHEL, jednoduše otevřete /etc/sysconfig/named soubor
sudo nano /etc/sysconfig/namedA přidejte následující řádek na konec souboru.
OPTIONS="-4"Uložte a zavřete soubor. Poté restartujte s názvem a máte hotovo.
sudo systemctl restart pojmenovánNyní spusťte následující příkaz. Můžete vidět, že BIND již nenaslouchá na IPv6 adrese.
sudo netstat -lnptu | grep s názvemChyba zpětného vyhledávání DNS v Postfixu
Pokud váš Postfix SMTP server běží v prostředí chroot, pak nemusí být schopen provádět zpětné vyhledávání DNS. V tomto případě bude IP adresa se záznamem PTR stále identifikována jako
unknown
.postfix/smtpd[14734]:připojit z neznámého[23.254.225.226]Abychom to napravili, musíme zkopírovat knihovny potřebné pro zpětné vyhledávání DNS v prostředí chroot.
sudo mkdir /var/spool/postfix/lib64sudo cp -vl /usr/lib64/libnss_* /var/spool/postfix/lib64Poté restartujte Postfix.
sudo systemctl restart postfixDalší krok
Doufám, že těchto 7 antispamových opatření Postfixu vám pomohlo zablokovat e-mailový spam. Můžete také chtít nasadit filtr obsahu, jako je SpamAssassin, abyste lépe detekovali spam.
- Nastavit SpamAssassin na CentOS/RHEL pro blokování e-mailového spamu
Jako vždy, pokud vám tento příspěvek přišel užitečný, přihlaste se k odběru našeho bezplatného zpravodaje, kde získáte další tipy a triky. Opatruj se 🙂
Nainstalujte Roundcube Webmail na CentOS 8/RHEL 8 s Apache/Nginx Nainstalujte a nakonfigurujte OpenDKIM na poštovním serveru CentOS 8/RHEL 8Cent OS