Miért van szükség az rspamd-re a kéretlen levelek szűréséhez?

A tökéletes Ubuntu-szerver telepítését ismertető útmutatónkban alapvető vírus- és spamszűrést helyeztünk üzembe a szerverünkön az amavis képében, ám ha nagyon sok kéretlen levelet kapunk, akkor a védelmünk és a tisztább postafiókunk érdekében sokkal jobban járunk, ha az rspamd-t választjuk. Szerencsére ez utóbbi is élvezi az ISPConfig teljes támogatását, ráadásul még a felhasználóinknak is lehetőséget adhatunk arra, hogy saját maguk szabják meg, mennyire szigorú szűrési szabályok legyenek érvényben a saját levelezésüknél.

Külön előny, hogy az rspamd saját webes felülettel is rendelkezik, ahol nyomon követhetjük a levelek pontozását és szűrését, és gyakorlatilag áttekinthetjük a teljes levelezésünket, valamint az ISPConfig adminfelületén domainek, kliensek és egyéni e-mail-fiókok szintjén is konfigurálhatjuk az alapértelmezett beállításokat.

Nézzük tehát, milyen lépésekre van szükségünk ahhoz, hogy üzembe helyezzünk egy hatékonyabb és szofisztikáltabb levélszemétszűrőt!

MEGJEGYZÉS

Az alábbi lépések feltételezik, hogy root jogosultsággal rendelkezünk a rendszeren. Szóval ha még nem tettük meg, adjuk ki a következő parancsot:

sudo su

A redis-server telepítése

Első lépésként telepítenünk kell néhány csomagot, elsőként a Redist, amely az adatainkat fogja tárolni a memóriában:
apt-get install redis-server lsb-release

Az unbound telepítése (amennyiben a BIND nincs telepítve)

Abban az esetben, ha a BIND nem lenne telepítve a szerverünkre, mindenképpen szükségünk van egy névfeloldást elvégző szolgáltatásra.

Elsőként is ellenőrizzük, hogy telepítve van-e a BIND:
which named

Ha erre válaszul valami ilyesmit kapunk, akkor folytassuk a következő lépéssel, mivel a BIND-ot már sikeresen telepítettük a gépre:
/usr/sbin/named

Amennyiben nem kapjuk meg a named elérési útját, úgy telepítenünk kell az unbound nevű csomagot:
apt-get install unbound

Az rspamd telepítése

A telepítés első lépése, hogy hozzáadjuk a csomagtárhoz az rspamd forrásait. Ehhez a következő parancsokat kell kiadnunk:
CODENAME=`lsb_release -c -s`
wget -O- https://rspamd.com/apt-stable/gpg.key | apt-key add -
echo "deb [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" > /etc/apt/sources.list.d/rspamd.list
echo "deb-src [arch=amd64] http://rspamd.com/apt-stable/ $CODENAME main" >> /etc/apt/sources.list.d/rspamd.list

Majd frissíthetjük a csomaglistát:
apt-get update

És telepíthetjük a csomagunkat:
apt-get install rspamd

Ezután aktiválhatjuk a redis használatát:
echo 'servers = "127.0.0.1";' > /etc/rspamd/local.d/redis.conf

[OPCIONÁLIS] lépésként megnövelhetjük a megjelenített elemek számát, engedélyezhetjük a tömörítést, illetve megjeleníthetjük az üzenetek tárgyát:
echo "nrows = 2500;" > /etc/rspamd/local.d/history_redis.conf
echo "compress = true;" >> /etc/rspamd/local.d/history_redis.conf<
echo "subject_privacy = false;" >> /etc/rspamd/local.d/history_redis.conf

Végül pedig újra kell indítanunk a démont:
systemctl restart rspamd

Az ISPConfig frissítése

Ahhoz, hogy az rspamd kezelése is elérhetővé váljon (az amavis helyett) a felügyeleti rendszerünkben, frissítenünk kell az ISPConfigot. Ezt a következő paranccsal tehetjük meg:
cd /tmp
wget http://www.ispconfig.org/downloads/ISPConfig-3-stable.tar.gz
tar xvfz ISPConfig-3-stable.tar.gz
cd ispconfig3_install/install
php -q update.php

A szolgáltatások újrakonfigurálására vonatkozó (reconfigure services) kérdésnél adjuk az igen (yes) választ.

Ezt követően be kell jelentkeznünk az ISPConfig adminfelületére az adminfelhasználóval, és a System > Server Config > Mail alatt a Content Filter legördülő menüjében az Amavisd helyett az Rspamd lehetőséget kell kiválasztanunk.

Az oldal mentése után végbemegy a levelezés átkonfigurálása, majd ha ez befejeződött, látogassunk vissza ugyanerre az oldalra, és megjelenik az rspamd-be történő bejelentkezéshez használatos jelszó.

Az rspamd webes felületének elérhetővé tétele

Alapértelmezés szerint az rspamd webes felülete csak a helyi gépről érhető el, ezért ha szeretnénk távolról is elérhetővé tenni, konfigurálnunk kell hozzá egy domaint vagy subdomaint az Apache-ban, és azon kell beállítanunk egy proxys elérést.

Először is engedélyezzük a szükséges modult, majd indítsuk újra a démont:

a2enmod proxy

systemctl restart apache2

Ezt követően az IPSConfig webes adminfelületén hozzunk létre egy új webhelyet. A nevet mi választhatjuk meg a rendelkezésre álló domainek alapján (pl. rspamd.example.com), a beállításokat pedig nem érdemes az alapértelemezésről másra átállítani, kivéve a Let’s Encrypt esetén, mivel azt kifejezetten ajánlott bekapcsolni ahhoz, hogy az adatok ne titkosítatlan kapcsolaton keresztól utazzanak.

