Úvod
Postfix je agent pro přenos pošty (MTA), aplikace používaná k odesílání a přijímání e-mailů. V tomto tutoriálu nainstalujeme a nakonfigurujeme Postfix tak, aby mohl být použit k odesílání e — mailů pouze místními aplikacemi-tj.
proč byste to chtěli udělat?
pokud již pro odesílání a přijímání e-mailů používáte poskytovatele e-mailů třetí strany, nemusíte spouštět svůj vlastní poštovní server. Pokud však spravujete cloudový server, na kterém jste nainstalovali aplikace, které potřebují odesílat e-mailová oznámení, spuštění místního SMTP serveru pouze pro odesílání je dobrou alternativou k použití poskytovatele e-mailových služeb 3rd nebo ke spuštění plnohodnotného SMTP serveru.
v tomto tutoriálu se dozvíte, jak nainstalovat a nakonfigurovat Postfix jako SMTP server pouze pro odesílání.
předpoklady
Chcete-li sledovat tento tutoriál, budete potřebovat:
-
jeden Ubuntu 16.04 kapička nastavit s Ubuntu 16.04 počáteční průvodce nastavením, včetně vytvoření sudo non-root uživatele
-
platný název domény, například
example.com
, ukazující na váš server. Můžete to nastavit podle tohoto tutoriálu názvu hostitele
název hostitele vašeho serveru by měl odpovídat této doméně nebo subdoméně. Název hostitele serveru můžete ověřit zadáním hostname
na příkazovém řádku. Výstup by měl odpovídat názvu, který jste dali kapičce, když byla vytvořena.
Krok 1-Instalace Postfixu
v tomto kroku se dozvíte, jak nainstalovat Postfix. Nejúčinnějším způsobem instalace Postfixu a dalších programů potřebných pro testování e-mailu je instalace balíčku mailutils
.
nejprve aktualizujte databázi balíčků:
- sudo apt-get update
nakonec nainstalujte Postfix. Instalace mailtuils
nainstaluje Postfix, stejně jako několik dalších programů potřebných pro Postfix fungovat.
- sudo apt install mailutils
na konci procesu instalace se zobrazí okno, které vypadá přesně jako okno na obrázku níže. Výchozí možností je internetová stránka. To je doporučená volba pro tento tutoriál, takže stiskněte TAB
, pak ENTER
.
poté získáte další okno, stejně jako okno na dalším obrázku. Název systémové pošty by měl být stejný jako název, který jste serveru při vytváření přiřadili. Pokud zobrazuje subdoménu jako subdomain.example.com
, změňte ji pouze na example.com
. Po dokončení stiskněte TAB
a poté ENTER
.
po úspěšném dokončení instalace pokračujte krokem dva.
Krok 2-Konfigurace Postfixu
v tomto kroku si přečtete, jak nakonfigurovat Postfix pro zpracování požadavků na odesílání e-mailů pouze ze serveru, na kterém je spuštěn, tj.
aby k tomu došlo, Postfix musí být nakonfigurován tak, aby poslouchal pouze na rozhraní loopback, rozhraní virtuální sítě, které server používá k interní komunikaci. Chcete-li provést změnu, otevřete hlavní konfigurační soubor Postfix pomocí nano
nebo oblíbeného textového editoru.
- sudo nano /etc/postfix/main.cf
při otevřeném souboru přejděte dolů, dokud se nezobrazí následující část.
. . .mailbox_size_limit = 0recipient_delimiter = +inet_interfaces = all. . .
změňte řádek, který čte inet_interfaces = all
na inet_interfaces = loopback-only
.
. . .mailbox_size_limit = 0recipient_delimiter = +inet_interfaces = loopback-only. . .
další směrnice, kterou budete muset upravit, je mydestination
, která se používá k určení seznamu domén, které jsou doručovány prostřednictvím local_transport
mail delivery transport. Ve výchozím nastavení jsou hodnoty podobné těmto:
/etc/postfix/main.cf. . .mydestination = $myhostname, example.com, localhost.com, , localhost. . .
doporučené výchozí hodnoty pro tento scénář jsou uvedeny v bloku kódu níže, takže upravte svůj tak, aby odpovídal:
/etc/postfix/main.cf. . .mydestination = $myhostname, localhost.$mydomain, $mydomain. . .
Uložte a zavřete soubor.
pokud hostujete více domén na jednom serveru, ostatní domény mohou být také předány Postfixu pomocí směrnice mydestination
. Konfigurace Postfixu způsobem, který se měří a který nepředstavuje problémy pro takové nastavení, však zahrnuje další konfigurace, které jsou nad rámec tohoto článku.
nakonec restartujte Postfix.
- sudo systemctl restart postfix
Krok 3-testování SMTP serveru
v tomto kroku otestujete, zda Postfix může odesílat e-maily na externí e-mailový účet pomocí příkazu mail
, který je součástí balíčku mailutils
, který byl nainstalován v kroku 1.
Chcete-li odeslat zkušební e-mail, zadejte:
- echo "This is the body of the email" | mail -s "This is the subject line" your_email_address
při provádění vlastních testů můžete použít text těla a předmětu tak, jak je, nebo je změnit podle svých představ. Místo your_email_address
však použijte platnou e-mailovou adresu. Část domény může být gmail.com
, fastmail.com
, yahoo.com
, nebo jakýkoli jiný poskytovatel e-mailových služeb, který používáte.
Nyní zkontrolujte e – mailovou adresu, na kterou jste odeslali testovací zprávu. Měli byste vidět zprávu ve vaší doručené poště. Pokud ne, zkontrolujte složku se spamem.
Všimněte si, že při této konfiguraci bude adresa v poli Od pro odeslané testovací e-maily [email protected]
, kde sammy je vaše uživatelské jméno pro Linux a část domény je název hostitele serveru. Pokud změníte své uživatelské jméno, změní se také Adresa From.
Krok 4-přeposílání systémové pošty
poslední věc, kterou chceme nastavit, je přeposílání, takže dostanete e-maily odeslané do root v systému na Vaši osobní externí e-mailovou adresu.
Chcete-li nakonfigurovat Postfix tak, aby na vaši e-mailovou adresu byly odesílány e-maily generované systémem, musíte upravit soubor /etc/aliases
.
- sudo nano /etc/aliases
úplný obsah souboru při výchozí instalaci Ubuntu 16.04 je následující:
# See man 5 aliases for formatpostmaster: root
s tímto nastavením jsou e-maily generované systémem odesílány uživateli root. Co chcete udělat, je upravit tak, aby tyto e-maily byly přesměrovány na vaši e-mailovou adresu. Chcete-li toho dosáhnout, upravte soubor tak, aby četl:
/etc/aliases# See man 5 aliases for formatpostmaster: rootroot: your_email_address
nahraďte your_email_address
svou osobní e-mailovou adresou. Po dokončení uložte a zavřete soubor. Aby se změna projevila, spusťte následující příkaz:
- sudo newaliases
nyní můžete vyzkoušet, že to funguje zasláním e-mailu na účet root pomocí:
- echo "This is the body of the email" | mail -s "This is the subject line" root
e-mail byste měli obdržet na svou e-mailovou adresu. Pokud ne, zkontrolujte složku se spamem.
závěr
to je vše, co potřebujete k nastavení e-mailového serveru pouze pro odesílání pomocí Postfixu. Možná budete chtít podniknout další kroky k ochraně vaší domény před spammery.
pokud váš případ použití je přijímat oznámení ze serveru na jedné adrese, e-maily jsou označeny jako spam je hlavní problém, protože můžete whitelist je. Pokud je však vaším případem použití Odesílání e-mailů potenciálním uživatelům webu (například potvrzovací e-maily pro registraci vývěsky), měli byste určitě nastavit záznamy SPF a DKIM, aby e-maily vašeho serveru byly s větší pravděpodobností považovány za legitimní.
-
jak používat SPF záznam, aby se zabránilo Spoofing & zlepšit spolehlivost E-mailu
-
Jak nainstalovat a nakonfigurovat DKIM s Postfix na Debian Wheezy ačkoli tento článek byl napsán pro Debian Wheezy, stejné kroky platí pro Ubuntu 16.04.
pokud je správně nakonfigurován, je obtížné odesílat spam s adresou, která pochází z vaší domény. Provedení těchto dalších konfiguračních kroků také zvýší pravděpodobnost, že běžní poskytovatelé pošty uvidí e-maily z vašeho serveru jako legitimní.