Provozujeme poštovní servery už několik let a všechny nástroje popsané v tomto seriálu máme nějakým způsobem nasazené také a docela se těším, že se jich jednou zbavíme. Nastavit Postfix+Dovecot a k tomu kontrolu na viry, spam a podepisování přes DKIM je tak složitý, že i s podobným návodem se tomu člověk musí věnovat minimálně dny, než to funguje jak má a věří tomu. A pak když to funguje, tak to člověka třeba rok nezajímá, maximálně to aktualizuje a hlídá monitoring. Potom se něco stane a to kolečko učení může začít znovu a najít tam problém a opravit ho je opět akce na dny.
Proto bych měl pro budoucí správce mailových serverů několik rad:
* Zkuste se tomu vyhnout, Google Apps nebo Zoho nejsou tak drahý.
* Pokud to nejde, tak vynecháním Postfixu odstraníte 80 % komplexnosti.
* Alternativou je třeba Haraka, která se dá propojit s Dovecotem. Pohodlně i s kontrolou na viry a spam.
* SpamAssassin patří do muzea, lepší je si pohrát s rspamd.
* Debianí distra (Debian, Ubuntu) mají hezky připravenou konfiguraci Dovecotu, tam se s ním pracuje dobře.
* Největší problém provozovatele mail serveru je odchozí spam, ten příchozí vadí "jen" uživatelům.
* Proto je lepší příchozí a odchozí server oddělit na samostatné stroje, zjednoduší se tím konfigurace a zajistí se, že odchozí pošta nebude ovlivněna přeposílaným spamem.
* Rozhodně nepoužívat stejnou IP pro odesílání emailů od uživatelů a z webových aplikací. Ty Wordpressy, zvlášť když nejsou vaše, tam dřív nebo později někdo střelí. Pokud to není Wordpress ale něco custom co běží už roky bez upgradu, tak už to je pravděpodobně nabouraný.
* Pokud to jde, nepřeposílat emaily, protože SPF a protože vaše spamová kontrola nechytne všechno. Pak přeposíláte spam a dostáváte se na blacklist vy.
* Částečné řešení, alespoň pro SPF problém, je přepisovat takovým mailům obálku (SRS), ale když pak projde spam, způsobí to problémy všem uživatelům, protože některé blacklisty koukají i na doménu v obálce emailu.
* Na odesílání emailů z aplikací je lepší použít služby typu Mailgun nebo Mandrill.
* Pokud máte hodně uživatelů, tak je dobré mít třeba 10+ IP adres a hlídat co chodí ven a v jakém počtu. Když to je něco podezřelého tak hned zaříznout a změnit odchozí IP adresu. Ideálně automaticky, ale svět není ideální.
* Rate limiting je absolutní nezbytnost i když jste zatím problém s odchozím spamem neměli. Jednou to přijde.
* A poslední, pokud nemusíte, tak se do toho nepouštějte.
Email je pro spoustu firem klíčovým nástrojem a jeho výpadek má následky. Blacklisty neovlivníte hned, ne všechny spolupracují, takže ne vždy se vám podaří vyřešit všechno během pár hodin. Budete rádi, když to bude ok druhý den. Během toho posloucháte uživatele a jejich příběhy o tom, jak jim končí byznys, protože se jim nepodařilo doručit email a víte, že s tím nemůžete nic dělat, protože to je prostě úděl sdílené služby. Vyladit všechno je na týdny až měsíce a navíc docela nepříjemné práce. Pokud to tedy jen trochu jde, tak se tomu vyhněte.
Zdravim,
Jen bych doplnil:
Rate limit: me se osvedcilo kombinovat to s fail2ban, resp. nakonec spoustu veci resi prave fail2ban. Zejmena lamani hesel a vubec ruzne typy utoku. A da se to predradit jinam.
Nedavno me upozornil kolega na assp ze sourceforge. Vypada to zajimave. Akorat rozjet to na poslednim centosu je spise o tom zahodit to jejich howto a improvizovat.
Jo - aby to nevyznelo - ja perl moc nemusim, ale v dnesni dobe...