Ha kész az új webhely, akkor az Options lap Apache Directives mezőjébe írjuk be az alábbi sorokat:

<Location /rspamd>

Require all granted

</Location>

RewriteEngine On

RewriteRule ^/rspamd$ /rspamd/ [R,L]

RewriteRule ^/rspamd/(.*) http://127.0.0.1:11334/$1 [P]

Innetől kezdve az rspamd.example.com/rspamd elérési úton tudjuk majd megnyitni a webes felületet, és a fentiekben jelzett helyen található jelszóval tudunk belépni.

Az amavisd letiltása

Mivel már nincs rá szükségünk, tiltsuk le az amavist:

 

systemctl stop amavisd-new
systemctl disable amavisd-new

 

És készen is vagyunk!

A levélszűrési szabályok konfigurálása az ISPConfigban

Az ISPConfigban be tudjuk konfigurálni az egyes felhasználóknál beállított levélszűrési pontszámokat. Ehhez az Email > Policy menüpontot kell megnyitnunk, és itt tudjuk konfigurálni a már meglévő rekordokat, vagy akár újat is létrehozhatunk. Az Rspamd lapon három kategóriában pontozhatunk: a gyanús e-maileket (greylisting), a potenciális spameket (SPAM tag), illetve a biztosan kéretlen leveleket (SPAM reject) adhatjuk meg az általunk választott pontszámmal. Továbbá kiválaszthatjuk, hogy a potenciálisan spamként megjelölt leveleknél a levél fejlécében legyen ez a megjelölés vagy a tárgymezőben.

A pontozást nagyjából úgy kell elképzelni, hogy minél inkább hasonlít egy e-mail a kéretlen üzenetekre, és minél kevésbé felel meg az elvárt szabványoknak (pl. meghamisított a feladója, nem szabványos levelezőprogramból küldték, domainnév nélküli vagy ismeretlen helyről érkezett, trükközéssel próbálják megjeleníteni a szövegtörzs tartalmát stb.), annál több pontot fog kapni a szűrés során. Ha valamelyik kategóriát le szeretnénk tiltani, akkor a 999-es értéket kell megadni, ezt ugyanis egyik levél sem éri el a pontozás során.

A már készen elérhető sablonok jók lehetnek kiindulási pontként a saját rekordjaink létrehozásánál. A Permissive egy arany középútnak tekinthető, a Permissive – noreject akkor jöhet jól, ha biztosan nem akarjuk eldobni egyik levelet sem, átlagos felhasználóknál, legitim levelezés mellett pedig a Non-paying lehet a jó választás.

Nincs olyan beállítás, amely 100%-os módon garantálja, hogy sosem jut át a rostán olyasmi, aminek nem kellene, vagy éppen nem akad fenn rajta hasznos tartalommal rendelkező levél. Viszont az alapértelmezett sablont az e-mailek domainjeinek létrehozásakor is beállíthatjuk, és az egyes felhasználók szintjén is módosíthatjuk a Spamfilter mezőben. Ha a felhasználónál nincs semmi beállítva, akkor a domainnél megadott beállítások lesznek érvényben. (Azaz a domain összes felhasználója alapértelmezés szerint a domain beállítását örökli. Ha viszont meg lett adva másik beállítás általunk vagy a felhasználó által, akkor az lesz érvényben.)

Az alábbiakban azt is bemutatjuk, maguk a felhasználók hogyan tudják beállítani a kívánt szintet a webes levelezőben.

A levélszűrési szabályok felhasználói konfigurálása a roundcube-ban

Felhasználóinknak lehetőséget biztosíthatunk arra, hogy saját szabályokat adjanak meg a levélszemét szűrésével kapcsolatban. Például könnyen lehet, hogy valaki olyan e-maileket kap, amelyeket tévesen jelöl meg a rendszer spamként, vagy éppen szeret sok hírlevelet kapni, és ezek az üzenetek határesetnek számítanak a szűrőprogram szemében.

Szerencsére ezt könnyedén megtehetik, ha bejelentkeznek a webes levelezőfelületre, a roundcube-ba.

A beállítások elérési útja a következő: Beállítások > Profil > Spam-védelem. Itt láthatjuk a rendelkezésünkre álló lehetőségeket (azonosak az ISPConfigban konfigurált, fent ismertetett értékekkel), és kiválaszthatjuk a számunkra kedvező beállítást. Minél magasabb pontszámot adunk meg az egyes kategóriákban (gyanús levél, spamként megjelölt levél, elutasított levél), annál kisebb a valószínűsége, hogy egy adott levél kipontozódik. Ha valamelyik kategória alkalmazását le szeretnénk tiltani, akkor a 999-es értéket kell választanunk.

Chilly
Chilly

Chilly 1997 óta foglalkozik webhelyek üzemeltetésével és programozással, valamint különböző kütyük kipróbálásával, és azóta folyamatosan nyomon követi a technikai újításokat. Elsődlegesen Linux-rendszerekkel dolgozik, de az évek során rengeteg tapasztalatra tett szert a Windows-gépek üzemeltetése terén is, hobbiszinten pedig az utóbbi időben egyre több időt tölt a Raspberry Pi módosítgatásával, illetve otthoni automatizált és biztonságtechnikai rendszerek kiépítésével.
Mesterfokon beszél angolul, és műszaki szakfordítói vizsgával rendelkezik. Korábban sokáig újságíróként dolgozott nyomtatott és online magazinoknál.

Visit Us On LinkedinCheck Our Feed