Hoe je milter-greylist-blokkering in Sendmail instelt
Vrijwel alle linux-distributies bevatten sendmail als de standaard MTA. Dat is goed - het bestaat al een lange tijd, is stabiel en het werkt geweldig (hoewel de postfix-afficionados het misschien niet eens zullen zijn!). Maar er is niets ingebouwd voor spamcontrole dat goed is; het was daar niet voor ontworpen. Dus je hebt spamassassin geïnstalleerd en het werkt goed, maar je krijgt nog steeds onbeveiligde spam-e-mails. Misschien moet je greylisting proberen.
Greylisting is het proces waarbij alle e-mail (tenzij deze specifiek op de witte lijst staat) aanvankelijk wordt afgewezen en toch werkt binnen de parameters van de verschillende RFC's om uiteindelijk e-mail te ontvangen. Het idee is dat spammers niet proberen opnieuw verbinding te maken met een e-mailserver die hun aanbod heeft geweigerd en toch legitieme mailservers. Het is niet onfeilbaar - spammers zijn snel aan te passen en greylisting bestaat al lang. Maar het helpt wel.
Dit artikel gaat over het installeren van milter-greylist die oorspronkelijk is geschreven door Emmanuel Dreyfus. Ik zal me concentreren met sendmail hier, maar milter-greylist wordt ook ondersteund met postfix.
Controleer eerst uw afhankelijkheden. Van de README:
Bouw afhankelijkheden:
- flex (AT & T lex kan geen milter-greylist bronnen maken)
- yacc of bison (sommige oudere yacc zullen falen, gebruik in plaats daarvan bizon)
- libmilter (wordt geleverd met Sendmail of met de sendmail-devel
pakket op RedHat, Fedora en SuSE. Debian en Ubuntu hebben het
in libmilter-dev)
- Elke bibliotheek met POSIX-threads (door libc geleverd op sommige systemen)Optionele afhankelijkheden:
- libspf2, libspf_alt of libspf, voor SPF-ondersteuning
- libcurl, voor ondersteuning van URL-controles
- libGeoIP, voor GeoIP-ondersteuning
- libbind van BIND 9, voor DNSRBL-ondersteuning, behalve als uw systeem een thread-safe DNS-resolver ingebouwd heeft.
Maar het configuratieproces zal alles vinden dat u niet hebt geïnstalleerd en klagen totdat de afhankelijkheid is opgelost.
Download vervolgens de greylist-milter van http://hcpnet.free.fr/milter-greylist en pak de tarball uit. Lees dan het README-bestand! Het bevat een schat aan informatie die niet in dit artikel wordt behandeld, met name voor installaties die speciale functies zoals SPF-ondersteuning willen / moeten bevatten..
En doe het gebruikelijke
./ configure
./maken
./ make install
De standaardinstallatie zal de binaries in / usr / local / bin, de database en pid-bestand in / var / milter-greylist plaatsen en het configuratiebestand zal /etc/mail/greylist.conf zijn. Sommige opstartscripts zijn opgenomen in de tarball, maar deze worden niet automatisch geïnstalleerd. Je moet het zelf in je /etc/init.d instellen als je er een wilt gebruiken.
Je zult dan sendmail moeten configureren om daadwerkelijk de milter te gebruiken. Voeg in je sendmail.mc-bestand het volgende toe (maar let goed op de waarschuwingen in het README-bestand als je al andere milters in je installatie gebruikt!):
INPUT_MAIL_FILTER (greylist ',' S = lokaal: /var/milter-greylist/milter-greylist.sock) dnl
define ('confMILTER_MACROS_CONNECT', 'j, if_addr') dnl
define ('confMILTER_MACROS_HELO', 'verify, cert_subject') dnl
define ('confMILTER_MACROS_ENVFROM', 'i, auth_authen') dnl
define ('confMILTER_MACROS_ENVRCPT', 'greylist') dnl
en herconfigureer je sendmail.cf bestand:
# m4 sendmail.mc> sendmail.cf
Start uw sendmail-daemon echter nog niet opnieuw op - we moeten de configuratie nog steeds aanpassen om deze correct te laten werken.
Open /etc/mail/greylist.conf in je favoriete editor (wat natuurlijk vi is, toch?).
Maak een commentaar of voeg het volgende toe:
stil
greylist 7m
dumpfreq 1d
autowhite 10d
In de bovenstaande configuratie bevat 'stil' geen tijd om opnieuw te verzenden. Dit is goed, zodat spammers niet weten hoe lang ze worden geblokkeerd. Greylisting duurt 7 minuten, waarna e-mail van de bron wordt geaccepteerd. De inhoud van de database wordt één keer per dag naar de /var/milter-greylist/greylist.db gedumpt en zodra een e-mail door een bron wordt geaccepteerd, wordt die bron gedeponeerd wordt 10 dagen op de witte lijst geplaatst voordat het opnieuw wordt gediald.
Maak ook lijsten om uw eigen netwerken op te nemen in het configuratiebestand:
lijst "mijn netwerk" addr 127.0.0.1/8 10.230.1.0/24 192.168.1.0/24
die lokale, DMZ en interne netwerken op de witte lijst zal zetten (als voorbeeld - de jouwe zijn waarschijnlijk anders). Let op de ruimte tussen netwerkadressen, niet komma's.
Samen met andere externe netwerken die altijd vertrouwd zijn:
# Vertrouwde netwerken naar niet greylist:
lijst "vertrouwd" addr
207.46.0.0/16 # Microsoft
72.33.0.0/16 # UW Madison
Er is een tamelijk uitgebreide lijst van 'kapotte' mailerservers in het configuratiebestand die ook altijd op de witte lijst moeten staan, omdat ze met een greylisting hoogstwaarschijnlijk nooit e-mails van hen ontvangen. U kunt indien nodig ook aan die lijst toevoegen als dat nodig is.
Je zult waarschijnlijk greylisting als standaard instellen, dus misschien wil je ook bepaalde gebruikers op de witte lijst zetten die nooit willen dat e-mail wordt vertraagd (verschillende pompeuze vice-presidenten, systeemwaarschuwingsadressen en dergelijke):
# Lijst met gebruikers die op witte lijst willen staan (als greylisting de standaard is):
lijst "witte gebruikers" rcpt
[email protected]
[email protected]
[email protected]
Let op de lijstnamen van "mijn netwerk", "vertrouwd" en "witte gebruikers" - u moet deze toevoegen aan de eigenlijke configuratielijn voor witte lijsten:
# En hier is de toegangslijst
racl whitelist lijst "mijn netwerk"
lijst van racl op de witte lijst "broken mta"
racl-lijst met witte lijsten "trusted"
lijst met witte lijst van racelijst "witte gebruikers"
Opmerking: je kunt dit ook instellen op de witte lijst als standaard. In dat geval zou je ook een lijst met grijze gebruikers maken van die mensen die je altijd onder greylisting wilt hebben. Daartoe behoren natuurlijk dwalende gebruikers die hun zakelijke e-mailadres overal op sociale netwerksites, verkoopwebsites en nieuwsbriefabonnementen plaatsen.
En configureer vervolgens de standaardbewerking van milter-greylist:
racl greylist default
(gebruik de standaardwaarde van de racl witte lijst als u wilt dat de witte lijst de standaardbewerking is).
En activeer vervolgens uw milter-greylist-binaire bestand met behulp van het opstartscript /etc/init.d/milter-greylist of met
# milter-greylist -f /etc/mail/greylist.config
op de opdrachtregel. Er zijn een hele reeks andere opdrachtregelopties (waarvan er veel dubbele parameters zijn die in het conf-bestand zijn ingesteld). Zien
man milter-greylist
voor verdere details.
En start dan je sendmail-daemon opnieuw op en geniet van minder spam op je mailserver.