Portál AbcLinuxu, 5. května 2025 02:50

Chvála greylistingu

27.7.2006 22:17 | Přečteno: 2013× | Ze života | poslední úprava: 29.7.2006 18:57

Sice jsem před časem napsal, že spam je překonaná záležitost, nicméně tak docela to pravda není. Stále ještě přidělává dost zbytečné práce a tak se hodí každá metoda, která účinně pomůže s bojem proti němu. Jednou z takových metod je právě graylisting.

Nejedná se o žádnou novinku. Pro toho, kdo by ho neznal, nejprve vysvětlím stručný princip. Greylisting (též "graylisting", používají se obě verze podle různých dialektů angličtiny) je založen na dočasném odmítnutí "neznámé" zprávy. Pracuje se s trojicí server-odesílatel-příjemce, a pokud přijímající server tuto kombinaci dosud nezná, dočasně odepře příjem zprávy (typicky SMTP kódem 450). Po nějaké rozumné době je přijetí umožněno a trojice je dočasně přidána do databáze - po dalších přijatých zprávách pro tuto trojici se záznam stane permanentním.

Technika vychází z toho, že podle RFC 2821 by měla odesílající strana, pokud obdrží kód dočasného odmítnutí, svůj pokus zopakovat. Slušné poštovní servery tak činí, spammeři obvykle nikoliv (pokud nezneužijí "slušný server" nakonfigurovaný jako open relay). Ti většinou chrlí poštu co nejvíc příjemcům najednou, jejich SMTP klienti (běžící na různých zombie strojích nebo na počítačích s dynamicky přidělovanými adresami) často jen kulometně posílají SMTP příkazy a odpovědi vůbec nezpracovávají - a když se to nepovede doručit, prostě to neřeší a jdou o dům dál.

Greylisting je z výše uvedených důvodů velice zajímavý, současně má ale dvě nepříjemné vlastnosti. Jednou je zpoždění první zprávy pro danou trojici, které je nedeterministické a záleží na nastavení obou stran. Druhým, ještě závažnějším problémem, je nedoručení zprávy při špatně nastaveném odesílajícím serveru (tedy ale upřímně řečeno, takový server musel nastavovat pořádný diletant, protože default nastavení všech běžných SMTP serverů takovou situaci vylučuje). Kromě toho je tu ještě další menší problém, o kterém se zmíním později.

S nasazením greylistingu na poštovní server jsem dlouho váhal, a to právě kvůli oním dvěma důvodům. Ostatně tato technika ani není obecně moc rozšířená, například z velkých českých providerů ji používá pouze Contactel (dnes již součást Radiokomunikací GTS Novera). Tím spíš, že jde o věc, která se nedá nějak předem otestovat. Nicméně stále rostoucí příval spamu, v kombinaci s poměrně značnou operační náročností antispamové kontroly, vyústil v logický krok - tedy instalaci greylistingu na server.

Jedná se konkrétně o aplikaci Postgrey, která funguje jako policy server pro Postfix. Může být řízena buď přímo Postfixem (podobně jako další podřízené služby) nebo ji lze spouštět samostatně (např. "redhatovským" stylem). Komunikuje přes unixový nebo internetový socket, z čehož vyplývají i možnosti použití (např. běh na jiném stroji, než běží Postfix). Pro úplnost ještě dodám, že se jedná o program napsaný v Perlu.

Dosavadní zkušenosti po několikatýdenním provozu jsou výborné. Víc než 95 % spamu je úspěšně odmítnuto, z přímo příchozího skoro 100 %. Problémy činí zprávy přeposílané odjinud, zejména z konferencí (např. LKML). Tam tato technika z pochopitelných důvodů selhává a musí nastoupit klasické antispamové mechanismy. I v takových případech se však určitý přínos projeví, protože se odesílající stroj může v mezidobí stihnout dostat do různých blacklistů a zpráva tedy následně získá vyšší skóre.

Velice pozitivní je také fakt, že s největší pravděpodobností nebyla odmítnuta žádná regulérní zpráva. Tedy že žádný odesílající server nebyl nakonfigurován tak, aby to při prvním odmítnutí vzdal. V této souvislosti připomenu, že Postgrey má k dispozici seznam serverů, ze kterých se má pošta přijímat rovnou (známé problematické servery a také různé mailové konference). Co se týká zpoždění první zprávy (timeout je nastaven na 120 sekund), pohybovalo se od času něco přes 2 minuty až po cca 30 minut (v jednom jediném případě to bylo přes 4 hodiny), s mediánem 11 minut.

