Nastavenie sendmail-u

Celý tento príbeh začal niekedy začiatkom júna (červen) keď mi google zobrazil inzerát na zaujímavý projekt s virtuálnymi privátnymi servermi (VPS). Keďže jeden už roky vlastním a práve som pokukoval po ďalšom, tak som si prečítal úvodnú stránku www.4smart.cz. Keďže celý projekt sa mi zdal nesmierne sympatický a obchodný model revolučný, dlho som neváhal, a vyskúšal som si jeden server so šablónou debian-6.0-x86_64-webdev1. S bežnými nastaveniami som nemal problémy, ale nastavenie sendmail-u som riešil asi dva týždne. Po mojich skúsenostiach sa podľa mňa celé dá zvládnuť za 10 minút - a práve preto sa chcem s týmito skúsenosťami podeliť, aby ste mohli ušetriť drahocenný čas.

Postup opíšem v niekoľkých číslovaných krokoch, ale nie je vylúčené, že stačí vykonať len posledný krok, aby sendmail fungoval správne. Ja som však prešiel celou genézou, a nevylučujem, že niektoré kroky možno vynechať. Keďže však nie som žiadny linuxový guru, ale adminstrátor z donútenia, niektorým krokom sám nerozumiem na 100% a niektoré určite nie sú najelegantnejšie (treba však povedať, že za tie dni, čo som sa trápil, som oslovil viacero linuxových odborníkov, dokonca z viacerých štátov Európy a nikto mi nevedel dať stopercentne fungujúcu radu).

Takže pustíme sa do toho:

1. krok:

VPS už mal pridelenú verejnú IP adresu. Ako som sa dozvedel, úplne podstatné je, aby táto IP adresa nebola na žiadnom blackliste (zoznam, ktorý obsahuje IP adresy, z ktorých sa v minulosti posielali spamy). Toto som si overil na stránke http://www.spamhaus.org/

2. krok:

Potom som zistil, že služba sendmail-u na servri nebeží (príkazom „telnet localhost 25“ môžte vyskúšať, či funguje. Ukončenie telnetu: príkaz quit. Alebo ak už máte sendmail nastevený podľa tohto návodu, tak potom „telnet mojsmartserver.mojadomena.sk 25“). Služba sendmail-u sa síce dala spustiť príkazom /etc/init.d/sendmail start, ale po reštarte VPS služba opäť nebežala. Nepomohlo ani obvyklé update-rc.d sendmail enable, tak som to vyriešil tak, že do /etc/rc1.d a /etc/rc2.d skopíroval súbor /etc/rc3.d/@S21sendmail , aby sa sendmail spúšťal aj v týchto runleveloch (nie je vylúčené, že som sa dopustil nejakej bezpečnostnej chyby). Po reštarte však sendmail už bežal.

3. krok:

Pridelil som doménové meno k IP adrese (nastavil som A record domény mojsmartserver.mojadomena.sk na IP adresu, ktorú som dostal od 4smart). Ako vidíme, stačí aj doména tretej úrovne.

Neskôr vysvitlo, že treba nastaviť aj iné doménové záznamy, takže ak už sme v nastaveniach domény, môžeme ich rovno nastaviť:

MX record „mojadomena.sk” nastaviť na „10 mojsmartserver.mojadomena.sk“

MX record „mojsmartserver.mojadomena.sk” nastaviť na „10 mojsmartserver.mojadomena.sk“

(priebeh nastavení môžeme priebežne kontrolovať na http://www.mxtoolbox.com, môže to trvať aj hodiny, kým sa nastavenia prejavia)

4. krok:

V administračnom rozhraní 4smart.cz som nastavil hostname na „mojsmartserver.mojadomena.sk“ a zrušil priradenie vnútornej IP adresy.

5. krok:

Požiadal som adminstrátora 4smart na adrese podpora[zavinac]4smart.cz, aby mi pridelil tzv. reverznú DNS (rDNS, reverse DNS, alebo tiež PTR záznam) k doméne „mojsmartserver.mojadomena.sk“. Potom som čakal niekoľko dní, kedže som sa z rôznych zdrojov dozvedel, že niektoré servre updatujú tieto záznamy len raz za týždeň. Tieto veľmi dlhé čakacie doby sú pravdepodobne len urban legends.

Tento stav môžete skontrolovať na rôznych počítačoch/sieťach takto:

• na linuxe príkazom: resolveip mojaIPadresa

• na windowse: ping -a mojaIPadresa

• alebo webovou službou http://reverse.e-dns.org/

(ako odpoveď by ste mali dostať „mojsmartserver.mojadomena.sk“)

6. krok:

Prísť na tento posledný krok mi trvalo najdhšie…

V prvom riadku súboru /etc/hosts som mal záznam

127.0.0.1 localhost.localdomain localhost 

alebo môže byť aj

127.0.0.1 localhost.localdomain localhost mojsmartserver.mojadomena.sk

čo spôsobovalo, že sa maily odosielali z hostu „ localhost.localdomain“, čo je úplne neprípustné.

Stačilo už len „vykomentovať“ tento prvý riadok, čiže obsah súboru bol takýto (medzery sú dôležité!):

#127.0.0.1 localhost.localdomain localhost 4smartserver1.webfinity.sk

# Auto-generated hostname. Please do not remove this comment.

77.xxx.xxx.xxx(mojaIPadresa) mojsmartserver.mojadomena.sk mojsmartserver

Po reštarte sa odosialanie mailov okamžite spustilo.

Ak máte pripomienky alebo otázky, píšte na julius[zavinac]szarka.sk

 
nastaveni_sendmailu.txt · Poslední úprava: 2011/07/27 08:55 autor: juliusszarkask