Slik bruker du Sagator, en antivirus/antispam-gateway, for å beskytte e-postserveren din


Vi leser om virusinfeksjoner (nye kommer ut hele tiden) og blir på en eller annen måte påvirket av spam-e-post daglig. Selv om det er mange gratis og kommersielle løsninger (tilgjengelig som klientapplikasjoner) for begge plagene, må systemadministratorer ha en strategi for å håndtere disse truslene i god tid før de når brukernes postbokser.

En av slike strategier er å sette opp en antivirus/antispam-gateway. Du kan tenke på dette verktøyet som et mellomlag (eller filter) mellom omverdenen og ditt indre nettverk når det gjelder e-postinnhold.

I tillegg, hvis du tenker på det, er det mye enklere å installere og vedlikeholde et enkelt stykke programvare på en enkelt maskin (e-postserveren) enn det er å gjøre det samme på flere maskiner individuelt.

I denne artikkelen vil vi introdusere deg til Sagator, en antivirus-/anti-spam-gateway for Linux-e-postservere skrevet i Python. Sagator leverer blant annet databaselogging, bruksstatistikk og daglige rapporter for brukere. Når det er sagt, la oss komme i gang.

Installere Sagator og Postfix Mail Server

For å installere Sagator i CentOS/RHEL 7, last ned og installer følgende RPM-pakker. Den siste betaversjonen (7) inkluderer støtte og rettelser for systemd – det er derfor vi foretrekker å installere den ved å bruke denne metoden i stedet for å laste ned pakken fra depotene.

rpm -Uvh https://www.salstar.sk/pub/sagator/epel/testing/7/i386/sagator-core-1.3.2-0.beta7.el7.noarch.rpm
rpm -Uvh https://www.salstar.sk/pub/sagator/epel/testing/7/i386/sagator-1.3.2-0.beta7.el7.noarch.rpm

Hvis du utfører denne installasjonen på en fersk server, vær oppmerksom på at flere andre pakker må installeres som avhengigheter, blant annet kan vi nevne Postfix, ClamAV og SpamAssassin.

I tillegg vil du kanskje også installere Rrdtool, et verktøy for å lage og vise dag/uke/måned/år grafikk av totalt/rent/virus/spam antall e-poster.

Denne grafikken vil være tilgjengelig i /var/www/html/sagator når tjenesten og dens avhengigheter er fullt funksjonelle.

yum install epel-release
yum install postfix spamassassin clamav clamav-scanner clamav-scanner-systemd clamav-data clamav-update rrdtool

Dette er ikke en overraskelse da vi trenger en e-postserver, og antivirus-/antispamprogramvare Sagator kan koble seg til. I tillegg må vi kanskje installere mailx-pakken, som gir MUA-funksjoner (Mail User Agent, også kjent som Email Agent).

I Debian og Ubuntu, må du installere Sagator fra en forhåndskompilert .deb-pakke, som du kan laste ned herfra og installere som følger:

Debian Jessie:

wget https://www.salstar.sk/pub/sagator/debian/pool/jessie/testing/sagator-base_1.3.2-0.beta7_all.deb 
wget https://www.salstar.sk/pub/sagator/debian/pool/jessie/testing/sagator_1.3.2-0.beta7_all.deb 
dpkg -i sagator-base_1.3.2-0.beta7_all.deb
dpkg -i sagator_1.3.2-0.beta7_all.deb 

Ubuntu Trusty:

wget https://www.salstar.sk/pub/sagator/ubuntu/pool/trusty/testing/sagator-base_1.3.2-0.beta7_all.deb 
wget https://www.salstar.sk/pub/sagator/ubuntu/pool/trusty/testing/sagator_1.3.2-0.beta7_all.deb 
sudo dpkg -i sagator-base_1.3.2-0.beta7_all.deb
sudo dpkg -i sagator_1.3.2-0.beta7_all.deb

Som det var tilfellet med CentOS, må du installere og konfigurere e-postserveren, SpamAssassin og ClamAV-pakkene:

aptitude install postfix spamassassin clamav clamav-daemon -y

Ikke glem å bruke sudo i Ubuntu.

Deretter, uavhengig av distribusjon, må du oppdatere virusdefinisjonen før du starter ClamAV. Før du gjør det, rediger /etc/clamd.d/scan.conf og /etc/freshclam.conf og slett følgende linje:

Example

I /etc/clamd.d/scan.conf må du også sørge for at følgende linje ikke er kommentert:

LocalSocket /var/run/clamd.scan/clamd.sock

Til slutt, gjør det

freshclam

