Linux Security

ClamAV unter Debian 13 installieren und konfigurieren

Linux-Systeme gelten als vergleichsweise sicher, dennoch können auch Linux-Server Schadsoftware speichern, verteilen oder als Datei- und Mailserver für andere Systeme dienen. Besonders bei Webservern, Mailservern, Nextcloud-Installationen oder Fileservern empfiehlt sich daher ein zusätzlicher Virenscanner.

4 min Lesezeit
Grafik: ClamAV unter Debian 13 installieren und absichern

Mit ClamAV steht eine leistungsfähige Open-Source-Lösung zur Verfügung, die seit vielen Jahren aktiv weiterentwickelt wird und Millionen von Malware-Signaturen erkennt.

In diesem Beitrag zeige ich Schritt für Schritt die Installation, Konfiguration und Inbetriebnahme von ClamAV unter Debian 13 (Trixie) – inklusive der Besonderheiten, die bei aktuellen Debian-13-Systemen auftreten können.


Was ist ClamAV?

ClamAV ist ein freier Open-Source-Virenscanner für Linux, Unix und Windows.

Typische Einsatzgebiete:

  • Mailserver
  • Webserver
  • Nextcloud-Installationen
  • Dateiserver
  • NAS-Systeme
  • Linux-Desktops
  • Container-Umgebungen

ClamAV erkennt unter anderem:

  • Viren
  • Trojaner
  • Würmer
  • Backdoors
  • Webshells
  • Schadcode in Dokumenten
  • Phishing-Dateien

System aktualisieren

Vor der Installation sollte das System aktualisiert werden:

sudo apt update
sudo apt upgrade -y

ClamAV installieren

Die Installation erfolgt direkt aus den Debian-Paketquellen:

sudo apt install clamav clamav-daemon clamav-freshclam -y

Installierte Komponenten:

PaketFunktionclamavVirenscannerclamav-daemonHintergrunddienst für schnelle Scansclamav-freshclamAutomatische SignaturupdatesclamscanKommandozeilen-Scanner

Versionsprüfung:

clamscan --version

Beispiel:

ClamAV 1.4.3/28030/Sat Jun 13 08:26:52 2026

Besonderheiten unter Debian 13

Viele ältere Anleitungen im Internet verwenden folgende Befehle:

sudo systemctl enable freshclam
sudo systemctl start freshclam

Diese Befehle funktionieren unter Debian 13 nicht mehr.

Die Fehlermeldung lautet:

Failed to enable unit: Unit freshclam.service does not exist

Der Grund:

Unter Debian 13 heißt der Dienst:

clamav-freshclam.service

Der korrekte Befehl lautet daher:

sudo systemctl enable --now clamav-freshclam

Alternativ:

sudo systemctl enable clamav-freshclam
sudo systemctl start clamav-freshclam

Status prüfen:

sudo systemctl status clamav-freshclam

Signaturdatenbanken herunterladen

Nach dem ersten Start lädt Freshclam automatisch die aktuellen Virensignaturen herunter.

Im Log erscheinen beispielsweise folgende Meldungen:

daily.cvd updated
main.cvd updated
bytecode.cvd updated

Diese Datenbanken werden unter folgendem Verzeichnis gespeichert:

ls -lh /var/lib/clamav/

Typische Ausgabe:

daily.cvd
main.cvd
bytecode.cvd

Warum funktioniert „sudo freshclam“ nicht?

Viele Administratoren versuchen nach dem Start des Dienstes:

sudo freshclam

und erhalten:

ERROR: Failed to lock the log file
ERROR: Problem with internal logger
ERROR: initialize: libfreshclam init failed

Dies ist normalerweise kein Fehler.

Der Hintergrunddienst clamav-freshclam läuft bereits und verwendet die Logdatei.

Prüfen:

sudo systemctl status clamav-freshclam

Logs anzeigen:

sudo journalctl -u clamav-freshclam -n 50

oder:

sudo tail -n 50 /var/log/clamav/freshclam.log

Soll ein manuelles Update durchgeführt werden, muss der Dienst vorher gestoppt werden:

sudo systemctl stop clamav-freshclam
sudo freshclam
sudo systemctl start clamav-freshclam

Erster Start von clamav-daemon

Nach der Installation kann der Daemon zunächst noch nicht laufen.

Eine typische Meldung lautet:

ConditionPathExistsGlob=/var/lib/clamav/daily.{c[vl]d,inc}

oder

Condition unmet

Der Grund:

Beim ersten Start existieren die Virensignaturen noch nicht. Deshalb verhindert Debian den Start des Daemons.

Erst nachdem clamav-freshclam die Signaturen heruntergeladen hat, kann der Daemon gestartet werden.


