U jednoho zákazníka jsem teď řešil hned dva problémy související se $subj. Oba souvisí s tím, že jeden server ve vnitřní síti se musí připojovat ven, a v cestě sedí ten Checkpoint Firewall a hraje si na velkého strážce.
- Potřebujeme se připojit na FTP. Zákazník vyžaduje aby celé spojení kontroloval jejich firewall na přítomnost virů. Proti tomu nic nemám, ale ten praštěný firewall se chová tak, že rozumí jen vybraným FTP příkazům, a jakmile mu náš server pošle něco jiného, tak fw celé spojení shodí:
# telnet xxx.yyy.zzz ftp
Trying 111.222.111.222...
Connected to xxx.yyy.zzz (111.222.111.222).
Escape character is '^]'.
220 Check Point FireWall-1 Secure FTP server running on fw-xxxx
AUTH GSSAPI
Connection closed by foreign host.
Jo, přesně tak, hádáte správně! Ten firewall nepošle třeba "500 AUTH not understood" nebo něco podobného, ale shodí celé spojení. Hnus fialovej. - Potřebujeme odesílat maily. Firewall transparentně filtruje celou SMTP session, a na základě nějakých pravidel (která "nikdo nezná") se občas rozhodne že jde asi o spam, a spojení natvrdo ukončí. Respektive funguje to tak, že firewall bez problémů přijme a odešle "EHLO", "MAIL FROM" i "RCPT TO", ale příkaz "DATA" včetně obsahu si pak už začne jen křečkovat někam do bufferu, a až mu odesilatel pošle "." jako konec dat, tak se ten zmetek zmetkovitej rozhodne odpovědět mu "554 Spam email." a cílovému serveru pro změnu poslat jen RST paket a tím spojení předčasně ukončit.
Na co si stěžuju? Že tady se už ani neobtěžuje zahlásit nic jako "554 firewall at x.y.z blocked your email", takže jsem strávil celé odpoledne tím že jsem hledal neexistující problém, protože ani zákazník o tomhle filtrování nic nevěděl (asi jim to někdo nastavoval už kdysi dávno). Jinak řečeno, odesílací server neměl ani tušení o tom, že mu ve skutečnosti odpovídá někdo jiný než skutečná protistrana.
Takže jsem pořád řešil jen problém "proč si cílový server myslí že jde o spam?", dokud mě nenapadlo zkusit ty maily odesílat přes mailserver který mám pod kontrolou. Pak už stačilo jen počkat pár hodin než se firewall rozhodl že "doteď to byly regulérní maily, teď už to asi bude spam" a pomocí tcpdumpu bylo zjevné kde je zakopaný pes.
0 komentářů:
Přidat komentář