Og start/aktiver ClamAV, SpamAssassin og Sagator:

systemctl start clamd@scan
systemctl start spamassassin
systemctl start sagator
systemctl enable clamd@scan
systemctl enable spamassassin
systemctl enable sagator

Det kan være lurt å sjekke Sagator-loggen for å sikre at tjenesten startet riktig:

systemctl status -l sagator

eller for mer informasjon,

tail -f /var/spool/vscan/var/log/sagator/sagator.log

Kommandoene ovenfor er illustrert i følgende bilde:

Konfigurere Sagator i Linux

Hovedkonfigurasjonsfilen ligger på /etc/sagator.conf. La oss ta en titt på minimumssettet med direktiver vi må sette for at Sagator skal fungere skikkelig:

Trinn 1 – Vi skal bruke Sagator i en chroot, så sørg for at følgende linje ikke er kommentert:

CHROOT = '/var/spool/vscan'

Trinn 2 – Sørg for at LOGFILE-direktivet samsvarer med følgende verdi:

LOGFILE = CHROOT + '/var/log/sagator/sagator.log'

Trinn 3 – Velg et antivirusprogram som skal integreres med Sagator. For å gjøre det, sørg for at linjene som er uthevet i bildet nedenfor, ikke er kommentert:

Mens du står fritt til å velge mellom et bredt utvalg av antivirusløsninger, gir ClamAV høyere ytelse og stabilitet. Selv om vi vil bruke ClamAV i denne veiledningen, vær så snill å huske på at konfigurasjonsfilen inneholder instruksjoner for å koble Sagator til andre antivirus-/antispamløsninger.

Når du er ferdig, løp

sagator --test

For å sjekke konfigurasjonsfilen. Ingen utgang er en god ting! Ellers må du løse eventuelle feil du finner før du fortsetter.

Integrering av Sagator med Postfix

For å integrere Sagator med Postfix, sørg for at følgende linjer er til stede i /etc/postfix/main.cf og / etc/postfix/master.cf:

mynetworks = 127.0.0.0/8
content_filter = smtp:[127.0.0.1]:27
#smtp inet n - n -- smtpd
127.0.0.1:26 inet n - n - 30 smtpd
-o content_filter=
-o myhostname=localhost
-o local_recipient_maps=  -o relay_recipient_maps=
-o mynetworks=127.0.0.0/8  -o mynetworks_style=host
-o smtpd_restriction_classes=  -o smtpd_client_restrictions=
-o smtpd_helo_restrictions=  -o smtpd_sender_restrictions=
-o smtpd_data_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o receive_override_options=no_unknown_recipient_checks,no_header_body_checks
-o smtpd_use_tls=no

Start deretter postfix på nytt og sørg for at den er aktivert for å starte automatisk ved oppstart:

systemctl restart postfix
systemctl enable postfix

Vi kan nå fortsette med testingen.

Tester Sagator

For å teste Sagator, send en e-post fra bruker root til bruker gacanepa med følgende tekst. Dette er hverken mer eller mindre enn standard GTUBE (Generic Test for Unsolicited Bulk Email) levert av SpamAssassin, som vist i bildet nedenfor :

XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X

La oss nå se hva som skjer når et virus sendes som et vedlegg. I følgende eksempel vil vi bruke EICAR-testen (se denne Wikipedia-oppføringen for mer informasjon):

wget http://www.eicar.org/download/eicar.com
mail -a eicar.com gacanepa

Sjekk deretter loggen:

tail -f /var/spool/vscan/var/log/sagator/sagator.log

Avviste e-poster blir deretter levert tilbake til avsenderen med tilsvarende varsel:

Hva er så bra med dette? Som du kan se, kommer søppelpost og virus aldri til målserveren og brukernes postbokser, men de blir droppet eller avvist på gatewaynivå.

Som vi nevnte tidligere, er grafene tilgjengelige på http:///sagator:

Sammendrag

I denne artikkelen har vi forklart hvordan du installerer og konfigurerer Sagator, en antivirus/antispam-gateway som integreres sømløst med og beskytter e-postserveren din.

For mer informasjon og ytterligere funksjonalitet (den utrolige programvaren har mye mer enn vi kan dekke i en enkelt artikkel!), kan det være lurt å referere til prosjektets nettside på http://www.salstar.sk/sagator.

Som alltid, ikke nøl med å sende oss en linje ved å bruke kommentarskjemaet nedenfor hvis du har spørsmål eller kommentarer.

Spesiell takk til Jan ONDREJ (SAL), utvikleren av Sagator, for hans enestående støtte mens jeg skrev denne artikkelen.