Název školy: | Vyšší odborná škola a Střední průmyslová škola, Božetěchova 3 |
Autor: | Ing. Marek Nožka |
Anotace: | Instalace a nastavení poštovního serveru Postfix |
Vzdělávací oblast: | Informační a komunikační technologie |
Předmět: | Počítačové sítě a komunikační technika (PSK) |
Tematická oblast: | Operační systém Linux/Unix |
Výsledky vzdělávání: | Žák provede instalaci a základní nastavení poštovního serveru Postfix |
Klíčová slova: | Linux, Unix, Postfix, SMTP, poštovní server |
Druh učebního materiálu: | Online návod pro samostatnou práci |
Typ vzdělávání: | Střední vzdělávání, 4. ročník, technické lyceum |
Ověřeno: | VOŠ a SPŠE Olomouc; Třída: 4L |
Zdroj: | Vlastní poznámky, Vilém Vychodil: Linux Příručka českého uživatele |
Programů, které fungují jako tzv. Mail Transfer Agent je celá řada. Jeden s nejlepších a nejvíce nasazovaných je Postfix.
# aptitude install postfix bsd-mailx
Postfix ale nestačí. Ten se postará pouze o odeslání zprávy pomocí protokolu SMTP, o příjem zprávy od jiného MTA a uložení zprávy do lokální e-mailové schránky.
Aby si uživatel mohl zprávu přečíst, potřebuje si ze své poštovní schránky zprávu nějak vybrat. K tomu slouží protokoly POP3 a IMAP4. V našem případě se o komunikaci pomocí těchto protokolů bude starat program Dovecot.
# aptitude install dovecot-imapd dovecot-pop3d
Konfigurace se provádí v souborech /etc/postfix/main.cf
a
/etc/postfix/master.cf
. master.cf
definuje vnitřní strukturu Postfixu,
proto do něj nebudeme zasahovat. Veškerá nastavení budeme provádět v main.cf
myhostname = nozka.lab.spseol.cz
mydomain = $myhostname
myorigin = $mydomain
mydestination = localhost, $mydomain
alias_maps = hash:/etc/aliases
alias_database = $alias_maps
mynetworks = 172.16.0.0/16 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
home_mailbox = Maildir/
### TLS parameters
#smtpd_tls_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
#smtpd_tls_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
#smtpd_use_tls=yes
#smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
#smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
myhostname
mydomain
myorigin
mydestination
mynetworks
mydestination
.
home_mailbox
/
na konci. Pokud tam je jsou zprávy ukládány ve formátu
Maildir, pokud tam není jsou zprávy ukládány do formátu MBOX.
Další hodnoty můžeme ponechat tak, jak byly přednastaveny.
Po uložení konfigurace je třeba ji znovu načíst:
# service postfix reload
případně
# service postfix restart
Každý máme na našem serveru vytvořený nějaký uživatelský účet. Ten bude zapsán
před zavináčem. Například já mám vytvořen uživatelský účet marek
a ten bude
mít adresu marek@nozka.lab.spseol.cz
.
Pokud uživatelský účet chcete vytvořit můžete použít příkaz adduser
.
# adduser franta
# tail /var/log/mail.log
# tree /home/marek/Maildir
Postfix umožňuje nastavit tzv. aliasy v souboru /etc/aliases
.
# /etc/aliases
mailer-daemon: postmaster
postmaster: root
nobody: root
hostmaster: root
usenet: root
news: root
webmaster: root
www: root
ftp: root
abuse: root
noc: root
security: root
# pošta do schránky root se přesměruje do schránky marek
root: marek
# schránka tux se přesměruje do schránky marek
# a zároveň se přepošle na adresu jinej@ggmaail.com
tux: marek, jinej@ggmaail.com
`--> stáhnout
Slouží k tomu volba alias_maps
v souboru /etc/postfix/main.cf
.
alias_maps = hash:/etc/aliases
Poštovní server ale tento soubor nepoužívá přímo. To by bylo příliš pomalé.
Před použitím poštovním serverem je nutné ho "zkompilovat" do formy
databázového souboru (na disku má potom příponu .db). K tomu slouží příkaz
postalias
a newaliases
. My budeme používat ten druhý. Nejprve v main.cf
nastavíme, kterých souborů si má program všímat…
alias_database = $alias_maps
… a potom při každé změně v /etc/alias
provedeme rebuild databáze.
# newaliases
Nastavení se provádí v souboru /etc/dovecot/dovecot.conf
.
K výchozímu nastavení budeme přidávat velice málo. Nejdůležitější je asi toto:
protocols = imap imaps pop3 pop3s
disable_plaintext_auth = no
mail_location = maildir:~/Maildir
mail_privileged_group = mail
protocol imap {
}
protocol pop3 {
pop3_uidl_format = %08Xu%08Xv
}
protocol managesieve {
}
auth default {
mechanisms = plain
passdb pam {
}
userdb passwd {
}
user = root
}
dict {
}
plugin {
}
Vše je ve výchozí konfiguraci. Jen je třeba nastavit mail_location
, aby
Dovecot věděl, kde má hledat poštovní schránky. Volba disable_plaintext_auth
představuje jisté bezpečnostní riziko, ale pro testování se hodí. Umožňuje totiž
aby se uživatelé hlásili i bez použití šifrování.
Jeden z kvalitních kvalitních OpenSource webmailů je SquirrelMail.
# aptitude install squirrelmail
Po instalaci je třeba jej propojit s webovým serverem. Náš oblíbený Debian už má vše nachystáno, takže stačí udělat jeden symlink.
# ln -s /etc/squirrelmail/apache.conf /etc/apache2/sites-enabled/squirrelmail
Abychom komunikaci s WebMailem zabezpečili pomocí SSL/TLS přidáme do konfigurace Apache mod_ssl
.
# cd /etc/apache2/mods-enabled
# ln -s ../mods-available/ssl.load
# ln -s ../mods-available/ssl.conf
# cd /etc/apache2/sites-enabled
# ln -s ../sites-available/default-ssl
Konfigurační soubory jsou hezky předchystány a v první chvíli není potřebné nic měnit. Ale pokud chcete přijít věcem na kloub a naučit se víc než kopírovat příkazy je vhodné je přinejmenším otevřít a podívat se, co v nich je.
Nezapomeňte znovu načíst konfiguraci webového serveru -- dělali jsme tam přece změny!