IMAP, POP3, Postfix

Jan Kazda, xkazda1@fi.muni.cz


Obsah


POP3

POP3 - Post Office Protocol, umožňuje klientskému počítači stáhnout email z POP3 serveru přes dočasné připojení, neposkytuje posílání emailů, to musí být zabezpečeno přes smtp, nebo jinak, je konvence, že běží na portu 110, POP3S na portu 995

IMAP

IMAP - Internet Message Access Protocol, umožňuje klientovi přistupovat a manipulovat s poštou přímo na serveru, umožňuje manipulaci se vzdálenými mailboxy do té míry, jako by byly lokální, umožňuje provádět operace jako vytvoření, smazání a přejmenování mailboxu, kontrola nových zpráv, odstraňovaní zpráv, zjišťování údajů o zprávě apod., posílání mailu je opět řešeno za pomoci SMTP, nebo jiného protokolu, IMAP4 běží dle úmluvy na portu 143, IMAP4S na portu 993

Postfix

postfix je pokusem Wietse Venema poskytnout alternativu k široce rozsiřenému sendmailu
jeho hlavními přednostmi jsou
rychlost - dokáže zpracovat až milion mailů za den
kompatibilita - postfix je navržen ke snadné migraci od sendmailu, podporuje /var[/spool]/mail, /etc/aliases, NIS, a ~/.forward také se snaží být lehčí na administraci, y tohoto duvodu nepoužívá sendmail.cf, který je poněkud komplikovanější
bezpečnost a robustnost - je navržen k rozumnému chování při zátěži, když systému dochází diskova kapacita, či paměť, a žádný z programů nenarůstá pokud kupříkladu naroste počet zpráv, je navržen tak abz měl neustále kontrolu
flexibilita - je tvořen několika malými programy, které mají každý za úkol pouze jednu specifickou činnost - přijmout zprávu přes SMTP, doručit zprávu přes SMTP, přepsat adresu apod., a je možné je nahradit alternativnimi, nebo třeba vypnout - např. u firewallů nebo klientských pracovních stanic není potřeba local delivery
bezpečnost - má několik vrstev bezpečnosti, téměř každý démon může běžet v chroot jail s pevně omezenými přístupovými právy, není zde přímá cesta ze sítě k bezpečnostně citlivým lokálním doručovacím systémům, postfix nedůvěřuje ani obsahu své fronty souborů, nebo IPC zpráv, filtruje informace od odesílatele, než je přiřadí proměnným prostředí, a žádný z programů postfixu neběží jako suid

Postfix - jak funguje


příjem zprávy

pokud je pošta poslána lokálně, postfixový sendmail ji uloží do přístupného adresáře maildrop, jehož přístupová práva bz měla být taková, aby nějaký uživatel nemohl smazat mail někomu jinému, odkud je vyzvednuta pickup démonem, který ošetří zprávu aby mohla být předána bezpečnostně citlivějším programům
pošte může přijít i z internetu, v tom případě se jí ujme smtp server, který ji také ošetří a krom toho může být i nakonfigurován k přiměřenému chování k UCE(unsolicited commercial email), na bázi black listů, DNS kontrole apod.
program cleanup generuje nový email, nebo upozornění správci, v případě že je zpráva nedoručitelná, na špatné zprávy je tu démon bounce, dále může na žádost použít program trivial-rewrite na přepsání adresy do standartního tvaru, dále přidá hlavičku from, dá zprávu do fronty incoming a uvědomí agenta na správu fronty o příchodu nové zprávy

doručení zprávy

správce fronty mail pošle local(uložení lokální pošty do mailboxů), smtp(posílání dál do sítě), nebo pipe(určený k jiným přenosům, pomocí UUCP protokolu), může použít trivial-rewrite k vyhodnocení adresy - transport(jakého použít doručovacího agenta), nexthop(kam poslat dále), recipient(přibalí účastníkovu adresu poslanou na nexthop), bounce se předávají špatné zprávy o nedoručitelnosti instalace

Postfix - konfigurace

při instalaci postfixu by neměl být nainstalován sendmail, kvůli závislostem, pokud bychom instalovali natvrdo pomocí force, mohlo by dojít k vážným problémům, neboť oba programy používají různě upravené binárky téhož jména
důležité soubory
install.cf - obsahuje seznam defaultních nastavení užitých při instalaci
main.cf - hlavní konfigurační soubor, hojně okomentovaný
master.cf - kontroluje a monitoruje procesz postfixu - limity apod.
aliases - stejný soubor jako u sendmailu, přeposílaní pošty
canonical - mapování adres

Odkazy

http://www.postfix.org/
http://www.agamemnon.net/documents/postfix/index.html
http://www.redhat.com/support/resources/howto/RH-postfix-HOWTO/c12.html