KMail en antivirusprogramma ClamAV

Auteur: Jasper van der Marel
Herziening 0.3
Copyright © 2004 KDE-nl team

In wat volgt wordt beschreven hoe je met behulp van Clamassassin virussen kan onderscheppen met Clam Antivirus in Kmail.

Clamassassin is een scriptbestand dat via Clam Antivirus e-mailberichten controleert en markeert op virussen. De werking van dit script is gelijk aan SpamAssassin welke e-mailberichten controleert en markeert op spam. In dit document wordt beschreven hoe je Clam Antivirus installeert, Clamassasin configureert en KMail instelt zodat virussen worden ontdekt en worden verwijderd of verplaatst naar een aparte map.

Linux kent in het algemeen geen virussen. Virussen worden meestal geschreven voor de Windows omgeving. Een virusscanner is niet noodzakelijk maar wel handig als je veel bijlagen krijgt toegestuurd die vanaf een Windows machine komen. Je kunt dan eenvoudig zien of deze documenten zijn geïnfecteerd met virussen. Ook als je een gedeeld netwerk heeft met daarin Windows machines is een virusscanner aan te raden.

Deze installatie gaat van de situatie uit dat er geen MTA draait zoals Sendmail om de mail binnen te halen. KMail haalt in deze sitautie gewoon zijn mail binnen via bijvoorbeeld POP3 accounts. De handleiding is dus geschreven voor de desktopomgeving en niet voor omgevingen waar mailservers draaien. De omgevingen met mailservers kunnen beter de virussen op de mailserver controleren met bijvoorbeeld Amavis (zie voor meer informatie de internetpagina van Clam Antivirus)

Stap 1 : Installatie van Clam Antivirus

De installatie van Clam Antivirus wordt hieronder distributieonafhankelijk beschreven. Op elke distributie kunnen pakketten worden gemaakt vanuit een bronbestand. Voor veel distributies zijn ook softwarepakketten voorhanden die via toepassingen als RPM (Redhat) Apt (Debian) of andere middelen kunnen worden geïnstalleerd.

