Spamdyke je open source software napsaný v C jako drop-in filtr pro aplikaci qmail, náhrada za sendmail, jejichž cílem je poskytnout řadu funkcí, včetně graylisting, připojení čase černých listin, kontrola DNS RHSBL / RBL, lepší protokolování a odesílatel MX checking.Features na jeden glancespamdyke byl navržen takovým způsobem, že poskytuje TLS a SMTP AUTH na neopravených qmail servery. Může být použit k monitorování a zachytit SMTP spojení mezi serverem a qmail vzdáleného hostitele.
Filtr je schopen blokovat spam, když spammer je stále připojen, bez nutnosti jakékoli další skladování či zpracování. Spamdyke nabízí řadu anti-spamové filtry, stejně jako různé funkce, které zvýší qmail.
Spamdyke zahrnuje širokou škálu anti-spamové filtry, organizované ve čtyřech hlavních kategoriích, jako je například reverzních DNS filtry, whitelist a blacklist filtry, graylist filtrů a dalších filtrů, které lze prohlížet na první pohled v příštím section.Included anti-spam filtersAmong zpětné filtry DNS, můžeme zmínit podporu požadovat zpětné názvy DNS, podpora vyžaduje zpětné názvy DNS vyřešit s IP adresami, podpora pro vyžadování zpětné jmen DNS být skutečné místo dynamicky přidělen, stejně jako podporu pro vyžadování platný MX (Mail Exchanger) pro název domény odesílatele.
Whitelist / blacklist filtry patří možnost vyhledávat lokální IP adresy a vzad DNS seznamy povolených a zakázaných souborů, vyhledávání DNS RBLS (real-time bode a blacklistů), vyhledávání DNS RHSBLs (pravém straně bode a blacklistů), hledání příjemce a odesílatele whitelist nebo černou listinu souborů, jakož i k hledání záhlaví zpráv pro určitého obsahu.
Na druhou stranu, bude graylist filtry umožňují greylist určité domény příjemce, greylist spojení z některých reverzní DNS domény nebo IP adresy, přeskočit greylisting pro konkrétní domény, reverzní DNS domény nebo IP adresy, a realizovat maximální a minimální stáří pro greylist záznamů
Co je nového v této verzi:.
- Upravený testovací skripty, aby jim do složek podle kategorií. To jen dělá výpis adresáře trochu lépe zvládnutelné.
- opraveny některé překlepy v souboru README. Díky John Mendoza pro podávání zpráv ty.
- Opravena velmi obskurní chybu v spamdyke_log (): na linuxových systémech (možná jen 64-bitové systémy), vsyslog (), občas se nevytiskne všechny variabilní argumenty. Jeden způsob, jak bylo zjištěno, že spuštění tohoto chování. - Je-li rDNS-blacklist-dir filtr aktivován z adresáře konfigurace
- Opravena chyba v find_domain (), která by mohla způsobit segfault chyb při analýze některých neplatné formátů. Díky Gary Gendel za nahlášení jeden.
- Přidáno zálohování / obnovení funkce na & quot; Run & quot; skript v & quot; zkoušek & quot; složku pro uložení kopie nejkritičtější systému a qmail soubory před spuštěním skriptů. To je nutné, protože některé z těchto skriptů měnit tyto soubory, a v případě, že neběží správně, nebo se zruší, originály jsou ztraceny.
- Přidáno & quot; -skipcompile & quot; příznak & quot; běh & quot; skript v & quot; zkoušek & quot; Složka přeskočit rekonfiguraci a recompiling všechny binární soubory při spuštění skriptu.
- Změnil & quot; běh & quot; skript v & quot; zkoušek & quot; složku vyprázdnit qmailu fronty před a po testy spustit.
- Změnil & quot; běh & quot; skript v & quot; zkoušek & quot; Složka porovnat současný systém a konfigurační soubory qmail podle poslední zálohy po každém dokončení skriptu. Pokud se neshodují, poslední záloha je obnovena. Pokud stále neshodují, skript zastaví s chybou.
- Změnil nihdns_query () přijímat volitelný & quot; přednostní & quot; typ reakce. Je-li více typů jsou dotazovány, bude čekat po dobu nejméně jednoho časového limitu na odpověď tohoto typu, aby se dospělo, místo vždy přijetí první odpověď, aby se dospělo. Před přeposílání dotazů, ale to bude akceptovat uložený odpověď.
- NOT zpětně kompatibilní: Změnil nihdns_mx () a preferovat MX záznam přes rekordní, pokud jsou obě. Vzhledem k tomu, volba, bude záznam MX má sloužit k ověření platnosti a záznam bude ignorován. Díky Bruce Schreiber o naznačuje tohle.
- Pevná filter_level () a smtp_filter () ignorovat Whitelisting a vyžadují ověření, zda & quot; filter-level & quot; je nastavena na & quot; vyžadují-auth-quot ;, jak říká dokumentace by měla. Díky Arne za nahlášení jeden.
- Změnil nihdns_create_packet (), aby se svlékli koncové tečky z názvů před jejich použitím v DNS dotazy. Koncovou tečku je tradiční způsob, jak říct libc se resolver ne připojit místní název domény a mnoho administrátoři očekávat, že ji používat. Vzhledem k tomu, Spamdyke nikdy připojí lokální doménu a nevyužívá libc je resolver, to není nutné, a způsobí, že Vyhledávání v selhání. Díky Dossy Shiobara za nahlášení jeden.
- Změnil prostředník () vždy poslat & quot; STARTTLS & quot; odpověď na & quot; EHLO & quot; jako pokračování, nikdy jako poslední řádek (pouze v případě, Spamdyke je vkládání & quot; STARTTLS & quot;). To funguje kolem chyby v Android e-mailového klienta, který se dívá jen na & quot; STARTTLS & quot; jako pokračování. Díky Jonas Pasche pro psaní o tom, jak vyřešit tuto chybu na svém blogu.
- NOT zpětně kompatibilní: Změnil význam & quot; bílé listině & quot; pouze osvobodit připojení z spamové filtry Spamdyke je; whitelisting již umožňuje připojení k předávání pošty. To znamená, že Spamdyke nyní pouze nastavit proměnnou RELAYCLIENT prostředí v případě, že & quot; relay-level & quot; je nastavena na & quot; umožňují-all-quot ;. Přeložka se nyní musí řídit pomocí tcpserver nebo xinetd. Děkuji Eric Shuberta pro navrhovat a diskutovat o tomto se mnou.
- NOT zpětně kompatibilní: Odstraněno & quot; access-file & quot; a & quot; odmítnutí-text-access-denied & quot; Možnosti protože byly potřeba pouze pro ovládání přeložky. Také odstranili testovací skripty, které je nad ním vykonává a modifikované mnoho dalších testovací skripty, které je používají.
- NOT zpětně kompatibilní: Odstraněno & quot; no kontrola & quot; hodnota z & quot; relé úrovni & quot; možnost a změnil význam & quot; normální & quot; Hodnota použít logiku dříve přiřazenou & quot; ne-Check & quot;.
- Přidána možnost & quot; odmítnout, odesílatele & quot; aby se více hodnot. Je-li hodnota & quot; není-local & quot; je dána, bude odesílatel být zamítnuta, pokud je název domény není umístěn na místě. Je-li hodnota & quot; ověřování nesouladu mezi & quot; je dána, bude odesílatel být zamítnut, pokud adresa odesílatele přesně neodpovídá uživatelské jméno daného při ověřování (nebo v případě, že uživatelské jméno ověřování není e-mailová adresa, musí být uživatelské jméno odesílatele odpovídala jméno ověřování). Je-li hodnota & quot; authentication-domain-nesouladu & quot; je dána, bude odesílatel být zamítnuta, pokud je název domény není součástí uživatelského jména, během ověřování. Díky Mark Frater za naznačuje tohle.
- Přidána možnosti & quot; odmítnutí-text-sender-ne-místní & quot; a & quot; odmítnutí-text-odesílatele ověřování Neshoda & quot; Nastavení textu odmítnutí vzhledem kdy & quot; odmítnout, odesílatel & quot; filtry volba jsou spuštěna.
- NOT zpětně kompatibilní: Odstraněna možnost & quot; odmítnout, chybějící-odesílatele-MX & quot; a složil svůj filtr na & quot; Odmítnout odesílatelem & quot; Filtr je & quot; no-mx & quot; možnost.
- NOT zpětně kompatibilní: přejmenovaný na možnost & quot; odmítnutí-text-chybějící-sender-mx & quot; na & quot; odmítnutí-text-odesílatele-no-MX & quot;.
- NOT zpětně kompatibilní: přejmenovaný na možnost & quot; odmítnout identické-odesílatele příjemci & quot; na & quot; odmítnout-příjemce & quot; s hodnotou & quot; stejný-as-odesílatele & quot ;. Funkce zůstává stejná.
- NOT zpětně kompatibilní: přejmenovaný na možnost & quot; odmítnutí-text-identické-odesílatele příjemce & quot; na & quot; odmítnutí-text-příjemce-same-as-odesílatele & quot;.
- NOT zpětně kompatibilní: přejmenovaný na možnost & quot; místní domény-soubor & quot; na & quot; qmail-rcpthosts-soubor & quot ;. Jmenovat byl vždy matoucí, protože qmail rozlišuje mezi doménami, které by měly být přijaty qmail-smtpd během SMTP (rcpthosts) a domén, které jsou skutečně hostitelem lokálně poštovních schránek na místním souborovém systému (hospůdkami). Tyto možnosti byly vždy znamenal bývalý, ale teď, když Spamdyke potřebuje znát oba seznamy domén, je na čase, aby je přejmenovat. Tato volba je nyní také povolena v konfiguračních adresářích.
- NOT zpětně kompatibilní: Odstraněna možnost & quot; místní domény-Entry & quot; protože dodávají domény, které mohou být přijaty v průběhu SMTP pouze Spamdyke (ale ne qmail) způsobí nekonzistentní výsledky během ověřování příjemce. Je-li doména být přijat v průběhu SMTP, je třeba dodat na kontrolní souborů používaných jak Spamdyke i qmail.
- Added CDB vyhledávání kódu v CDB [ch] číst DJB je & quot;. Konstantní databázi & quot; Soubory během validace příjemce. Formát těchto souborů je požadována (o DJB), být rychlý a efektivní. Nevěřte humbuk ...
- Přidána možnost & quot; qmail-morercpthosts-cdb & quot; aby CDB soubory které mají být poskytnuty, které obsahují seznamy domén, pro které by měly být přijaty v průběhu pošta SMTP. Má někdo skutečně používat tento qmail & quot; funkce & quot;?
- nalije do dokumentace systému qmail a zdrojového kódu přesně zjistit, jak to určuje, kam doručit zprávu. Dokumentace je často omylem a rozsáhlé testování bylo zapotřebí odhalit pravdu. Výsledný postup je zapouzdřen v diagramu ve složce dokumentace.
- Přidána & quot; generátor & quot; Program vytvořit testovací skripty zkontrolovat všechny možné cesty přes validační diagramu příjemce, a to jak s Spamdyke na místě a bez (pro kontrolu diagram je správná). Byl vyžadován program pro generování skriptů, protože tam jsou skoro 250K možných cest k vyzkoušení.
- z přidané hodnoty, & quot; neplatnou & quot; na možnost & quot; odmítnout-příjemce & quot; zkontrolovat, zda existuje místní adresa příjemce před přijetím zprávy. Tento proces ověření používá stejnou logiku jako qmail při rozhodování, zda / kam doručit zprávu, takže nejsou nutné žádné další kroky, aby to fungovalo (např udržování seznamu platných adres v samostatném souboru). Pokud tento proces určuje místní adresa je platná, doručení je zaručena. Tato možnost by měla eliminovat qmailu zvyk posílání spamu zpětného rozptylu.
- z přidané hodnoty, & quot; nedostupné & quot; na možnost & quot; odmítnout-příjemce & quot; zkontrolovat, zda místní příjemce přijímá poštu v tuto chvíli. Pravděpodobně jako pozůstatek ze starších dob, kdy lidé skutečně spustí .qmail soubory ručně, qmail kontroluje soubor oprávnění k souborům a složkám před vydáním zprávy. Pokud jsou nastaveny na určité hodnoty, bude qmail fronty zprávy, dokud jsou oprávnění pevné nebo odrazit zprávu, pokud je ve frontě příliš dlouho. V těchto osvícených časech, takové oprávnění jsou více pravděpodobné, že bude kvůli chybě nebo dohled, než úmyslem.
- Přidána možnosti & quot; qmail-assign-CDB-quot ;, & quot; qmail-defaultdelivery-soubor & quot ;, & quot; qmail-envnoathost-soubor & quot ;, & quot; qmail-místní-soubor & quot ;, & quot; qmail-me-file & quot; , & quot; qmail-percenthack-file & quot; a & quot; qmail-virtualdomains-file & quot; aby Spamdyke používat různé kontrolní soubory než qmail. Je velmi nepravděpodobné, že někdo bude někdy potřebovat tyto možnosti (a to by nebylo moudré, aby jejich použití), ale jsou k dispozici jen v případě.
- Přidána možnost & quot; odmítnutí-text-příjemce-invalid & quot; nastavení textu, odmítnutí, kdy & quot; neplatný & quot; filtr na & quot; odmítnout-příjemce & quot; je spuštěna.
- Přidána možnost & quot; odmítnutí-text-příjemce, k dispozici & quot; nastavení textu, odmítnutí, kdy & quot; k dispozici & quot; filtr na & quot; odmítnout-příjemce & quot; je spuštěna.
- Odstraněna funkce filter_recipient_local () a přestěhoval se svou logiku do filter_recipient_valid ().
- Odstraněna funkce filter_recipient_relay () a přestěhoval se svou logiku do filter_recipient_valid ().
- Změnil & quot; pomoc & quot; možnost jen ukázat výpis dostupných možností, aniž by nápovědou.
- Přidána & quot; více-help & quot; možnost ukázat úplný seznam možností se všemi nápovědou.
- Přidána možnosti & quot; ip-relay-entry a quot ;, & quot; ip-relay-soubor & quot ;, & quot; rDNS-relay-entry & quot; a & quot; rDNS-relay-file & quot; umožnit předávání z konkrétních IP adres a / nebo rDNS jmény, od whitelisting již znamená schopnost relé. Pokud se některý z těchto možností je uzavřeno, bude proměnná RELAYCLIENT být nastavena před zahájením qmail.
- Vytvořil & quot; create_cdb & quot; Program pro generování CDB soubory libovolné velikosti, která je plná náhodnými daty, pro CDB validační rutiny zkušebny Spamdyke je. create_cdb má také schopnost k poškození vytvořeného CDB v sedmi způsoby; to je konkrétnější testování než jednoduše pomocí souboru náhodných odpadků.
- odstranili všechna použití v TESTSD_ * proměnné prostředí z testovacích skriptů a nahradil je vhodnými vyvolání dnsdummy. To umožňuje testovací skripty spustit, aniž by potenciální rušení z vnější změny DNS a bez potřeby běžící Spamdyke serveru najít příklady hodnot.
- Pevná smtp_filter () a zprostředkování (), vymazat seznam uložených adres příjemců po vytištění zprávy protokolu. Tím se zabrání duplicitní zprávy protokolu, jsou-li více e-mailových zpráv doručeny ve stejném připojení. Díky Teodor Milkova a David Davidova za nahlášení jeden.
- Přidáno & quot; -skippatched & quot; a & quot; -skipunpatched & quot; vlajky na & quot; běhu & quot; skripty přeskočit všechny testy, které vyžadují opravenou nebo unpatched verzi qmailu, resp.
- Opravena drobná chyba v find_username (), která by se zkrátit poslední znak uživatelské jméno, pokud není doména uveden. To nebyl problém, protože Spamdyke odmítá adresy příjemců bez doménových jmen stejně, ale jeden z testovacích skriptů ověřovacích příjemce ji našel.
- Přidána možnost & quot; TLS dhparams-soubor & quot; možnost číst DH params ze souboru pro vytváření prchavé klíčů při vyjednávání klíčovou SSL / TLS. Díky Marc Gregel pro naznačuje tohle.
- Změnil všechny chybové zprávy výstup název souboru, název funkce a číslo řádku, který je generován, stejně jako ladění a nadměrných zpráv.
- Přidána nová úroveň protokolu, LOG_LEVEL_CONFIG_TEST, chybové zprávy config-testů. Hladina se zpracovává podobně jako LOG_LEVEL_ERROR kromě čísla názvů souborů, název funkce a linky se nevytiskne.
- Přidány nové úrovně rozhodování, FILTER_DECISION_AUTHENTICATED pro ověřené připojení. Filtrační rutiny používání této úrovně rozlišit spojení, které by měly být nefiltrované kvůli ověření proti whitelisting.
- Přidán nový typ volby config: CONFIG_TYPE_ALIAS. Možnosti tohoto typu jsou aliasy pro další možnosti. To eliminuje překrývání hodnot a potenciál pro přehlédnutím v graylist / greylist možností.
- přidal kód & quot; běh & quot; skript v & quot; zkoušek & quot; adresář, aby se pokusili zjistit základní výpisy. Některé z testů bude deklarovat úspěch, i když Spamdyke segfault chyb a uřízne výstup předčasně.
- Odstraněna nevyužité funkce reset_rejection () a skip_cfws ().
- Zjistil Spamdyke neumí číst všechny soubory, které potřebuje k ověření příjemcem během normálního provozu, protože jsou ve vlastnictví jednotlivých uživatelů s restriktivní oprávnění a Spamdyke není spuštěn jako root. Nejsem si jistý, jak jsem vynechal, ale je zcela moots více než rok práce.
- přeřazen všechny příjemce valiation kód do externího programu s názvem & quot; Spamdyke-QRV & quot ;. Tento program je určen k provádění pouze ověření a nic jiného příjemce, tak to by mělo být bezpečné spustit jako root (alespoň bezpečnější než běh Spamdyke jako root).
- Odebráno možnosti & quot; qmail-assign-CDB-quot ;, & quot; qmail-defaultdelivery-soubor & quot ;, & quot; qmail-envnoathost-soubor & quot ;, & quot; qmail-místní-soubor & quot ;, & quot; qmail-me-file & quot; a & quot; qmail-percenthack-file & quot; z Spamdyke, protože ověření příjemce kód je pryč.
- Přidána možnost & quot; příjemce-validation-Command & quot; pro absolvování cesty k Spamdyke-QRV, který se bude jmenovat, kdy je potřeba potvrzení příjemce.
Co je nového ve verzi 4.3.1:
- Tato verze opravuje několik chyb zpracování v nové záhlaví blacklist filtr a narušení přístupu, který může vést ke zhroucení.
- Černá listina záhlaví by je bezpečné nyní povolit.
Co je nového ve verzi 4.3.0:
- Přidává možnost filtrovat zprávy na základě obsah jejich hlaviček. To opravuje některé drobné chyby, chybu kompilace na Debianu 7 a hlavní řadu chyb, které by mohly vést k přetečení zásobníku (možná vzdáleně zneužít, v závislosti na možnostech konfigurace). Aktualizujte prosím ihned!
Co je nového ve verzi 4.2.0:
- Změnil read_file () vrátit počtu použitelné linky číst, místo z celkového počtu řádků (včetně komentářů a mezery).
- Pevná obrovský thinko v mnoha výzvách k read_file () - pokud je funkce vrátí 0, vrácená hodnota je NULL. To bylo příčinou Spamdyke se zhroutí, když žádný obsah přečetl z souborů & quot; dns-blacklist-soubor & quot ;, & quot; dns-whitelist-soubor & quot ;, & quot; RHS-blacklist-soubor & quot ;, & quot; RHS-whitelist-file & quot; a & quot; hostname-soubor & quot ;. Díky David Stiller za nahlášení jednoho a poskytuje hodně pomoci při pátrání ho.
- Přidána možnost & quot; TLS číselných seznamu & quot; pro specifikaci seznamu šifer pro použití v SSL / TLS spojení. To nebude možnost mnoho lidí vůbec používat, ale v konkrétních sestavách je vyžadován. Díky Chris Boulton na navrhovat tento jeden a produkovat náplast k jeho provedení.
- Přidán nový hodnotu & quot; TLS-level & quot ;: & quot; smtp-no-passthrough & quot; aby Spamdyke nabízet TLS, ale zabránit tomu, aby průchodu TLS až qmail-li SSL knihovny nelze inicializovat z nějakého důvodu.
- Opravena chyba v smtp_filter, který umožnil otevřít přeložky při Spamdyke byl nakonfigurován s & quot; lokálních domén-Entry & quot; místo & quot; místní domény-file & quot;.
- přesunuta kód z do_spamdyke (), která set stdin a stdout dutinky neblokované do tls_read () a tls_write () místo. Nastavení zásuvky na non-blocking celý běh způsobovalo nějaké divné chování tam, kde by se záznam zastaví po sérii velkých vstupů.
- refactored adresu analyzátor (opět) a opravit chybu, která nebyla řádně manipulační směrování adresy. Díky Chris Boulton za nahlášení jeden.
- Pevná process_config_file () a ne obnovit & quot; násobek & quot; hodnota default, pokud to bylo úmyslně vymazán během konfigurace.
- Pevné prepare_settings () inicializovat všechny výchozí hodnoty před zpracováním příkazového řádku nebo konfigurační soubory tak, & quot; více & quot; hodnota může být vymazány během konfigurace.
- Pevná configure.ac použít gcc příkaz #pragma k léčbě formátu upozornění jako chyby, místo spoléhání se na AC_LANG_WERROR (což nemusí vždy fungovat).
- Přidána možnosti & quot; dns-query-typ-quot ;, & quot; dns-query-type-mx-quot ;, & quot; dns-query-type-ptr & quot; a & quot; dns-query-type-rbl & quot; omezit typy DNS dotazů, které mohou být zaslány k různým účelům. Díky Teodor Milkova na naznačuje tohle.
- Opravena chyba, která způsobila prodlevu při každém post-RCPT filtr spuštěno na jiné místní adresu. Spamdyke má ukončit připojení k qmail a čekat na jeho výstupu, ale místo toho se jen čeká na jeho výstupu, což vede ke zbytečným časové limity. Díky Ulrich C. Manns za nahlášení jeden.
- Opraven překlep v policy.php.example. Díky Richard Lamse za nahlášení jeden.
- Pevné překladač varování na Fedoře 11. Díky Ertan Orhan pro podávání zpráv o tohle.
- Opravena chyba v sendrecv, kde byl neinicializovaná proměnná způsobuje chybné stánky a časové limity na CentOS 5.5.
Co je nového ve verzi 4.1.0:
- Několik oprav chyb, včetně TLS / SSL vydání která může způsobit Spamdyke viset navždy. Některé nové funkce, včetně odmítnutí zprávy, pokud příjemce a odesílatele adresy jsou stejné.
Co je nového ve verzi 4.0.10:
- chyba v Plesk 9, který nastaví vzdálený IP adresa, jméno, místo jedné IP adresy se obejít.
Co je nového ve verzi 4.0.9:
- Tato verze opravuje chybu v adresním analyzátor se brání některé odesílatele / příjemce černé listiny / whitelistu záznamy z odpovídající.
- se také opravuje chybu v testovací konfigurace vlastností, která byla schopna najít Spamdyke binární, jestli to bylo před aktuálním adresáři.
Co je nového ve verzi 4.0.8:
- řešení byla přidána k návrhu chyby ve DJB je multilog který může způsobit poškozené zprávy protokolu, kdy je server pod zatížením.
Co je nového ve verzi 4.0.6:
- Klíčová slova pro filtr IP-in-rDNS jsou nyní správně ukončena, takže mohou být uzavřeno.
- AUTH reklamy z opravenou qmail jsou nyní zcela odstraněny, když & quot; smtp-auth-level & quot; možnost & quot; vždy & quot; nebo & quot; vždy šifrována & quot;.
- Název odpovídající RBL / RHSBL je nyní přihlášen při více RBLS / RHSBLs se používají místo vždy přihlašování první.
- Pomalé vzdálené servery se nyní zachází slušně, takže Spamdyke nebude konzumovat 100% CPU.
- Při použití plné protokolování funkci s & quot; log-úrovni & quot; nastavena na & quot; nadměrná & quot; již vysílá v logu na vzdálený server, když je Spamdyke používán na serverech Plesk.
Požadavky na :
- qmail
Komentáře nebyl nalezen