5.2.8. Spam és vírus szűrés
A spam és a levélben érkező vírusok korunk rákfenéi... védekeznünk kell ellenük, klónozzuk a template fájlrendszer, legyen az új jail neve mailscanner, állítsuk be a megszokott módon, hozzunk létre neki adatokat hordozó fájlrendszer, amelyet csatoljunk fel a /data alá, adjuk hozzá a DNS-hez a címeit, majd indítsuk el.
Hasonlóan, mint a mail jail esetén tettük, tiltsuk le a Sendmail futását, és telepítsünk fel egy postfix programot, amelynek egyetlen feladat a levelek fogadása lesz. A konfiguráció is egyszerű lesz, mindössze annyit mondunk meg, hogy mi a neve a kiszolgálónak, s honnan fogadunk leveleket, illetve hova küldjük tovább:
Ne feledjük a /etc/rc.conf fájlban felvenni a _postfix_indítását:
S másoljuk át a postfix könyvtárát a megadott helyre:
Ezek után már el is indíthatjuk a szolgáltatást.
5.2.8.1. Postgrey – a szürke zóna
A spam elleni védekezés első védelmi vonala már akkor hatásos, amikor a spam még be se érkezett. A postgrey program egyszerűen késlelteti a levelek beérkezését, feltételezve, hogy a legális levelező partnerek szervere kis idő után újra megpróbálja kézbesíteni a levelet. A postgrey ekkor már beengedi a levelet, amelyet a mögötte lévő spam szűrő még megvizsgál. Ha újra levelet kapunk egy olyan helyről, amelyet a postgrey már átengedett, akkor nincs késlekedés, ugyanis a postgrey letárolja a küldő gép IP címét, a küldő email címét és a helyi címzettet (ez a triplet). Telepítsük fel a programot, majd elindításához az /etc/rc.conf állományába fel kell vennünk az alábbit:
Mielőtt elindítanánk a programot, mozgassuk át az általunk megadott helyre az adatait:
A szolgáltatás indítása után a megfelelő logban az alábbit kell látnunk:
|
Most már csak a mail jail-ben futó postfix-et kell erről értesítenünk, a meglévő smtpd_recipient_restrictions sort kell kiegészítenünk: /usr/local/etc/postfix/main.cf |
A jail újraindítása után próbáljunk meg levelet küldeni saját gépünkről a szerverre:
Mint látható, meg se várja a levél törzsét a megoldás, már visszadobja, hogy greylisted. Mivel az alapértelmezett üzenet túlságosan árulkodó, ezért célszerű kicserélni valami olyanra, ami gyakori lehet, de mégis a levél üzemszerű újraküldésére ingerli a küldő szerverét (a 450-es hibakód átmeneti hibát jelez, ilyen esetben a küldő szervernek kötelessége többször is próbálkozni).
A postgrey 5 perc után engedi be a próbálkozókat, így ha eltelt ennyi idő, próbáljuk újra a levélküldést:
5.2.8.2. A spam szűrő
Az egyik legrugalmasabb spam (és vírus) szűrő az amavisd-new, bár kissé lassú, mivel az egész egy nagy halom perl scriptből áll, s rengeteg más programtól függ, és még víruskereső is kell neki. Telepítsük fel az amavisd-new és a clamav csomagot, majd lássunk neki a beállításnak.
Az amavisd-new részéről a beállítások nagyjából rendben vannak, pár dolgot kell máshova tenni, illetve az összes localhost vagy 127.0.0.1 hivatkozást cseréljük le a mailscanner jail nevére címére:
Keressük meg a ClamAV bejegyzését, és szedjük ki a komment jeleket:
Ezek után a fenti beállításnak megfelelően mozgassuk át az általunk megadott helyre a virusmails könyvtárat, mivel ez a végtelenségig fog nőni, többször törölni kell majd belőle, s jobb ezt olyan fájlrendszeren tartani, amit erre a célra hoztunk létre:
A clamd is mindent jól tud alapértelmezésben, de állítsuk be neki, hogy a syslog-ng-n át loggoljon, illetve adjuk meg neki is, hogy a /data alá hozza létre az állományait:
Ugyanezt tegyük meg a frissítést végző freshclam konfiggal is:
Adjuk hozzá a /etc/rc.conf fájlhoz az amavisd és a clamav indítását is:
Mozgassuk át az adatbázist az új helyre:
Majd adjuk hozzá a clamav felhasználót a vscan csoporthoz.
|
Ezek után kissé módosítanunk kell a mail jail postifx master.cf állományát: /usr/local/etc/postfix/master.cf Az SMTPS protokollhoz nem teszünk szűrést, hiszen itt még nem valószínű, hogy spam jönne... még... |
Az egész konfig sorozat után indítsuk újra a jail-t, majd nézzük meg, működik-e:
Nézzük meg, mi került a naplóba végére:
Ebből nem derül ki sokminden, nézzük meg a mailscanner logot is:
Hát... elkapta. ![]()
5.2.8.3. A vírus szűrő
A spamek szűrésével már működik is a vírusok szűrése is, ezt nehezebb kipróbálni, valószínűleg működik is, bár az ingyenes clamav teszi a dolgát, ha nem bízunk meg benne, akkor fel kell szerelkeznünk egy olyan víruskeresővel, amely fut FreeBSD alatt, az amavisd-new is ismeri, és mindezen túl meg is bízunk benne... nem is olyan rossz az a clamav... ![]()
5.2.8.4. A tanítás
A spam szűrőt érdemes tanítani, ennek legkényelmesebb módja az, ha erre rendszeresítünk kettő email címet:
- spam@spam.javaforum.hu, amelyre az átcsúszott spam leveleket továbbíthatjuk
- ham@spam.javaforum.hu, amelyre az elkapott, de nem spam leveleket továbbítjuk
A feladathoz kell írnunk egy rövid C programot, amely elindítja a SpamAssassin tanuló programját:
A hivatkozott fájl egy perl script, amelyre nem tudunk suid bitet tenni, de a sa-wrapper programra igen, mégpedig a tanulásnak vscan felhasználóként kell futnia, de a postfix fogja végrehajtani:
A végrehajtáshoz annyi kell, hogy a /etc/aliases végére írjuk:
Ezek után generáljuk újra az adatbázist:
|
Az átirányításhoz a mail jail-ben futó postfix is kell, hiszen ő kezeli az összes bejövő levelet. A main.cf végére vegyük fel: /usr/local/etc/postfix/main.cf Ezen után módosítanunk kell a transport fájlt is: /usr/local/etc/postfix/main.cf Generáljunk egy adatbázist is, majd indítsuk újra a postfix szolgáltatást: Parancssor |
Előző fejezet Tartalomjegyzék Következő fejezet
Auth Gábor auth.gabor@javaforum.hu

Add Comment