Lemat, strona prywatna

Przepis na smarthosta

Jeżeli macie serwer pocztowy na tepsianym DSLu to macie zapewne problem z lądowaniem waszych emaili w filtrach antyspamowych. Proste wytłumaczenie faktu: TPSA ma cię w dupie - nie przejawia absolutnie żadnej aktywności w sprawie spamu z jej sieci. Dlatego też coraz więcej prowajderów po prostu blokuje wszystkie sieci tepsy zaczynając od neostrad i internetdsli a kończąc na firmowych światłowodach.

Rozwiązaniem tego problemu jest użycie tzw. smarthosta czyli adresu IP nie znajdującego się na czarnych listach. Konfiguracja postfixa tak, aby dla niektórych domen korzystał ze smarthosta a dla wszystkich innych wysyłał bezpośrednio wygląda tak:
transport_maps = hash:/etc/postfix/transport
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = hash:/etc/postfix/smtp_sasl_password_maps.hash
smtp_sasl_mechanism_filter = plain, login
smtp_sasl_security_options = noanonymous
smtp_use_tls = yes

# cat transport
yahoo.com       error:poczta do *@yahoo.com nie moze zostac dostarczona z tego serwera
gmail.com       smtp:smtp.gmail.com:587
op.pl                 smtp:smtp.gmail.com:587

# cat smtp_sasl_password_maps.hash
smtp.gmail.com  jakiś.login@gmail.com:jakieś.hasło

# postmap smtp_sasl_password_maps.hash

W powyższym przykładzie smarthostem jest gmail, jeżeli odbiorca też jest na gmailu lub na onecie. Na smarthoście musimy mieć założone konto. To konto i jego hasło zapisujemy w pliku smtp_sasl_password_maps.hash. Oczywiście wszystkie hashe trzeba potraktować postmap-em a plik z hasłem ustawić z prawami 600 (rw tylko dla roota).
Umieściłem też przykładowo linijkę w transporcie do domeny yahoo, która powoduje wyświetlenie odpowiedniego komunikatu.

Postfix na neostradzie

Jeżeli mamy postfixa i neostradę to TPSA blokuje połączenia wychodzące do portu 25 tcp. Czyli postfix na neostradzie nie może nic wysłać np. do onetu, co objawia się takim wpisem w logach:
connect to mx.poczta.onet.pl[213.180.147.146]:25: Connection timed out
Jak widać postfix usiłował się połączyć z onetem na porcie 25. Czyli trzeba użyć smarthosta (ustawić transport, login i hasło) - ale trochę inaczej - interesuje nas przesłanie przez smarthosta wszystkich emaili. Zatem:
relayhost=smtp.gmail.com:587
dzięki temu wszystko co wychodzi będzie wychodziło przez gmaila, a jak użyjemy dodatkowo transportów z przykładu wyżej, to emaile do konkretnych domen/odbiorców mogą wychodzić przez odpowiednio skonfigurowane serwery.
Przykład użycia: onet i wp nie lubią naszego głównego smarthosta, ale posiadamy konta @onet i @wp, przez które możemy przepychać pocztę bezpośrednio.


Data utworzenia : 2008-11-21, data aktualizacji :2010-11-09

Protected by spf
[Nospam-PL.NET]
Seti@Home
www.php.net
© Lemat 2004 - ∞