Jedn� se o textov� soubor, slo�en� z jednotliv�ch p��kaz�, z nich� ka�d� je na samostatn� ��dce. Pr�zdn� ��dky a ��dky za��naj�c� # se ignoruj�. V�t�ina akc� je definov�na prost�ednictv�m jedno- a� dvoup�smenn�ch zkratek.
Kl��ovou roli v konfiguraci hraje, kdy dojde k pou�it� jednotliv�ch pravidel - k ur�en� slou�� rozd�len� do sad. Ka�d� sada je identifikov�na ��slem a za��n� p��kazem S��slo. Kon�� bu� za��tkem dal�� sady nebo koncem souboru. Sada je jak�msi podprogramem, je-li pou�ita na zpracov�vanou adresu, za�nou se aplikovat jej� jednotliv� p��kazy (p�episovac� pravidla). Ka�d� se pou��v� tak dlouho, dokud zpracov�van� adresa vyhovuje lev� stran�. Realizace prav� strany m��e zp�sobit vyvol�n� dal�� sady pravidel, kdy� obsahuje konstrukci $>��slo.
Standardn� sady pravidel pro sendmail:
Sada Ur�en� 0 ur�en� doru�ovatele 1 zpracov�n� adresy odesilatele 2 zpracov�n� adresy p��jemce 3 kanonizace adresy 4 z�v�re�n� �prava adresy 5 zpracov�n� odesilatele v hlavi�k�ch dopisu (jen IDA) 6 zpracov�n� adres�ta v hlavi�k�ch dopisu (jen IDA)P��klad p�episovac�ho pravidla sendmailu:
V�choz� podoba konfigura�n�ch soubor� je textov�, ta je kompilov�na do bin�rn�. Z�kladem je soubor zpracovan� procesorem m4. B�v� pojmenov�n [po��ta�].m4. Obsahuje definice hodnt jednotliv�ch parametr� (prom�nn�ch), ovliv�uj�c�ch �innost programu. Tento soubor se m�n� jen z��dka. V�t�ina zm�n se t�k� d�l��ch soubor� (tabulek). ��dn� �pravy se neprov�d� v souboru sendmail.cf.
Prvn� skupina prom�nn�ch slou�� k identifikaci zdej��ho po��ta�e:
DEFAULT_HOST a DEFAULT_DOMAIN - uv�d�j� jm�no a dom�nu po��ta�e. V norm�ln�ch
p��padech se nedefinuj� program je schopen si p��slu�n� informace naj�t s�m.
PSEUDONYMS - uv�d� dal�� jm�na tohoto po��ta�e nap�.:
define(PSEUDONYMS,posta.fi.muni.cz mail.fi.muni.cz localhost)
ALTERNATENAMES - podobn� prom�nn� PSEUDONYMS, ale jm�na zde uveden� nejsou
jm�ny tohoto po��ta�e, ale po��ta�� pro kter� se po�ta ukl�d� na n� po��ta�
UUCPNAME - jm�no zdej��ho po��ta�e pro UUCP po�tu (kdy� nepou��v�me, nemus�me definovat)
Dal�� typ prom�nn�ch stanov�, kde budou ulo�eny jednotliv� konfigura�n� tabulky:
MAILERTABLE - Mailery pro jednotliv� adresy
PATHTABLE - Neobvykl� cesty
GENERICFROM - p�episov�n� adres odesilatel�
M��eme tak� vyu��t mo�nosti obstar�vat po�tu pro dom�nu na jednom po��ta�i (mail relay)
pak se n�m hod� tyto prom�nn�:
HIDDENDOMAIN - jm�no dom�ny pro kterou ve kter� chceme maskovat po��ta�e
HIDDENDOMAINHOST - ud�v� jak�m jm�nem m� b�t nahrazen libovoln� po��ta� dom�ny,
nen�-li definov�no, pak se pou�ije p��mo hodnota HIDDENDOMAIN
HIDDENNET, HIDDENNETHOST - stejn� jen ne pro celou dom�nu, ale pouze pro
skupinu po��ta�� (uvedenou v HIDDENNET)
Ukr�van� jm�no by m�lo b�t registrov�no v DNS (minim�ln� by m�l existovat
MX z�znam?
Dal�� prom�nn�:
RELAY_HOST, RELAY_MAILER - adresa a p��slu�n� Mailer, kam se pos�l� po�ta se kterou
si sendmail neporad�
ALIASES - jm�no souboru, obsahuj�c� definici alias�
POSTMASTERBOUNCE - adresa, na kterou se doru�� kopie ka�d�ho dopisu, jeho� doru�ov�n�
skon�ilo chybou
LOADQUEUE - ud�v� zat��en� syst�mu, p�i kter�m sendmail p�est�v� doru�ovat dopisy a
m�sto toho je jen �ad� do fronty (implicitn� 11)
LOADAVEREJ - zat��en� p�i kter�m sendmail odm�t� vn�j�� pokusy o nav�z�n� spojen�
(implicitn� 7)
FORCE_NAME - definuje se p�i pou��v�n� DNS (norm�ln� stav), na hodnot� nez�le��.
Posledn�m p��kazem souboru by v�dy m�lo b�t:
include(Sendmail.mc)
co� zajist� vytvo�en� souboru sendmail.cf
Po zpracov�n� konfigura�n�ho souboru programem m4, dostaneme na std v�stup sendmail.cf.
Jm�na soubor� jsou definov�na v hlavn�m konfigura�n�m souboru. Uv�d�j�
se bez p��pony nap�. /etc/mail/mailertable. Ve skute�nosti v�ak
v dan�m adres��i existuj� dva soubory s p��ponami .dir a .pag.
Vytvo��me je pomoc� p��kazu:
dbm -d mailertable make mailertable.conf
P�edpokl�d�me, �e zdrojov� text je v souboru mailertable.conf. Volba -d ��k�,
kter� datab�ze se m� vytvo�it.
MAILERTABLE ��d� zpracov�n� po�ty, ur�uje, kter�m Mailerem a kam se p�ed�vaj�
ur�it� dopisy. P�i implicitn�m chov�n� IDA sendmailu, je-li po�ta ur�ena na tento po��ta�,
p�ed� se Maileru local. Pro ostatn� adresy se pou�ije Mailer TCP (dotaz na
MX z�znam a odesl�n� protokolem SMTP). Pomoc� MAILERTABLE lze do tohoto mechanizmu
p�id�vat roz���en� a vyj�mky. Kl��em je v tomto souboru dom�nov� jm�no, hodnota je tvo�ena
trojic�:
<Mailer><odd�lova�><po��ta�>
<Mailer> Funkce local -ulo�� do schr�nky lok�ln�ho u�ivatele prog -spust� program a dopis mu po�le na vstup TCP -doru�� protokolem SMTP UUCP -doru�� klasick�m UUCP UUCP-A -doru�� protokolem UUCP, ale pou��v� RFC822 adresy error -ohl�s� odesilateli dopisu chybuPATHTABLE slou�� pro ru�n� sm�rov�n� po�ty. Definuje cesty, kter�mi maj� b�t d�le dopravov�ny dopisy. Zpravidla se pou��v� jen ve spojen� s UUCP.<odd�lova�> V�znam ; - adresa beze zm�ny ! - z adresy se od��zne dom�na (pro UUCP a local) : - z adresy se od��zne dom�na, jen pokud ve zbyl� ��sti z�stane n�jaka dom�na
<po��ta�> specifikuje na kter� stroj m� Mailer odeslat dopis.
DOMAINTABLE p�ev�d� p��padn� zkratky a p�ezd�vky na dom�nov� jm�na. Jestli�e IDA sendmail dostane ke zpracov�n� dom�nov� jm�no, pod�v� se nejprve do DOMAINTABLE a pot� do DNS, zda se nejedn� o p�ezd�vku. Pokud ano, ��d� se d�l jen kanonick�m jm�nem.
UUCPXTABLESlou�� k p�evodu dom�nov�ch jmen po��ta�� na jm�na protokolu UUCP.
GENERICFROM obsahuje pravidla pro p�episov�n� adres odesilatel� v dopisech. Umo��uje zam�n�n� dom�ny a jm�na u�ivatele za jm�na symbolick� (nap� pnovak@anxur.fi.muni.cz za Pavel.Novak@muni.cz). P�ezd�vky (aliasy) funguj� obousm�rn�, o p�evod na konkr�tn� adresu se star� soubor ALIASES. �dr�ba dvou sobor� je pr�ce nav�c a tak IDA sendmail obsahuje i program xalparse, kter� umo��uje z jednoho datov�ho souboru automaticky vyrobit oba zmi�ovan�.
Soubor xaliases m� tvar ��dku:
<p�ezd�vka>: <odd�lova�><adresa>
Na obou stran�ch mohou st�t seznamy, odd�len� ��rkami
<odd�lova�> V�znam > - dopis sm�rovan� na <p�ezd�vku> poslat na <adresu>; (vytvo�� polo�ku v aliases) < - adresu v hlavi�ce From nahradit <p�ezd�vkou>; (vytvo�� polo�ku v GENERICFROM) <> - oboje chyb� - jako >Na vytvo�en� soubor xaliases je t�eba pou��t program xalparse: