ClamAV/OnAccess

Aus Foxwiki
Version vom 14. September 2024, 20:08 Uhr von Dirkwagner (Diskussion | Beiträge) (Textersetzung - „'''topic''' kurze Beschreibung“ durch „'''topic''' - Kurzbeschreibung“)

topic - Kurzbeschreibung

Beschreibung

Installation

Syntax

Parameter

Optionen

Konfiguration

Dateien

Anwendung

Sicherheit

Dokumentation

RFC

Man-Pages

Info-Pages

Projekt

Links

Siehe auch

Weblinks

TMP

OnAccessScan

(Originalquelle: https://blog.clamav.net/2016/03/configuring-on-access-scanning-in-clamav.html )

Beim On-Access-Scannen wird die Datei beim Lesen, Schreiben oder Ausführen gescannt.

Warnung

Zu diesem Zeitpunkt (November 2021) ist das On-Access-Scannen in ClamAV noch unausgereift, Sie sehen möglicherweise unerklärliche Clamd Abstürze und containerisierte Prozesse erhalten keinen Schutz. Daher ist es fraglich, ob es sich um eine Sicherheitsverbesserung handelt oder nicht. Aktivieren Sie es nicht, es sei denn, Vorschriften, Verträge oder Ihre eigene Neugier zwingen Sie dazu.

Für On-Access-Scans muss der Kernel mit dem fanotify -Kernelmodul (Kernel >= 3.8) kompiliert werden, was für offizielle Arch-Linux-Kernelpakete gilt. Überprüfen Sie, ob Fanotify aktiviert wurde, bevor Sie On-Access-Scans aktivieren.

$ zgrep FANOTIFY /proc/config.gz

Bearbeiten Sie zunächst die /etc/clamav/clamd.confKonfigurationsdatei, indem Sie am Ende der Datei Folgendes hinzufügen (Sie können auch die einzelnen Optionen ändern). Warnung Bitte beachten Sie die folgende Warnung zur Clamd-Port-Sicherheit, wenn Sie andere Teile der Datei ändern. Verwenden Sie im Allgemeinen einen lokalen Unix-Socket, aber beachten Sie, dass dieser Port nicht authentifiziert oder geschützt ist. Siehe https://docs.clamav.net/manual/Usage/Scanning.html#clamd-v0101 für weitere Details im Abschnitt Daemon und dann ClamD.

/etc/clamav/clamd.conf
# Stellen Sie den Einhängepunkt ein, an dem der Scan rekursiv durchgeführt werden soll,
# Dies könnte jeder Pfad oder mehrere Pfade sein (eine Zeile für Pfad)
OnAccessMountPath /
OnAccessExcludePath /proc
OnAccessExcludePath /run
OnAccessExcludePath /sys
# Fügen Sie alternativ einige Verzeichnisse anstelle von Einhängepunkten hinzu
# OnAccessIncludePath /home
# Verhinderung funktioniert nicht mit OnAccessMountPath.
# Es funktioniert mit OnAccessIncludePath, solange /usr und /etc nicht enthalten sind.
# Das Einschließen von /var beim Aktivieren der Verhinderung wird ebenfalls nicht empfohlen, weil
# Dies würde die Paketinstallation um den Faktor 1000 verlangsamen.
OnAccessPrevention falsch
# Führen Sie Scans für neu erstellte, verschobene oder umbenannte Dateien durch
OnAccessExtraScanning true
# Schließen Sie die UID des Scanners selbst von der Überprüfung aus, um Schleifen zu vermeiden
OnAccessExcludeUname clamav
# Optional auch root-eigene Prozesse ausschließen
# OnAccessExcludeRootUID wahr
# Geben Sie eine Aktion an, die ausgeführt werden soll, wenn clamav eine bösartige Datei erkennt
# Es ist auch möglich, einen Inline-Befehl anzugeben
VirusEvent /etc/clamav/virus-event.bash
# WARNUNG: Aus Sicherheitsgründen sollte clamd NIEMALS als Root ausgeführt werden.
# Frühere Anweisungen in diesem Wiki enthielten diese Zeile, entfernen Sie sie:
# Benutzer root # DIES ENTFERNEN
# Fügen Sie stattdessen Folgendes hinzu:
Benutzer clamav

Nächstes dem clamav Benutzer, -send als beliebiger Benutzer mit benutzerdefinierten Umgebungsvariablen über sudo auszuführen :

/etc/sudoers.d/clamav
clamav ALL = (ALL) NOPASSWD: SETENV: /usr/bin/notify-send 

Als nächstes erstellen Sie die Datei /etc/clamav/virus-event.bashund füge folgendes hinzu. Hiermit können Sie die Meldung ändern/angeben, wenn ein Virus vom On-Access-Scanning-Service von clamd entdeckt wurde:

/etc/clamav/virus-event.bash
#!/bin/bash
PATH=/usr/bin
ALERT="Von Clamav erkannte Signatur: $CLAM_VIRUUSEVENT_VIRUSNAME in $CLAM_VIRUUSEVENT_FILENAME"
# Senden Sie eine Warnung an alle grafischen Benutzer.
für ADRESSE in /run/user/* ;  tun
    USERID=${ADDRESS#/run/user/}
    /usr/bin/sudo -u "#$USERID" DBUS_SESSION_BUS_ADDRESS="unix:path=$ADDRESS/bus" PATH=${PATH} \
        /usr/bin/notify-send -i dialog-warning "Virus gefunden!"  "$ALARM"
fertig

Starten Sie die clamav-daemon.service.

Standardmäßig clamonacc übergibt clamav die Namen der Dateien, auf die gerade zugegriffen wurde, zum Scannen. Dies ist ein Problem, da Dateien, auf die der clamav- Benutzer nicht zugreifen kann, auf diese Weise nicht gescannt werden können. Stattdessen ist es möglich, clamonacc (das immer als root ) anzuweisen, die Dateideskriptorübergabe zu verwenden. Bearbeiten clamav-clamonacc.servicemit den folgenden:

[Service] 
 ExecStart= 
 ExecStart=/usr/sbin/clamonacc -F --fdpass --log=/var/log/clamav/clamonacc.log 

Zuletzt müssen Sie die /aktivieren starten clamav-clamonacc.service.

Wenn Sie AppArmor Ablehnungen zu clamd , stellen Sie das Profil auf einen Nur-Beschweren-Modus ein:

# aa-beschwere dich