ClamAV-Daemon starten

Nachdem die Datenbanken erfolgreich heruntergeladen wurden:

sudo systemctl restart clamav-daemon

Status prüfen:

sudo systemctl status clamav-daemon

Die gewünschte Ausgabe lautet:

Active: active (running)

Warnung „Clamd was NOT notified“

Nach dem ersten Update erscheint häufig:

WARNING: Clamd was NOT notified:
Can't connect to clamd through /var/run/clamav/clamd.ctl

Diese Meldung ist in den meisten Fällen unkritisch.

Sie bedeutet lediglich:

  • Die Signaturdatenbanken wurden erfolgreich aktualisiert.
  • Der Daemon lief zu diesem Zeitpunkt noch nicht.
  • Deshalb konnte Freshclam den Scanner nicht benachrichtigen.

Nach dem Start von clamav-daemon tritt diese Meldung normalerweise nicht mehr auf.


Funktionstest mit der EICAR-Testdatei

Für einen sicheren Test kann die offizielle EICAR-Testsignatur verwendet werden.

Datei erstellen:

echo 'X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*' > eicar.txt

Datei prüfen:

clamscan eicar.txt

Erwartete Ausgabe:

eicar.txt: Eicar-Test-Signature FOUND

Damit ist bestätigt, dass ClamAV korrekt arbeitet.


Einzelne Verzeichnisse scannen

Home-Verzeichnis scannen:

clamscan -r /home

Nur Treffer anzeigen:

clamscan -r -i /home

Webverzeichnis prüfen:

clamscan -r -i /var/www

Gesamten Server scannen

Kompletter Scan:

sudo clamscan -r /

Systemverzeichnisse ausschließen:

sudo clamscan -r / \
  --exclude-dir="^/proc" \
  --exclude-dir="^/sys" \
  --exclude-dir="^/dev"

Dateien in Quarantäne verschieben

Quarantäne-Verzeichnis erstellen:

sudo mkdir /quarantine

Scan mit automatischer Verschiebung:

sudo clamscan -r /home --move=/quarantine

Automatische tägliche Scans

Cronjob bearbeiten:

sudo crontab -e

Beispiel für einen täglichen Scan um 02:00 Uhr:

0 2 * * * clamscan -r /var/www -i >> /var/log/clamav_scan.log

Scan-Berichte per E-Mail versenden

Beispiel:

0 3 * * * clamscan -r /var/www -i | mail -s "ClamAV Report" admin@example.com

ClamAV mit Nextcloud nutzen

ClamAV lässt sich hervorragend in Nextcloud integrieren.

In Nextcloud:

Verwaltungseinstellungen
→ Sicherheit
→ Antivirus für Dateien

Scanner auswählen:

ClamAV Daemon

Hochgeladene Dateien werden anschließend automatisch geprüft.


Speicherverbrauch prüfen

Der Daemon lädt mehrere Millionen Signaturen in den Arbeitsspeicher.

Speicherverbrauch prüfen:

free -h

Prozesse anzeigen:

ps aux | grep clam

Auf kleinen VPS-Systemen können mehrere hundert Megabyte RAM belegt werden.


Updates prüfen

Signaturstand:

clamscan --version

Freshclam-Logs:

sudo journalctl -u clamav-freshclam

Systemupdates:

sudo apt update
sudo apt upgrade

Deinstallation

ClamAV entfernen:

sudo apt remove clamav clamav-daemon clamav-freshclam -y

Vollständige Entfernung:

sudo apt purge clamav clamav-daemon clamav-freshclam -y
sudo apt autoremove -y


ClamAV ist eine leistungsfähige und kostenlose Lösung zur Malware-Erkennung auf Linux-Systemen. Die Installation unter Debian 13 ist grundsätzlich unkompliziert, allerdings unterscheiden sich einige Dienstnamen und Startbedingungen von älteren Debian-Versionen.

Besonders wichtig ist zu wissen, dass der Dienst clamav-freshclam die Signaturupdates automatisch übernimmt und der Daemon clamav-daemon beim ersten Start eventuell noch nicht aktiv ist, solange keine Virendatenbanken vorhanden sind.

Nach dem ersten erfolgreichen Signaturdownload und einem Neustart des Daemons arbeitet ClamAV zuverlässig und eignet sich hervorragend für Webserver, Mailserver, Nextcloud-Installationen und Dateiserver.

In Kombination mit UFW, Fail2ban, regelmäßigen Sicherheitsupdates und einem Monitoring-System wie Monit bildet ClamAV eine sinnvolle zusätzliche Schutzschicht für jeden Debian-13-Server.