Tento text píšu hlavně proto, aby se greylisting dostal do trochu většího povědomí, a aby ti, kdo o jeho nasazení uvažují, měli určité informace z praxe. Jistým problémem samozřejmě zůstává zpoždění (přece jen minuty až desítky minut mohou být docela nepříjemné), ale v ostatních ohledech se greylisting ukazuje jako bezproblémový a momentálně je velice zajímavou antispamovou metodou. Zbývá jen doufat, že jeho větší nasazení nepovede k tomu, že spammeři začnou správně pracovat s protokolem SMTP - to by byl začátek jeho konce.


UPDATE 29.7.2006: Už ani servery bývalého Contactelu nepoužívají greylisting. Zhruba před měsícem byl nahrazen ověřováním adresy odesílatele (zpětnou SMTP relací na MX pro příslušnou doménu). Jedna kontroverzní metoda byla tedy nahrazena metodou neméně kontroverzní.

       

Hodnocení: 100 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

27.7.2006 22:22 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Chvála greylistingu
Odpovědět | Sbalit | Link | Blokovat | Admin
Greylisting, podobně jako třeba neméně populární portknocking, je představitelem metod, které z principu mohou fungovat jen tehdy, když se budou používat jen zřídka a každý si bude jejich implementaci muset zbastlit na koleně. Jakmile budou k dispozici "click and go" balíčky a tyto metody se stanou mainstreamem, protistranu to dotlačí k tomu, aby se s nimi vyrovnala. Zatím jí to nestojí za to.
Luk avatar 27.7.2006 23:16 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Chvála greylistingu
Právě v souvislosti s tím mě překvapuje, že se greylisting zatím mainstreamem nestal, protože se o něm hovořilo už velice dávno a většina nejpoužívanějších SMTP serverů implementaci buď přímo obsahuje, nebo ji lze velice snadno přidat.
Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
28.7.2006 16:49 kaaja | skóre: 24 | blog: Sem tam něco | Podbořany, Praha
Rozbalit Rozbalit vše Re: Chvála greylistingu
Pokud by se protistrana byla nucena s tim vyrovnavat by to zase na druhou stranu nebylo úplně špatné. Protože pokud by spamer musel ze serveru opakovaně odesílat vrácené zprávy, stálo by ho to další kapacitu a také by to mohlo snížit objem spamu ( nebo by spameri koupili rychlejší servery a lepší konektivitu)
28.7.2006 17:14 Michal Kubeček | skóre: 72 | Luštěnice
Rozbalit Rozbalit vše Re: Chvála greylistingu
To máte samozřejmě pravdu, ale on bohužel ani ten greylisting není zadarmo - ve smyslu nároků na síťovou kapacitu a systémové zdroje. Takže by si vlastně připlatily obě strany a jediný, kdo by na tom vydělal, by patrně byli poskytovatelé konektivity a výrobci hardware. Tím samozřejmě nechci říct, že mám lepší řešení (kdybych znal skutečně efektivní a spolehlivé řešení spamu, tak mám vystaráno), jen že jsem ohledně tohoto typu problémů dost skeptický.
28.7.2006 08:56 lm
Rozbalit Rozbalit vše Re: Chvála greylistingu
Odpovědět | Sbalit | Link | Blokovat | Admin
dalsi problem sposobuju smtp clustre. velke mailove servery byvaju nastavene tak, ze ak sa na prvy krat mail nepodari dorucit, zaradi sa do fronty (queue) ale ta uz bezi na druhom servri. cize: prvy krat pride mail od jozko@maluzina.sk pre palko@maluzina.sk z ip a.b.c.d, greylist si to zapise a caka nasaveny timeout ci sa mail server opat pokusi mail dorucit. ale stane sa to, ze sice pride mail z adresy jozko@maluzina.sk pre palko@maluzina.sk ale z ip napr. a.b.c.d+1 a to moze sposobovat problemy, pretoze takyto sposobom sa odosielatel nikdy nedostane do autowhitelistu greylistu :-). toto sa da riesit napr. pre greylist-milter pre sendmail directivou "subnetmatch /24" (resp. ina rozumna hodnota) alebo rucne hladat problemove servery a robit to casto :-)

