sendmail.cf
o nemž lidová moudrost
praví: "Člověk, který nikdy neupravoval sendmail.cf
,
není skutečným správcem Unixu. Člověk, který to dělal více než jednou,
je blázen". Proto se ke konfiguraci sendmailu používá sada maker,
která se potom pomocí makroprocesoru m4
expandují do
požadovaného konfiguračního souboru. Sendmail je monolitický setuid root
program, což s sebou nese nebezpečí potenciálního (a také často
využívaného) zneužití chyby v něm.
Qmail tvoří několik malých programů, z nichž každý dělá pouze jednu věc a dokáže spolupracovat s ostatními. Žádný z těchto programů neběží pod superuživatelským uid/gid. Jednotlivé komponenty nedůvěřují žádným informacím získaným z okolí (ani sobě navzájem), navíc qmail nedůvěřuje příliš ani standardní knihovně a její funkce buďto zcela nahrazuje nebo se alespoň nesnaží spoléhat na jejich správnou funkčnost.
Spolehlivost qmailu je zajištěna použitím
jiného formátu pro ukládání zpráv nazvaného maildir
.
Ten se od klasického formátu mbox
liší zejména tím,
že každá zpráva je ukládána do jiného souboru, což odstraňuje
potíže se zamykáním v případě standardního mailboxu a možnost
jeho poškození v případě výpadku systému. Zprávy jsou potvrzovány
až po kompletním zápisu na disk.
Konfigurace qmailu je mnohem jednodušší, ale také dost odlišná
od sendmailu, protože celé vnitřní uspořádání qmailu je odlišné.
Qmail implicitně nepodporuje .forward
soubory ani
/etc/aliases
. Nicméně flexibilita qmailu umožňuje
rozšiřovat svoji funkčnost pomocí dalších balíků, takže je možné
přidat mimo jiné i podporu pro tyto funkce typické pro sendmail.
qmail-run
). Hlavním důvodem k tomuto rozdělení
je možnost jednoduchého upgradu binárek na vyšší verze bez nutnosti zásahu
do nastavení. Bližší informace včetně popisu instalace naleznete na
ftp://moni.msci.memphis.edu/pub/qmail/var-qmail/README.var-qmail.
INSTALL
uvnitř archivu.
/var/qmail
-- všechny konfigurační nástroje se nachází v jeho podstromu.
/var/spool/mail/uzivatel
,
ale někam pod domovský adresář příslušného uživatele. Kam, to
záleží na nastavení administrátora systému případně na uživateli
samotném. Ten může ovlivňovat doručování příchozí pošty pomocí
tzv. dot-qmail souborů ~/.qmail
,
~/.qmail-cokoliv
nebo
~/.qmail-default
. Ty mají podobný význam jako
~/.forward
u sendmailu (blíže viz.
man dot-qmail
nebo např.
http://www.cuni.cz/~vhor/dot-qmail.htm.us-ascii) s tím
rozdílem, že umožňují uživatelům navíc vytváření vlastních
mailboxů. Pomocí nich lze také nastavit formát ukládání příchozích
zpráv. Je-li totiž pošta podle dot-qmail souboru směrována do
souboru, ukládá se ve formátu
mbox
, je-li směrována do adresáře, ukládá se do
maildir
(ten je ale potřeba nejdříve připravit
spuštěním bin/maildirmake
).
control/rcpthosts
.
control/locals
. Zprávy směřující do lokální domény
qmail předává uživatelům.
Qmail chápe uživatele jako majitele ne-rootovského účtu,
který zároveň vlastní svůj domovský adresář. Pouze
uživatelé mohou mít svůj mailbox. Ostatní
(ne-uživatelské) adresy jako např. root
,
postmaster
, admin
,...
odchytává speciální uživatel alias
pomocí
svých dot-qmail souborů. (POZOR! To ale neznamená, že qmail
neumožňuje vedení mailboxů, jejichž majitelé nemají
zřízen účet v systému.)
control/virtualdomains
ve formátu
virtualdomain.com:uzivatel
. Tím je řečeno, že
veškerou poštu směřující na adresu
neco@virtualdomain.com
bude qmail předávat
uživateli uzivatel
do schránky odpovídající
adrese uzivatel-neco@localdomain.com
.
control/rcpthosts
,
control/locals
nebo
control/virtualhosts
je nutné zaslat programu
qmail-send
HUP signál, aby znovunačetl svoji
konfiguraci.
ezmlm
.forward
i /etc/aliasses