Hallo Ihr Lieben,
hier eine kleine Anleitung wie Ihr folgende Grundkonfiguration auf die Beine stellt:
- Eingehende und ausgehende Emails mit ClamAV untersuchen und ggf in einen Quarantäne- Ordner schubsen (Kontact).
- Den Download- Ordner im OnAccess Modus überwachen und verdächtige Dateien in einen Quarantäne Ordner schubsen
1. Grundkonfiguration
Leider wird clamd nicht out of the box starten wegen Socketproblemen. Auch wird sich die Datenbank des Scanners nicht aktualisieren wegen einem zu geringen TimeOut. Auch die Verhaltenskonfiguration ist per Standard nicht der Hit.... Das ändern wir als Erstes,
unter der Annahme daß
- clamd über den User sowie die Gruppe vscan läuft
- Die UID des Users vscan 65 ist
Mittels vi /etc/clamd.conf folgende Einträge sicherstellen:
## Logging
LogFile /var/log/clamav/logs
LogFileMaxSize 2M
LogTime yes
LogRotate yes
ExtendedDetectionInfo yes
## Dienst
LocalSocket /opt/clamd/clamd-socket
LocalSocketGroup vscan
## Addressen
TCPAddr 127.0.0.1
# Inkludiere IPV6
TCPAddr ::1
# User
User vscan
# Heuristik aktivieren
HeuristicScanPrecedence yes
AlertBrokenExecutables yes
AlertBrokenMedia yes
AlertEncrypted yes
AlertEncryptedArchive yes
AlertEncryptedDoc yes
AlertOLE2Macros yes
# email dateien
ScanMail yes
# OnAccess
OnAccessIncludePath /home/DEINNAME/Downloads
OnAccessExcludeUname vscan
OnAccessMaxFileSize 10M
OnAccessMaxThreads 10
OnAccessPrevention yes
OnAccessDenyOnError yes
OnAccessExtraScanning yes
OnAccessExcludeUID 65
Alles anzeigen
Dann die Logdatei anlegen, Verzeichnissrechte setzen und den Dienst aktivieren - mit folgenden Befehlen:
mkdir /var/log/clamav
touch /var/log/clamav/logs
chown -R vscan:vscan /var/log/clamav/logs
mkdir /opt/clamd/
touch /opt/clamd/clamd-socket
chown -R vscan:vscan /opt/clamd/
systemctl restart clamd
systemctl enable clamd
Damit Freshclam wieder Updates findet, den Connectiontimeout erhöhen mittels vi /etc/freshclam.conf
Dann manuell aktualisieren und den Dienst aktivieren
Aktivieren von OnAccess Scanning (Download Ordner)
Quarantäne Ordner anlegen, Das Startscript "StartClamavOnAccessScanner" anlegen, es mit Code befüllen und ausführbar machen:
mkdir ~/.Infected
cd ~/bin
mkdir system
cd system
vi StartClamavOnAccessScanner
chmod +x ./StartClamavOnAccessScanner
Im vorletzten Schritt, bei Anlage des Scripts, fütterst Du es mit dem folgenden Code:
#!/bin/bash
sleep 20s
sudo -u root /usr/sbin/clamonacc --move=/home/DEINNAME/.Infected
output=$(ps aux | awk '$11=="/usr/sbin/clamonacc"')
if [ ${#output} == 0 ]
then
kdialog --msgbox "ClamAV OnAccess Scanner konnte NICHT gestartet werden !"
else
kdialog --msgbox "ClamAV OnAccess Scanner überwacht den Download Ordner"
fi
Dann unter Yast → Sicherheit und Benutzer → Sudo einen Eintrag für den Befehl anlegen:
Nun kann ein Autostarteintrag für das Script angelegt und bei jedem Reboot erfolgreich ausgeführt werden:
Aktiviren des Mailscanners
Als Vorbereitung in den lokalen Mailordnern 1 Unterordner anlegen:
- Infected
Dann in KMail über Extras → Antivirus Assistent den Scanner auswählen und aktivieren. Danach die dazugehörigen Filter einrichten unter Eintellungen → Filter einrichten:
- Filter „Clam Antivirus Check“
- Reiter „Allgemein“ kann in den Standard Einstellungen belassen werden
- Im Reiter „Erweitert“ folgendes festlegen:
- Diesen Filter auf eingehende Nachrichten anwenden
- von allen Postfächern
- Diesen Filter vor dem Senden von Nachrichten anwenden
- Diesen Filter auf eingehende Nachrichten anwenden
- Filter „Virusbekämpfung“
- Reiter „Allgemein“
- Unter Filteraktion betroffene Emails in den erstellten Lokalordner „Infected“ schubsen lassen
- Im Reiter „Erweitert“ folgendes festlegen:
- Diesen Filter auf eingehende Nachrichten anwenden
- von allen Postfächern
- Diesen Filter vor dem Senden von Nachrichten anwenden
- Bearbeitung hier beenden, falls Filterbedingung zutrifft
- Diesen Filter auf eingehende Nachrichten anwenden
- Reiter „Allgemein“
Im letzten Schritt dann das involvierte Script optimieren:
vi /usr/bin/kmail_clamav.sh
TEMPFILE=`mktemp`
if [ $? != 0 ] ; then
TEMPFILE=`mktemp /tmp/kmail.XXXXXX`
fi
export TEMPFILE
cat > $TEMPFILE
# check for a running daemon
if [ "`ps -axo comm|grep clamd`" = "clamd" ]; then
chmod a+r $TEMPFILE
CLAMCOMANDO="clamdscan --stdout --no-summary"
else
CLAMCOMANDO="clamscan --stdout --no-summary"
fi
# analyze the message
if $CLAMCOMANDO $TEMPFILE | grep -q FOUND; then
echo "X-Virus-Flag: yes"
echo "X-Virus-Scanned: by ClamAV"
else
echo "X-Virus-Flag: no"
echo "X-Virus-Scanned: by ClamAV"
fi
cat $TEMPFILE
rm $TEMPFILE
Alles anzeigen
Ach ja: wenn Du permissions.secure aktiviert haben solltest, musst Du den User "Vscan" (nebst Deinem eigenen, was Du aber bereits getan haben wirst) in die User-Gruppe "Trusted" schieben.
So... Dann ein beherzter Neustart.
Du wirst hoffentlich mit einem PopUp Fenster begrüsst welches Dir sagt, daß Dein Download Ordner nun überwacht wird
Testen kannst Du die Abläufe auch - besorg Dir dazu eine "EICAR.COM" Testsignatur - das ist eine Textdatei.
Ich würde zusätzlich über ClamTK einen Cron anlegen, der täglich 1x Deinen Userordner scannt.
Das war hilfreich ?
Dann schenk mir doch ein Like