mozno to niekomu pomoze :-)
Luk avatar 28.7.2006 11:23 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Chvála greylistingu
takyto sposobom sa odosielatel nikdy nedostane do autowhitelistu greylistu
Dostat se tam může, ale bude to trvat dlouho. Což při dostatečně velkém clusteru a dostatečně malé frekvenci zpráv znamená, že se tam nedostane vůbec.

Jinak těch clusterů zase tolik není a v distribučním souboru postgrey_whitelist_clients už jsou ty známé obsaženy.

I když je samozřejmě pravda, že je to komplikace, která může někoho od nasazení greylistingu odradit.
Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
28.7.2006 11:44 lm
Rozbalit Rozbalit vše Re: Chvála greylistingu
ved prave preto som to pisal, aby som doplnil inak dost dobre a vycerpavajuco napisany popis greylisingu a mozno aj niekomu ulahcil hladanie riesenia pre tento problem.
29.7.2006 14:53 shadowmaster | skóre: 3
Rozbalit Rozbalit vše Re: Chvála greylistingu
Jojo, jen kdyby tech mailovych clusteru nebylo vic, nezli si myslis :D :D :D O par vim a vsadim se, ze ne vsechny budou zaneseny... jakakoliv vetsi infrastruktura k tomu casem nejspis taky dojde.... jeden smtp server je dost malo na globalni spolecnosti... nemyslis? ;)
Sandik: "Přítelkyni jest nutno vysvětlit, že od určité délky už vousy neškrábou, ale hladí ;o)"
Luk avatar 29.7.2006 18:47 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Chvála greylistingu
Jojo, jen kdyby tech mailovych clusteru nebylo vic, nezli si myslis
Jenže ono jich skutečně zase tak moc není (z celkového počtu mailserverů), byť tam všechny zanesené samozřejmě nejsou.
jakakoliv vetsi infrastruktura k tomu casem nejspis taky dojde.... jeden smtp server je dost malo na globalni spolecnosti... nemyslis? ;)
Nemyslím. Často se totiž objevuje opačný trend, tedy pouze jediný výstupní SMTP server a další jsou jen jako zálohy. Provoz více rovnocenných výstupních serverů nepřináší žádné výrazné výhody, nevýhod ovšem řadu. Proto i ty největší firmy volí často jiné řešení.
Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
29.7.2006 20:36 Petr
Rozbalit Rozbalit vše Re: Chvála greylistingu
Konkrétně u Postgrey, o kterém je zde řeč:

--lookup-by-subnet strip the last 8 bits from IP addresses (default)

Toliko pouze na doplnění k úplnosti.
28.7.2006 09:59 Filip Jirsák | skóre: 68 | blog: Fa & Bi
Rozbalit Rozbalit vše Re: Chvála greylistingu
Odpovědět | Sbalit | Link | Blokovat | Admin
Jen pro pořádek: Contactel jse součástí GTS Novera, nikoli Radiokomuikací…
Luk avatar 28.7.2006 11:06 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Chvála greylistingu
Ano, omlouvám se za chybu, spletl jsem si to s TELE2. Opravím to ;-)
Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly
29.7.2006 20:28 Petr
Rozbalit Rozbalit vše Re: Chvála greylistingu
Odpovědět | Sbalit | Link | Blokovat | Admin
Tak on ten server nemusel ani diletant nastavovat, takové Kerio Mail Server je také pikoška...
Luk avatar 4.8.2006 14:53 Luk | skóre: 47 | blog: Kacířské myšlenky | Kutná Hora
Rozbalit Rozbalit vše Re: Chvála greylistingu
O firmě Kerio radši ani nemluvit. Nemohu jí přijít na jméno od doby, kdy po instalaci patche do Windows zmizely z Kerio Winroute Pro (velmi draze zaplacená verze s neomezeným počtem uživatelů) poštovní aliasy. Byly uložené v registrech Windows. Kerio tehdy svalilo vinu na Microsoft, ten od toho dal ruce pryč (OEM verze Windows), dodavatel počítače to "prý" reportoval Microsoftu jako bug. Každopádně od Keria radši dále...
Šifrování je absolutní nutnost a pomáhá chránit před nekalými živly

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.