spamdyke

Skjermbilde programvare:
spamdyke
Prog.varedetaljer:
Versjon: 5.0.0
Last opp dato: 17 Feb 15
Utvikler: Sam Clippinger
Lisens: Gratis
Popularitet: 13

Rating: nan/5 (Total Votes: 0)

spamdyke er en åpen kildekode programvare skrevet i C som en drop-in filter for qmail søknad, erstatning for sendmail, designet for å gi en rekke funksjoner, blant annet grålister tilkobling-tid svartelisting, DNS RHSBL / RBL kontroll, forbedret logging, og avsender MX checking.Features på en glancespamdyke er konstruert på en slik måte at det gir TLS og SMTP AUTH til unpatched Qmail servere. Den kan brukes til å overvåke og avskjære SMTP forbindelser mellom en qmail server og en ekstern vert.
Filteret er i stand til å blokkere spam mens spammerens fremdeles er forbundet, uten å kreve noen ytterligere lagring eller prosessering. spamdyke har en rekke anti-spam-filtre, samt ulike funksjoner som vil forbedre qmail.
spamdyke inkluderer et bredt utvalg av anti-spam-filtre, organisert i fire hovedkategorier, som for eksempel revers DNS filtre, hviteliste og svarteliste filtre, graylist filtre og andre filtre som kan sees på et øyeblikk i neste section.Included anti-spam filtersAmong omvendt DNS-filtre, kan vi nevne støtte for å kreve revers DNS-navn, støtte for å kreve omvendt DNS-navn for å løse med IP-adresser, til støtte for å kreve revers DNS-navn være ekte i stedet for dynamisk tildelt, samt støtte for å kreve en gyldig MX (Mail Exchanger) for avsenderens domenenavn.
Hviteliste / svarteliste filtre inkluderer muligheten til å søke lokale IP-adresser og omvendt DNS hviteliste eller svarteliste filer, søk DNS RBLs (real-time hvitelister og svartelister), søk DNS RHSBLs (høyre-side hvitelister og svartelister), søk mottaker og avsender hviteliste eller svarteliste filer, samt å søke meldingshoder for visse typer innhold.
På den annen side vil de graylist filtre kan du grålisting visse mottaker domener, til grålisting tilkoblinger fra viss revers DNS-domener eller IP-adresser, for å hoppe gråliste for visse domener, reverse DNS-domener eller IP-adresser, og å implementere maksimums- og minimums aldre for grålisting oppføringer

