ClamAV (Server)



Als je server benaderd wordt door Microsoft Windows of Mac OS computers (via Samba bijvoorbeeld), dan doe je er goed aan om een antivirusprogramma onder Ubuntu te installeren. De kans dat Ubuntu zelf geïnfecteerd wordt is uiterst klein, maar als je een virus oploopt (zonder zelf besmet te worden), dan kan deze wel heel gemakkelijk doorgegeven worden aan een gebruiker die met Microsoft Windows of Mac OS een connectie maakt met je computer.

Er zijn verschillende gesloten antivirusprogramma’s voor Linux, maar de beste keuze vanuit een open source perspectief is ClamAV. Dit is een krachtig antivirusprogramma ontworpen voor servers (voornamelijk mailservers).

Installeren van ClamAV

Het installeren van ClamAV doe je door de volgende commando’s op de commandoregel uit te voeren:
sudo apt-get update
sudo apt-get install clamav-base clamav clamav-daemon clamav-freshclam arj unzoo lha unrar

Zorg dat de clamav-daemon draait. Voer het commando ps ax | grep clamd op de commandoregel uit om dit te controleren.

Als het niet draait voer dan de volgende commando’s uit om ClamAV te starten:
sudo /etc/init.d/clamav-daemon start
sudo /etc/init.d/clamav-freshclam start

Gebruik van ClamAV

Bijwerken antivirusdefinitiedatabase

Voer op de commandoregel sudo freshclam uit.

Configureren

ClamAV configureren doe je door op de commandoregel sudo dpkg-reconfigure clamav-base uit te voeren.

Configureer het aantal threads op maximaal 3. Dit vermindert het CPU gebruikt. Nadeel is wel dat de doorlooptijd van het scannen op virussen toeneemt. Maar dit komt wel ten goede van de andere processen op de server.

Scannen voor virussen

Scannen voor virussen kan je automatisch uitvoeren via een cronjob . Hiervoor moet je de root crontab (d.i. /var/spool/cron/crontabs) aanpassen:
sudo crontab -e
Voer de volgende regels in de teksteditor in:
0 4 * * * freshclam
0 5 * * * clamscan -r -i --move=~/clamkluis /home > ~/scan.txt

Dit is een voorbeeld waarbij de antivirusdefinitiedatabase dagelijks om 04:00 ‘s ochtends wordt bijgewerkt en de home folder dagelijks om 05:00 ‘s ochtends gescand wordt op virussen. Geïnfecteerde bestanden (optie -i) worden verplaatst naar de folder ~/clamkluis. Check het bestand ~/scan.txt om welke bestanden het gaat.
De folder ~/clamkluis moet bestaan en door root te beschrijven zijn. Dit doen we door de folder te creëren als root:
sudo mkdir ~/clamkluis

ClamAV identificeert alleen het virus, maar onderneemt geen actie. Of je moet het bewust hebben gespecificeerd, zoals wij hebben gedaan met de –move optie. Elk antivirusprogramma en dus ook ClamAV kan een foute diagnose maken en denken een virus gevonden te hebben, terwijl dit geen virus is. Het beste advies is om op internet naar de virusnaam te zoeken om te controleren of dit inderdaad correct is. Als het inderdaad een virus is dan kan je het bestand verwijderen uit de kluis. Anders zet je het bestand weer terug in de folder waar het thuis hoort (staat in scan.txt).

Troubleshooting

Rechten fouten
Deze kunnen veelvoudig zijn. De meest voorkomende zijn:
– Clamd draait onder het account clamav en heeft geen toegang tot de MTA’s (Mail Transfer Agents) zoals sendmail of exim4.
– De DatabaseOwner in het freshclam.conf bestand moet clamav zijn.

Socket-meldingen
– Controleer of clamd actief is door het commando ps ax | grep clamd op de commandoregel uit te voeren.
– Clamd’s unix socket is niet correct gespecificeerd in clamd.conf. Controleer LocalSocket in het /etc/clamav/clamd.conf bestand.
De standaard voor LocalSocket is /var/run/clamav/clamd

About these ads

