V této příručce se naučíme, jak nainstalovat a nakonfigurovat Postfix na serveru Ubuntu 20.04. Použijeme s-nail
(Mail User Agent – MUA), abyste otestovali, že Postfix je schopen správně směrovat poštu.
Budeme schopni zprovoznit Postfix a zprovoznit některé funkce e-mailu s holou kostí. Na konci této příručky nebudete mít plně vybavený e-mailový server, ale budete mít některé základní součásti takového nastavení, které vám pomohou začít.
Předpoklady
Chcete-li postupovat podle tohoto návodu k instalaci a konfiguraci Postfixu, musíte mít nejprve následující:
- Server Ubuntu 20.04, který bude fungovat jako server Postfix
- Plně kvalifikovaný název domény nasměrovaný na váš server Ubuntu 20.04.
Všimněte si, že tento kurz předpokládá, že konfigurujete hostitele, který má FQDN mail.citizix.com
. Kdykoli je to nutné, nezapomeňte změnit citizix.com
nebo mail.citizix.com
odrážet vaše vlastní FQDN.
Krok 1:Ujistěte se, že je váš server aktuální
Než budete pokračovat, ujistěte se, že server má aktualizované balíčky. K tomu použijte tento příkaz:
sudo apt update
sudo apt -y upgrade
Krok 2:Instalace Postfixu
Postfix je součástí výchozích repozitářů Ubuntu jako postfix
. Můžeme jej nainstalovat pomocí APT.
Upozorňujeme, že zde předáváme DEBIAN_PRIORITY=low
do tohoto příkazu instalace. To způsobí, že proces instalace vás vyzve ke konfiguraci některých dalších možností:
sudo DEBIAN_PRIORITY=low apt install postfix
Tento instalační proces otevře řadu interaktivních výzev. K vyplnění výzev použijte následující informace:
- Obecný typ konfigurace pošty? :K tomu vyberte Internetový web protože to odpovídá našim potřebám infrastruktury.
- Název systémové pošty :Toto je základní doména používaná k vytvoření platné e-mailové adresy, když je uvedena pouze část adresy týkající se účtu. Řekněme například, že název hostitele vašeho serveru je
mail.citizix.com
. Pravděpodobně budete chtít nastavit název systémové pošty nacitizix.com
takže vzhledem k uživatelskému jménuuser1
, Postfix použije adresu[email protected]citizix.com
. - Kořenový a hlavní příjemce pošty :Toto je linuxový účet, kterému bude přeposílána pošta adresovaná na
[email protected]
a[email protected]
. Použijte k tomu svůj primární účet. V tomto příkladu admin . - Další cíle, do kterých lze přijímat poštu :Toto definuje poštovní cíle, které tato instance Postfixu přijme. Pokud potřebujete přidat další domény, za jejichž příjem bude tento server zodpovědný, přidejte je sem. V opačném případě bude výchozí nastavení dostatečné.
- Vynutit synchronní aktualizace ve frontě pošty? :Protože pravděpodobně používáte žurnálovaný souborový systém, přijměte Ne zde.
- Místní sítě :Toto je seznam sítí, pro které je váš poštovní server nakonfigurován pro předávání zpráv. Výchozí bude fungovat pro většinu scénářů. Pokud se jej však rozhodnete upravit, ujistěte se, že jste velmi omezující, pokud jde o rozsah sítě.
- Omezení velikosti poštovní schránky :Toto lze použít k omezení velikosti zpráv. Nastavení na
0
zakáže jakékoli omezení velikosti. - Znak rozšíření místní adresy :Toto je znak, který lze použít k oddělení běžné části adresy od rozšíření (používá se k vytváření dynamických aliasů). Výchozí hodnota
+
bude fungovat pro tento tutoriál. - Internetové protokoly k použití :Zvolte, zda chcete omezit verzi IP, kterou Postfix podporuje. Pro účely tohoto výukového programu vyberte všechny .
Poznámka :Pokud se budete chtít někdy vrátit a změnit tato nastavení, můžete tak učinit zadáním:
sudo dpkg-reconfigure postfix
Výzvy budou předem vyplněny vašimi předchozími odpověďmi.
Po dokončení procesu instalace jste připraveni provést několik aktualizací konfigurace Postfixu.
Krok 3:Změna konfigurace Postfixu
Nastavení konfigurace Postfixu jsou definována v /etc/postfix/main.cf
soubor. Můžete použít postconf
Postfixu příkaz k dotazu nebo nastavení konfiguračních nastavení namísto přímé úpravy souboru.
Chcete-li začít, nastavte umístění poštovní schránky vašeho uživatele Ubuntu bez oprávnění root. V této příručce budeme používat Maildir formát, který rozděluje zprávy do jednotlivých souborů, které se pak přesouvají mezi adresáři na základě akce uživatele. Alternativní možností, kterou tento průvodce nepokrývá, je mbox formát, který ukládá všechny zprávy do jednoho souboru.
Nastavte home_mailbox
proměnnou na Maildir/
. Později vytvoříte adresářovou strukturu pod tímto jménem v domovském adresáři vašeho uživatele. Nakonfigurujte home_mailbox
zadáním:
sudo postconf -e 'home_mailbox= Maildir/'
Dále nastavte umístění virtual_alias_maps
tabulka, která mapuje libovolné e-mailové účty na systémové účty Linux. Spusťte následující příkaz, který mapuje umístění tabulky na soubor databáze hash s názvem /etc/postfix/virtual
:
sudo postconf -e 'virtual_alias_maps= hash:/etc/postfix/virtual'
Nyní, když jste definovali umístění souboru virtuálních map v main.cf
můžete vytvořit samotný soubor a začít mapovat e-mailové účty na uživatelské účty ve vašem systému Linux. Vytvořte soubor pomocí preferovaného textového editoru; v tomto příkladu použijeme vim
:
sudo vim /etc/postfix/virtual
Uveďte všechny adresy, pro které chcete přijímat e-maily, a za nimi mezeru a uživatele systému Linux, kterému chcete e-mail doručovat.
Pokud například chcete přijímat e-maily na adrese [email protected]
a[email protected]
a chtěli byste, aby byly tyto e-maily doručeny adminovi Uživateli Linuxu, můžete svůj soubor nastavit takto:/etc/postfix/virtual
[email protected] admin
[email protected] admin
Po namapování všech adres na příslušné účty serveru soubor uložte a zavřete.
Aplikujte mapování zadáním:
sudo postmap /etc/postfix/virtual
Restartujte proces Postfixu, abyste se ujistili, že všechny vaše změny byly použity:
sudo systemctl restart postfix
Pokud máte nainstalovaný a povolený firewall ufw, můžete povolit připojení ke službě zadáním:
sudo ufw allow Postfix
Krok 3 — Instalace poštovního klienta a inicializace struktury Maildir
Abyste mohli komunikovat s doručovanou poštou, tento krok vás provede procesem instalace s-nail
balík. Toto je funkčně bohatá varianta BSD xmail
klient, který dokáže správně zpracovat formát Maildir.
Před instalací klienta by však bylo rozumné zkontrolovat váš MAIL
proměnná prostředí je nastavena správně. s-nail
bude hledat tuto proměnnou, aby zjistil, kde najde poštu pro vašeho uživatele.
Abyste zajistili, že MAIL
proměnná je nastavena bez ohledu na to, jak ke svému účtu přistupujete – zda prostřednictvím ssh
, su
, su -
nebo sudo
, například – budete muset nastavit proměnnou v /etc/bash.bashrc
a přidejte jej do souboru v /etc/profile.d
abyste se ujistili, že je standardně nastaven pro všechny uživatele.
Chcete-li přidat proměnnou do těchto souborů, zadejte:
echo 'export MAIL=~/Maildir' | sudo tee -a /etc/bash.bashrc | sudo tee -a /etc/profile.d/mail.sh
Chcete-li proměnnou načíst do aktuální relace, použijte zdroj /etc/profile.d/mail.sh
soubor:
source /etc/profile.d/mail.sh
Po dokončení nainstalujte s-nail
e-mailový klient s APT:
sudo apt install s-nail
Před spuštěním klienta je třeba upravit několik nastavení. Otevřete /etc/s-nail.rc
soubor ve vašem editoru:
sudo vim /etc/s-nail.rc
V dolní části souboru přidejte následující možnosti:/etc/s-nail.rc
. . .
set emptystart
set folder=Maildir
set record=+sent
Tyto řádky dělají toto:
set emptystart
:umožňuje klientovi otevřít i s prázdnou doručenou poštouset folder=Maildir
:nastavíMaildir
adresáře do internífolder
proměnnáset record=+sent
vytvořísent
mbox pro ukládání odeslané pošty v libovolném adresáři nastaveném jakofolder
proměnná, v tomto případěMaildir
Po dokončení uložte a zavřete soubor. Nyní jste připraveni inicializovat strukturu Maildir vašeho systému.
Rychlý způsob, jak vytvořit strukturu Maildir ve vašem domovském adresáři, je poslat si e-mail s s-nail
příkaz. Protože sent
soubor bude dostupný až po vytvoření Maildir, měli byste zakázat zápis do tohoto prvního e-mailu. Udělejte to předáním -Snorecord
možnost.
E-mail odešlete přiložením řetězce k s-nail
příkaz. Upravte příkaz tak, aby byl jako příjemce označen váš uživatel systému Linux:
echo 'init' | s-nail -s 'init' -Snorecord admin
Chcete-li se ujistit, že byl adresář vytvořen, vyhledejte svůj ~/Maildir
adresář:
ls -R ~/Maildir
Uvidíte, že adresářová struktura byla vytvořena a že nový soubor zpráv je v ~/Maildir/new
adresář:
$ ls -R ~/Maildir
/home/ubuntu/Maildir:
cur new tmp
/home/ubuntu/Maildir/cur:
/home/ubuntu/Maildir/new:
1643972360.V10301Ifbca3M171366.dev-ubuntusrv.inv.re 1643972375.V10301Ifbca5M242683.dev-ubuntusrv.inv.re
/home/ubuntu/Maildir/tmp:
Nyní, když byla vytvořena adresářová struktura, jste připraveni vyzkoušet s-nail
klienta zobrazením init
odeslanou zprávu a odeslání zprávy na externí e-mailovou adresu.
Krok 4 – Testování klienta
Chcete-li klienta otevřít, spusťte s-nail
příkaz:
s-nail
V konzoli uvidíte základní doručenou poštu s init
čekající zpráva:
$ s-nail
s-nail version v14.9.15. Type `?' for help
/home/admin/Maildir: 1 messages 1 new
▸N 1 Ubuntu 2022-02-04 10:59 14/432 init
?
Stiskněte ENTER
pro zobrazení zprávy:
[-- Message 1 -- 14 lines, 432 bytes --]:
From [email protected] Fri Feb 4 10:59:35 2022
Date: Fri, 04 Feb 2022 10:59:35 +0000
To: [email protected]
Subject: init
Message-Id: <[email protected]>
From: Ubuntu <[email protected]>
init
Do seznamu zpráv se můžete vrátit zadáním h
a poté ENTER
:
h
▸R 1 Ubuntu 2022-02-04 10:59 14/432 init
Všimněte si, že zpráva má nyní stav R
, což znamená, že bylo přečteno.
Protože tato zpráva není příliš užitečná, můžete ji smazat stisknutím d
a poté ENTER
:
d
Chcete-li se vrátit do terminálu, zadejte q
a poté ENTER
:
q
Jako poslední test zkontrolujte, zda s-nail
je schopen správně odesílat e-mailové zprávy. Chcete-li to provést, můžete obsah textového souboru přenést do s-nail
proces, jako jste to udělali s init
zprávu, kterou jste odeslali v předchozím kroku.
Začněte napsáním testovací zprávy v textovém editoru:
vim ~/test_message
Uvnitř zadejte text, který chcete odeslat:
Hello,
This is a test. Please confirm receipt!
Po napsání zprávy soubor uložte a zavřete.
Poté použijte cat
příkaz pro přepojení zprávy do s-nail
proces. Můžete tak učinit pomocí následujícího příkladu, který používá tyto možnosti:
-s
:Toto definuje předmět e-mailové zprávy-r
:Volitelná změna pole „Od:“ e-mailu. Ve výchozím nastavení se k vyplnění tohoto pole použije uživatel systému Linux, pod kterým jste přihlášeni.-r
Tato možnost vám umožňuje přepsat to platnou adresou, například jednou z těch, které jste definovali v/etc/postfix/virtual
soubor. Pro ilustraci, následující příkaz používá[email protected]
Nezapomeňte také změnit[email protected]
na platnou e-mailovou adresu, ke které máte přístup:
cat ~/test_message | s-nail -s 'Test email subject line' -r [email protected] [email protected]
Poté přejděte do doručené pošty pro e-mailovou adresu, na kterou jste zprávu odeslali. Svou zprávu tam uvidíte téměř okamžitě.
Poznámka :Pokud zpráva není ve vaší doručené poště, možná byla doručena do vaší složky Spam.
Odeslané zprávy můžete zobrazit ve svém s-nail
klienta. Spusťte znovu interaktivního klienta:
s-nail
Z e-mailového klienta zobrazte odeslané zprávy zadáním:
file +sent
Kopírovat
Uvidíte výstup takto:
$ s-nail
s-nail version v14.9.15. Type `?' for help
/home/admin/Maildir: 0 messages
No more mail.
? file +sent
+[/home/admin/Maildir/]sent: 1 message 1 new
▸N 1 [email protected] 2022-02-04 11:07 12/291 Test email subject line
?
Odeslanou poštu můžete spravovat pomocí stejných příkazů, jaké používáte pro příchozí poštu.
Závěr
Nyní máte Postfix nakonfigurovaný na vašem serveru Ubuntu 20.04. Správa e-mailových serverů může být pro nové správce systému obtížným úkolem, ale s touto konfigurací byste měli mít dostatek e-mailových funkcí MTA, abyste mohli začít.