Hva er nytt i denne utgaven:.

  • omorganisert testskript for å sette dem i mapper etter kategori. Dette gjør bare katalogoppføring litt mer håndterlig.
  • Korrigert noen skrivefeil i README-filen. Takk til John Mendoza for rapportering av disse.
  • Fikset en meget obskur bug i spamdyke_log (): på Linux-systemer (muligens bare 64-bits systemer), vsyslog () noen ganger vil ikke skrive ut alle de variable argumenter. En måte ble funnet å utløse dette problemet -. Når rdns-svarteliste-dir filter aktiveres fra en konfigurasjonskatalog
  • Fikset en bug i find_domain () som kan forårsake segfaults når parsing visse ugyldige formater. Takk til Gary Gendel for rapportering av denne.
  • Lagt til en backup / restore-funksjonen i & quot; kjøre & quot; script i & quot; tester & quot; mappe for å lagre en kopi av de mest kritiske system og Qmail filene før du kjører noen skript. Dette er nødvendig fordi noen av skript endre disse filene, og hvis de ikke går riktig eller blir kansellert, blir originalene tapt.
  • Lagt til en & quot; -skipcompile & quot; flagg i & quot; kjøre & quot; script i & quot; tester & quot; mappe for å hoppe konfigurere og rekompileres alle binærer når skriptet kjøres.
  • Endret & quot; kjøre & quot; script i & quot; tester & quot; mappe for å tømme qmail kø før og etter testene kjøres.
  • Endret & quot; kjøre & quot; script i & quot; tester & quot; mappe for å sammenligne dagens system og qmail konfigurasjonsfiler til den siste sikkerhetskopien etter hver manuset er ferdig. Hvis de ikke stemmer overens, er den siste sikkerhetskopien restaurert. Hvis de fortsatt ikke passer sammen, stopper manuset med en feil.
  • Endret nihdns_query () for å godta en valgfri & quot; foretrukne & quot; type respons. Hvis flere typer er spørres, vil det vente i minst ett tidsavbruddsperioden for et svar av den typen til å komme i stedet for alltid å akseptere det første svaret å ankomme. Det vil godta en lagret svar før den sender spørringene, men.
  • IKKE bakoverkompatibel: Endret nihdns_mx () ​​til å foretrekke en MX-post i løpet av en A-post, hvis begge finnes. Gitt valget, vil MX-posten kontrolleres for gyldighet og A-posten vil bli ignorert. Takk til Bruce Schreiber for å foreslå dette.
  • Fast filter_level () og smtp_filter () for å se bort fra hvitlisting og krever godkjenning dersom & quot; filter-nivå & quot; alternativet er satt til & quot; kreve-auth & quot ;, som dokumentasjonen sier det skal. Takk til Arne for rapportering av denne.
  • Endret nihdns_create_packet () for å strippe følgende punkter fra navnene før du bruker dem i DNS-spørringer. En avsluttende punktum er den tradisjonelle måten å fortelle libc sin resolver ikke å legge lokale domenenavnet og mange sysadmins forvente å måtte bruke den. Siden spamdyke aldri legger det lokale domenet og bruker ikke libc sin omformer, er det ikke nødvendig og fører til oppslag for å mislykkes. Takk til Dossy Shiobara for rapportering av denne.
  • Endret mellommann () for alltid å sende en & quot; STARTTLS & quot; respons til & quot; EHLO & quot; som en fortsettelse, aldri som den siste linjen (bare når spamdyke setter inn & quot; STARTTLS & quot;). Dette fungerer rundt en bug i Android-postklient, som bare ser for & quot; STARTTLS & quot; som en videreføring. Takk til Jonas Pasche for å skrive om hvordan å omgå denne feilen på sin blogg.
  • IKKE bakoverkompatibel: Endret betydningen av & quot; hvitelistet & quot; å bare frita tilkoblingen fra spamdyke sin spamfiltre; hvitlisting tillater ikke lenger den forbindelse å videresende e-post. Dette betyr spamdyke vil nå bare sette RELAYCLIENT miljøvariabelen hvis & quot; stafett-nivå & quot; alternativet er satt til & quot; la-alle & quot ;. Videresending må nå kontrolleres gjennom tcpserver eller xinetd. Mange takk til Eric Shubert for å foreslå og diskutere dette med meg.
  • IKKE bakoverkompatibel: Fjernet & quot; access-fil & quot; og & quot; avvisning-tekst-access-benektet & quot; alternativene fordi de var bare nødvendig for å kontrollere videresending. Også fjernet test skript som utøvde dem og modifiserte mange andre testskript som brukte dem.
  • IKKE bakoverkompatibel: Fjernet & quot; no-sjekk & quot; verdi fra & quot; stafett-nivå & quot; alternativ og endret betydningen av & quot; normal & quot; verdi å bruke logikken tidligere tildelt til & quot; no-sjekk & quot;.
  • Lagt alternativet & quot; avvise-avsender & quot; å ta flere verdier. Hvis verdien & quot; ikke-lokale & quot; er gitt, vil avsender bli avvist dersom domenenavnet ikke er vert lokalt. Hvis verdien & quot; autentisering-mismatch & quot; er gitt, vil avsender bli avvist dersom avsender adressen ikke stemmer helt brukernavn gitt under godkjenning (eller hvis autentiserings brukernavn er ikke en e-postadresse, må avsenderen brukernavn passe til godkjennings brukernavn). Hvis verdien & quot; autentisering-domene-mismatch & quot; er gitt, vil avsender bli avvist dersom domenenavnet er ikke en del av brukernavnet gitt under godkjenning. Takk til Mark Frater for å foreslå dette.
  • Lagt alternativene & quot; avvisning-tekst-avsender-ikke-lokale & quot; og & quot; avvisning-tekst-avsender-autentisering-mismatch & quot; å sette avvisning teksten gitt når & quot; avvise-avsender & quot; Options filtre er utløst.
  • IKKE bakoverkompatibel: Fjernet alternativet & quot; avvise-missing-avsender-mx & quot; og kastet sin filteret inn i & quot; avvise-avsender & quot; filter er & quot; no-mx & quot; alternativ.
  • IKKE bakoverkompatibel: Omdøpte alternativet & quot; avvisning-tekst-missing-avsender-mx & quot; til & quot; avvisning-tekst-avsender-no-mx & quot;.
  • IKKE bakoverkompatibel: Omdøpte alternativet & quot; avvise-identisk-avsender-mottaker & quot; til & quot; avvise-mottaker & quot; med verdien & quot; same-as-avsender & quot ;. Funksjonaliteten er den samme.
  • IKKE bakoverkompatibel: Omdøpte alternativet & quot; avvisning-tekst-identisk-avsender-mottaker & quot; til & quot; avvisning-tekst-mottaker-samme-som-avsender & quot;.
  • IKKE bakoverkompatibel: Omdøpte alternativet & quot; lokale-domener-fil & quot; til & quot; Qmail-rcpthosts-fil & quot ;. Navngiving har alltid vært forvirrende, siden qmail skiller mellom domener som bør aksepteres av qmail-smtpd under SMTP (rcpthosts) og domener som faktisk vert lokalt med postkassene på den lokale filsystem (lokalbefolkningen). Disse alternativene har alltid ment det tidligere, men nå som spamdyke trenger å vite både lister over domener, det er på tide å endre navn på dem. Dette alternativet er også nå tillatt i konfigurasjons kataloger.
  • IKKE bakoverkompatibel: Fjernet alternativet & quot; lokale-domener-entry & quot; fordi leverer domener som kan aksepteres under SMTP til spamdyke bare (men ikke Qmail) vil føre til inkonsistente resultater under validering mottaker. Hvis et domene er å bli akseptert i løpet av SMTP, bør det legges til kontroll filer som brukes av både spamdyke og qmail.
  • Lagd CDB søker kode i CDB [lm] for å lese DJB er & quot;. Konstant database & quot; filer under validering mottaker. Formatet på disse filene er hevdet (av DJB) å være rask og effektiv. Ikke tro på hypen ...
  • Lagt alternativet & quot; Qmail-morercpthosts-CDB & quot; å tillate CDB-filer som skal gis som inneholder lister over domener som posten skal bli akseptert i løpet av SMTP. Er det noen som faktisk bruker dette qmail & quot; funksjonen & quot;?
  • helles over qmail dokumentasjon og kildekoden for å finne ut nøyaktig hvordan det avgjør hvor du skal levere en melding. Dokumentasjonen er ofte i feil og omfattende testing var nødvendig for å finne sannheten. Den resulterende prosedyren er innkapslet i et flytskjema i mappen dokumentasjon.
  • Lagt & quot; generator & quot; program for å lage testskript for å sjekke alle mulige sti gjennom mottakeren validering flytdiagram, både med spamdyke på plass og uten (for å sjekke flytskjemaet er korrekt). Et program for å generere skriptene var nødvendig, siden det er nesten 250K mulige veier for å teste.
  • Lagt verdien & quot; ugyldig & quot; til alternativet & quot; avvise-mottaker & quot; å kontrollere om en lokal mottakeradresse finnes før du godtar en melding. Denne valideringsprosessen bruker samme logikk som qmail når du bestemmer om / hvor du skal levere et budskap, så ingen ekstra trinn for å gjøre dette arbeidet (f.eks vedlikeholde en liste over gyldige adresser i en egen fil). Hvis denne prosessen avgjør en lokal adresse er gyldig, er levering garantert. Dette alternativet bør eliminere qmail er vane med å sende backscatter spam.
  • Lagt verdien & quot; utilgjengelig & quot; til alternativet & quot; avvise-mottaker & quot; å kontrollere om en lokal mottaker er imot post i øyeblikket. Sannsynligvis som en etterlevning fra de eldre dager når folk faktisk redigert .qmail filer for hånd, Qmail sjekker fil tillatelser på filer og mapper før du leverer en melding. Hvis de er satt til visse verdier, vil qmail kø meldingen inntil tillatelsene er fast eller sprette meldingen hvis settes i kø for lenge. I disse opplyste tider, slike tillatelser er mer sannsynlig å være på grunn av en feil eller forglemmelse enn forsett.
  • Lagt alternativene & quot; qmail-assign-CDB & quot ;, & quot; qmail-defaultdelivery-fil & quot ;, & quot; qmail-envnoathost-fil & quot ;, & quot; Qmail-locals-fil & quot ;, & quot; qmail-meg-fil & quot; & quot; qmail-percenthack-fil & quot; og & quot; Qmail-virtualdomains-fil & quot; å tillate spamdyke å bruke forskjellige kontroll filer enn qmail. Det er veldig lite sannsynlig at noen noensinne vil trenge disse alternativene (og det ville være uklokt å bruke dem), men de er tilgjengelig bare i tilfelle.
  • Lagt alternativet & quot; avvisning-tekst-mottaker-ugyldig & quot; å sette avvisning tekst når & quot; ugyldig & quot; filtrere på & quot; avvise-mottaker & quot; utløses.
  • Lagt alternativet & quot; avvisning-tekst-mottaker-utilgjengelig & quot; å sette avvisning tekst når & quot; utilgjengelig & quot; filtrere på & quot; avvise-mottaker & quot; utløses.
  • Fjernet funksjonen filter_recipient_local () og flyttet sin logikk inn filter_recipient_valid ().
  • Fjernet funksjonen filter_recipient_relay () og flyttet sin logikk inn filter_recipient_valid ().
  • Endret & quot; hjelp & quot; muligheten til å bare vise en liste over tilgjengelige alternativer uten hjelpeteksten.
  • Lagt & quot; mer-help & quot; muligheten til å vise den fulle oversikt over alternativer med alle hjelpeteksten.
  • Lagt alternativene & quot; ip-stafett-entry & quot ;, & quot; ip-stafett-fil & quot ;, & quot; rdns-stafett-entry & quot; og & quot; rdns-stafett-fil & quot; å tillate videresending fra bestemte IP-adresser og / eller rDNS navn, siden hvitliste ikke lenger innebærer evnen til å formidle. Hvis noen av disse alternativene er tilpasset, vil den RELAYCLIENT variabelen settes før qmail starter.
  • Laget & quot; create_cdb & quot; program for å generere CDB filer av vilkårlig størrelse, fylt med tilfeldige data, for testing spamdyke sin CDB valideringsrutiner. create_cdb har også evnen til å ødelegge den genererte CDB på syv måter; dette gir mer spesifikk testing enn å bare bruke en fil av tilfeldig søppel.
  • Fjernet all bruk av TESTSD_ * miljøvariabler fra testskript, og erstattet dem med hensiktsmessige besvergelser av dnsdummy. Dette gjør at testskript for å kjøre uten eventuelle forstyrrelser fra eksterne DNS-endringer og uten en løpende spamdyke server for å finne eksempelverdier.
  • Fast smtp_filter () og mellommann () for å slette listen over lagrede mottakeradressene etter utskrift loggmeldinger. Dette hindrer dupliserte loggmeldinger når flere e-postmeldinger blir levert i samme forbindelse. Takk til Teodor Milkov og David Davidov for rapportering av denne.
  • Lagt & quot; -skippatched & quot; og & quot; -skipunpatched & quot; flagg til & quot; kjøre & quot; skript for å hoppe over noen tester som krever en lappet eller oppdaterte versjonen av qmail, henholdsvis.
  • Fikset en mindre feil i find_username () som ville avkorte siste tegnet i brukernavnet når ingen domenet er gitt. Dette har ikke vært et problem siden spamdyke avviser mottakeradressene uten domenenavn uansett, men en av validerings mottaker testskript fant den.
  • Lagt alternativet & quot; tls-dhparams-fil & quot; muligheten til å lese DH params fra en fil for å skape flyktige taster under SSL / TLS nøkkelforhandling. Takk til Marc Gregel for å foreslå dette.
  • Endret alle feilmeldinger til utgang filnavnet, funksjon navn og linjenummer som genererte dem, akkurat som debug og overdreven meldinger.
  • Lagt til en ny loggnivået, LOG_LEVEL_CONFIG_TEST, for config-test feilmeldinger. Nivået er behandlet mye det samme som LOG_LEVEL_ERROR unntatt filnavn, funksjon navn og linjenummer ikke er skrevet ut.
  • Lagt til en ny avgjørelse nivå, FILTER_DECISION_AUTHENTICATED for godkjente tilkoblinger. Filter rutiner bruke dette nivået å skille mellom tilkoblinger som bør være ufiltrert grunn autentisering versus hvitlisting.
  • Lagt til en ny config alternativ Type: CONFIG_TYPE_ALIAS. Valg av denne typen er aliaser for andre alternativer. Dette eliminerer dobbeltarbeid verdier og potensiale for forglemmelser i graylist / grålisting alternativer.
  • lagt noen kode til & quot; kjøre & quot; script i & quot; tester & quot; katalog for å prøve å oppdage kjerne dumper. Noen av testene vil erklære suksess selv om spamdyke segfaults og kutter produksjonen for tidlig.
  • Fjernet ubrukte funksjoner reset_rejection () og skip_cfws ().
  • Oppdaget spamdyke kan ikke lese alle filene den trenger for validering mottakeren under normal drift fordi de er eid av forskjellige brukere med restriktive tillatelser og spamdyke ikke kjører som root. Jeg er ikke sikker på hvordan jeg savnet det, men det er helt Moots mer enn ett års arbeid.
  • Flyttet all mottakeren valiation kode i et eksternt program som heter & quot; spamdyke-QRV & quot ;. Dette programmet er ment å bare utføre validering mottaker og ingenting annet, så det burde være trygt å kjøre som root (minst tryggere enn å kjøre spamdyke som root).
  • Fjernet alternativene & quot; qmail-assign-CDB & quot ;, & quot; qmail-defaultdelivery-fil & quot ;, & quot; qmail-envnoathost-fil & quot ;, & quot; Qmail-locals-fil & quot ;, & quot; qmail-meg-fil & quot; og & quot; qmail-percenthack-fil & quot; fra spamdyke, siden validering mottakerkoden er borte.
  • Lagt alternativet & quot; mottaker-validering-kommando & quot; for bestått banen til spamdyke-QRV, som vil bli kalt når validering mottaker er nødvendig.