Het bronbestand van Clam Antivirus is te downloaden van clamav.net. De bronbestanden hebben de toevoeging tar.gz en zijn te vinden onder Download -> Stable. Download de laatste versie (hoogste versienummer) naar een daarvoor aangemaakte map (bijvoorbeeld /tmp of een map Downloads.In dit voorbeeld is Clamassassin in de map /tmp binnengehaald dus toets daarvoor in cd /tmp.

Open een terminalvenster (Menu -> Systeem -> Terminalprogramma (Konsole)).In de terminal toets je nu het volgende commando in:

tar -zxvf clamav*

Het bronbestand wordt nu uitgepakt naar een submap clamav*. Toets nadat het bestand is uitgepakt het commando

cd clamav*

in. Nu kun je het bronbestand gaan maken zodat het kan worden uitgevoerd. Toets het volgende commando in:

./configure && make && su -c "make install"

De opdracht zal om het wachtwoord voor de gebruiker root vragen. De rechten van de gebruiker root zijn nodig om Clam Antivirus op het systeem te installeren. Nu wordt clamav voor jouw systeem gemaakt.

Het programma is nu geïnstalleerd in de map /usr/bin onder de naam clamscan. De virusdefinities zijn geïnstalleerd in /usr/share/clamav. De lees- en schrijfrechten van deze map moeten nog worden veranderd zodat een normale gebruiker de virusdefinities kan bijwerken. Toets in de terminal het commando

chmod 777 /usr/share/clamav

in. Iedere gebruiker kan nu in een terminal het commando freshclam uitvoeren om de virusdefinities bij te werken.

Opmerking : In bovenstaande voorbeeld wordt Clam Antivirus gegeinstalleerdiuml;nstalleerd in de map /usr/bin en de virusdefinities in de map /usr/share/clamav. Sommige installatiebestanden voor linuxdistibuties installeren Clam Antivirus in de map /usr/local/bin en de virusdefinities in de map /usr/local/share/clamav. Kijk bij jouw distributie waar Clam Antivirus en de virusdefinities zijn gegeinstalleerdiuml;nstalleerd en pas in het verloop van de handleiding de paden naar de genoemde bestanden zo aan dat deze kloppen met jouw installatie.

Stap 2 : Installatie van Clamassassin

Clamassassin is een script dat eenvoudig kan worden geïnstalleerd. Download het bestand van de website drivel.com/clamassassin/ naar een daarvoor bestemde map. Ga naar deze map. In dit voorbeeld is Clamassassin in de map /tmp binnengehaald dus toets daavoor in cd /tmp. Open een terminal en pak het bestand uit met het commando:

tar -zxvf clamassasin*

Er wordt nu een submap gemaakt met de map clamassasin*. Ga naar deze map met het commando

cd clamassassin*

Er staan hier 3 bestanden waarvan clamassassin het belangrijkste is. Controleer met het commando which waar de bestanden formail, mktemp en clamscan staan met behulp van de opdracht:

which formail

Vervang in de bovenstaande opdracht formail achtereenvolgens door mktemp en clamscan om de paden van de overige programma's te controleren.

Open het bestand clamassassin met een tekstverwerker zoals Kedit ( kedit clamassassin). In het bestand staat een configuratie beschreven. Pas de paden naar de bestanden formail, mktemp en clamscan aan en sla het bestand op. Word nu root en toets het volgende commando in:

cp clamassassin /usr/bin && chmod +x /usr/bin/clamassassin

Opmerking: Het bestand clamassassin kan ook naar de map /usr/local/bin worden gekopieerd.

Nu kan clamassassin worden uitgevoerd als een normaal programma.

Stap 3 : Kmail instellen

Maak eerst een map aan ergens in de mappenlijst waar je de geïnfecteerde mailtjes wilt opslaan zodat je nog even kan kijken of de detectie goed werkt. Noem deze map bijvoorbeeld Infected.

Om het antivirusprogramma het laten werken moeten vervolgens filters worden aangemaakt. Open KMail en klik op Instellingen en daarna op Filters instellen.

Creëer vervolgens twee nieuwe filters. Stel de eerste filter in alsvolgt:

Met dit filter worden alle binnenkomende maitjes gecontroleerd en op virussen en gemarkeerd met een flag (X-Virus-Status = YES of X-Virus-Status = NO). Het beste is om dit filter helemaal bovenaan te zetten (dit kan met behulp van de knoppen met pijltjes). Ook de spammailtjes worden dan ook op virussen gecontroleerd.

Het tweede filter dat moet worden aangemaakt ziet er ongeveer zo uit:

Deze filtercriteria zorgen er voor dat alle e-mail die clamassassin als 'geïnfecteerd met virussen'-gemarkeerd heeft, verplaatst wordt naar de map Infected.

Opmerking: Bij het filter waarbij er moet komen te staan X-Virus Status is gelijk aan YES moet de berichtenkop X-Virus Status handmatig worden ingevoerd. Zoals je kan zien staat deze berichtenkop niet in de lijst die je krijgt te zien in het menu wanneer op het pijtje naar beneden wordt geklikt.

Aanvulling

Het programma freshclam kan opgenomen worden in de crontab om het programma op vastgestelde tijden naar nieuwe virusdefinitites te laten zoeken en deze binnen te halen. Dit is handig voor mensen met een vaste internetaansluiting zoals kabelgebruikers of mensen in het bezit van ADSL. In de KDE omgeving kan het programma Takenplanner (KCron) worden gestart (K-Menu -> Systeem -> Takenplanner (KCron) om de tijden in te stellen. Open de takenplanner en klik met de rechtermuisknop op taken en kies Nieuw. Hier kan een nieuwe taak worden opgegeven. De virusdefinities worden dagelijks bijgewerkt dus stel de tijd bijvoorbeeld in op 1.00 en doe dit voor elke dag van elke maand. Geef ook een beschrijving van de taak op en het pad naar de opdracht freshclam (als het programma is geïnstalleerd is volgens de instructies dan staat het programma in /usr/bin/freshclam).

Ook freshclam als deamon draaien op de achtergrond met het commando freshcam -d -c 2. Hiermee zal freshcam 2 maal daags kijken naar nieuwe virusdefinities. Echter om freshclam als deamon te draaien moet er een gebruiker clamav worden aangemaakt. Dit kan door middel van het programma Gebruikersbeheer (KUser) onder Systeem in het K-Menu. Zorg er voor dat de gebruiker clamav geen shell heeft en ook geen persoonlijke map!

Links, licenties en verdiensten

De Anti-virusassistent

KMail heeft ook een anti-virusassistent, die je kan helpen met het initieel instellen van de filters.

Waar kan de assistent mee helpen? Het stelt je enkele vragen over de manier waarop het virusfilter wilt gebruiken. Daarna stelt de assistent de benodigde filter automatisch voor je in.

Wat zijn de beperkingen van de assistent? Het kan alleen maar de initiële filters instellen op een standaard manier. Het is niet mogelijk bestaande filters aan te passen.

Om de assistent te starten kiest je Hulpmiddelen->Anti-virusassistent.... Wil je meer informatie over deze assistent, dan kun je in de documentatie van KMail kijken.

Het is toegestaan dit document te kopiëren, te verdelen en/of te wijzigen onder de voorwaarden van de GNu vrije-documentatielicentie, versie 1.1 of een latere versie gepubliceerd door de Free Software Foundation; zonder invariante paragrafen, zonder vooromslagteksten, en zonder achteromslagteksten.

Over deze site | Laatst gewijzigd: Wed Mar 24 09:36:31 CET 2004 door: Jasper van der Marel