7 thoughts on “ClamAV (Server)

  1. Proberende de crontab inhoud te creeren krijg ik de volgende melding in de terminal:”

    XX@XX-desktop:/var/spool/cron$ cd crontabs
    bash: cd: crontabs: Permission denied

    Wat doe ik verkeerd? Een rechten kwestie? Graag je advies.

    • Je doet niets verkeerd. Het is inderdaad een rechtenkwestie. crontabs is van root en daar kan je als gewone gebruiker niet bij. Zelfs sudo cd scrontabs werkt niet, omdat cd geen programma is, maar een ingebouwd shell-commando. Deze kan je niet via root uitvoeren.
      Het gemakkelijkste is om tijdelijk even root te worden. Voer het volgende in een terminalvenster uit:
      sudo bash
      cd
      [andere commando's die je wilt uitvoeren]
      exit

      Vergeet de exit niet, anders blijft root open staan en dat wil je niet.

  2. Hi Leo,

    Rechten issue opgelost dankzij je aanwijzingen. Ik heb de starttijd van de update om 10 uur en de virus scanner gezet op 11 uur. Met aandacht naar de PC HDD ledje gekeken op beide uren maar er was geen scan waar tenemen… :-(

    Als ik het commando ps ax | grep clamd invoer is dit het resultaat:

    XX@XX-desktop:~$ ps ax | grep clamd
    13692 pts/2 R+ 0:00 grep clamd

    Als ik handmatig de deamon wil opstarten krijg ik de volgende melding:

    XX@XX-desktop:~$ sudo /etc/init.d/clamav-daemon start
    sudo: /etc/init.d/clamav-daemon: command not found

    Enig idee waar het nu fout gaat? Graag weer je advies.

  3. Hallo Leo,

    Al een tijdje met interesse je blog aan het volgen en een aantal zaken toegepast. Waarvoor mijn dank!

    Nu ik Ubuntu 10.04 schoon heb geïnstalleerd kon ik jou Clamav niet vinden en heb een andere gebruiksaanwijzing gevolgd (webhostingtalk).

    Bij deze installatie is standaard voor LocalSocket /var/run/clamav/clamd.ctl (het bestand staat er).
    Op internet gezocht, maar het enige wat ik nu weet is dat het een control file is.
    Ik kan hem niet openen, dus ook niet zien wat het doet.

    Kan ik de opdracht zo laten staan en kan ik de inhoud ook bekijken (nieuwsgierigheid)?

    Bij deze bedankt voor je reeks van installatie-instructie’s,
    groet,

    Wijbe

    • Hoe bedoel je dat je ClamAV niet kan vinden? Staat gewoon in Synaptic en ook in ‘Ubuntu Softwarecentrum’. Zoek op clamav. In Unbuntu Software centrum krijg je dan o.a. ‘anti-virus utility for Unix’ terug. Dat zijn de bestanden die je moet hebben. Je kan natuurlijk in ‘Ubuntu Softwarecentrum’ ook op ‘anti-virus utility for Unix’ zoeken. Persoonlijk prefereer ik nog steeds Synaptic, alhoewel het sotftwarecentrum steeds beter wordt.

      clamd.ctl kan je openen als root (administrator). Om dit te doen moet je in een terminalvenster het commando “sudo gedit /var/run/clamav/clamd.ctl”. Het kan gemakkelijker als je de Nautilus extensie ‘Open als beheerder’ hebt geïnstalleerd.

      • Ik bedoelde dat ik aanvankelijk jou (dus deze) pagina niet kon vinden… :-)
        Zoals je uit mijn post kunt lezen is het toch gelukt.

        Oeps, vergat erbij te schrijven dat het voor een server is.

Vragen, opmerkingen en meningen over dit artikel kan je hier kwijt:

Vul je gegevens in of klik op een icoon om in te loggen.

WordPress.com logo

Je reageert onder je WordPress.com account. Log uit / Bijwerken )

Twitter-afbeelding

Je reageert onder je Twitter account. Log uit / Bijwerken )

Facebook foto

Je reageert onder je Facebook account. Log uit / Bijwerken )

Google+ photo

Je reageert onder je Google+ account. Log uit / Bijwerken )

Verbinden met %s