Hva er nytt i versjon 4.3.1:

  • Denne utgivelsen løser et par behandlings bugs i ny header svarteliste filter og et brudd på tilgangs som kan føre til krasj.
  • Overskriften svarteliste bør er trygt å gjøre det mulig nå.

Hva er nytt i versjon 4.3.0:

  • Det gir muligheten til å filtrere meldinger basert på Innholdet i sine overskrifter. Det fikser noen små bugs, en kompileringsfeil på Debian 7 og en stor serie med feil som kan resultere i buffer overflow (muligens utnyttes eksternt, avhengig av konfigurasjonsmuligheter). Vennligst oppgrader umiddelbart!

Hva er nytt i versjon 4.2.0:

  • Endret read_file () for å returnere antall bruk linjene lese, i stedet for det totale antall linjer (inkludert kommentarer og mellomrom).
  • Fikset en enorm thinko i mange samtaler til read_file () - når funksjonen returnerer 0, er NULL den returnerte verdien. Dette var årsaken spamdyke å krasje når ingen innhold ble lest fra filer av & quot; dns-svarteliste-fil & quot ;, & quot; dns-whitelist-fil & quot ;, & quot; rhs-svarteliste-fil & quot ;, & quot; rhs-whitelist-fil & quot; og & quot; hostname-fil & quot ;. Takk til David Stiller for rapportering av dette og gir mye hjelp i å spore det ned.
  • Lagt alternativet & quot; tls-chiffer-liste & quot; for å spesifisere listen over koder som skal brukes i SSL / TLS-tilkoblinger. Dette vil ikke være et alternativ mange mennesker noen gang vil bruke, men i bestemte oppsett er det nødvendig. Takk til Chris Boulton for antydet at dette og produsere en patch for å gjennomføre det.
  • Lagt til en ny verdi til & quot; tls-nivå & quot ;: & quot; smtp-no-gjennompassering & quot; å tillate spamdyke å tilby TLS men hindre den fra å passere TLS gjennom å qmail hvis SSL-biblioteket ikke kan bli initialisert for noen grunn.
  • Fikset en bug i smtp_filter som tillot åpen videresending når spamdyke ble konfigurert med & quot; lokale-domener-entry & quot; i stedet for & quot; lokale-domener-fil & quot;.
  • Flyttet kode fra do_spamdyke () som set standard inn og standard stikkontakter til ikke-blokkerende inn tls_read () og tls_write () i stedet. Innstilling av soklene til ikke-blokkerende gjennom hele løp var årsaken noen merkelig oppførsel der logging ville stoppe etter en rekke store innganger.
  • Refactored adresse parser (nok en gang) for å fikse en feil som ikke var håndtering ruting adresser ordentlig. Takk til Chris Boulton for rapportering av denne.
  • Fast process_config_file () for å ikke tilbakestille en & quot; flere & quot; verdien til standard hvis det var bevisst ryddet under konfigurasjonen.
  • Faste prepare_settings () for å tilbakestille alle standardverdier før behandlingen kommandolinjen eller konfigurasjonsfilene så en & quot; flere & quot; Verdien kan være ryddet i løpet av konfigurasjon.
  • Fast configure.ac å bruke en gcc #pragma kommando for å behandle format advarsler som feil i stedet for å stole på AC_LANG_WERROR (som ikke alltid fungerer).
  • Lagt alternativene & quot; dns-query-type-en & quot ;, & quot; dns-query-type-mx & quot ;, & quot; dns-query-type-ptr & quot; og & quot; dns-query-type-RBL & quot; å begrense hvilke typer DNS-spørringer som kan sendes til ulike formål. Takk til Teodor Milkov for å foreslå dette.
  • Fikset en bug som forårsaket en timeout når en post-RCPT filter utløses på en ikke-lokal adresse. spamdyke er ment å lukke tilkoblingen til qmail og vente på sin exit, men i stedet ble bare venter på sin exit, som fører til unødvendige tidsavbrudd. Takk til Ulrich C. Manns for rapportering av denne.
  • Fikset en skrivefeil i policy.php.example. Takk til Richard Lamse for rapportering av denne.
  • Faste kompilatoradvarsler på Fedora 11. Takk til Ertan Orhan for rapportering av denne.
  • Fikset en bug i sendrecv hvor en initialisert variabel var årsaken feilaktige boder og tidsavbrudd i CentOS 5.5.

Hva er nytt i versjon 4.1.0:

  • Flere feilrettinger, inkludert en TLS / SSL problemet som kan forårsake spamdyke å henge alltid. Noen nye funksjoner, inkludert avvise meldinger når avsender og mottaker-adresser er de samme.

Hva er nytt i versjon 4.0.10:

  • En bug i Plesk 9 som setter den eksterne IP adresse til et navn i stedet for en IP-adresse ble jobbet rundt.

Hva er nytt i versjon 4.0.9:

  • Denne utgivelsen retter en feil i adresse parser som hindret noen avsender / mottaker svarteliste / hvitelisteoppføringer fra matche.
  • Det løser også en feil i konfigurasjonen testing funksjon som var ute av stand til å finne den spamdyke binære hvis det var utenfor den gjeldende katalogen.

Hva er nytt i versjon 4.0.8:

  • En midlertidig løsning ble lagt for en design feil i DJB s multilog som kan føre til ødelagte loggmeldinger når serveren er under belastning.

Hva er nytt i versjon 4.0.6:

  • Nøkkelord for IP-in-rDNS filter er nå riktig avsluttet slik at de kan bli matchet.
  • AUTH reklame fra en lappet qmail er nå helt fjernet når den & quot; smtp-auth-nivå & quot; alternativet er & quot; alltid & quot; eller & quot; alltid-kryptert & quot;.
  • Navnet på den matchende RBL / RHSBL er nå logget når flere RBLs / RHSBLs brukes i stedet for alltid å logge den første.
  • Slow eksterne servere blir nå håndtert høflig så spamdyke ikke vil forbruke 100% CPU.
  • Bruke full logging-funksjonen med en & quot; log-nivå & quot; alternativet er satt til & quot; overdreven & quot; ikke lenger sender logge utgang til den eksterne serveren når spamdyke brukes på Plesk servere.

Krav :

  • qmail

Lignende programvare

Dada Mail
Dada Mail

26 Apr 16

Python Replybot
Python Replybot

2 Jun 15

qmqtool
qmqtool

2 Jun 15

inbox
inbox

14 Apr 15

Annen programvare fra utvikleren Sam Clippinger

Calendar
Calendar

2 Jun 15

Kommentarer til spamdyke

Kommentarer ikke funnet
Legg til kommentar
Slå på bilder!