Heute werfen wir einen Blick auf die Antivirensoftware ClamAV und wie Sie damit Ihren Server oder Desktop schützen können. Ich werde Ihnen zeigen, wie Sie ClamAV konfigurieren, um alle System-, Website- und E-Mail-Dateien täglich zu scannen und Sie per E-Mail zu benachrichtigen, falls ein Virus entdeckt wird. Für diejenigen, die ClamAV nicht kennen:ClamAV ist eine Open-Source-Antivirus-Softwarelösung, die für alle Linux-Distributionen verfügbar ist. Eine der Anforderungen dieses Handbuchs ist, dass Ihr Server bereits über einen funktionierenden E-Mail-Dienst verfügt.
Dieses Tutorial funktioniert gut unter Debian Systemen, sollte aber mit Ubuntu kompatibel sein auch Systeme.
Installation und Konfiguration
Zuerst führen wir den Befehl aus, um Clamav und ein Tool zum Versenden von E-Mail-Benachrichtigungen zu installieren.
apt-get update && apt-get install clamav clamav-freshclam heirloom-mailx
Stellen Sie sicher, dass die Virendefinition mit dem folgenden Befehl aktualisiert wird:
service ClamAV-freshclam start
Standardmäßig sucht ClamAV stündlich nach neuen Virendefinitionen. Wenn Sie diesen Parameter ändern möchten, können Sie die Datei /etc/clamav/freshclam.conf.
bearbeitennano /etc/clamav/freshclam.conf
Und ändern Sie die folgende Zeile:
# Check for new database 24 times a day Checks 24
zu
# Check for new database 1 times a day Checks 1
In diesem Fall erfolgt die Überprüfung nur einmal täglich. Ich empfehle Ihnen, 24 Mal am Tag zu gehen.
Um die Virendefinitionen manuell zu aktualisieren, können Sie Folgendes ausführen:
freshclam -v
Aktivieren Sie die Benachrichtigung und planen Sie den Scan
Ändern Sie im folgenden Skript die Variable DIRTOSCAN, um die Verzeichnisse anzugeben, die Sie scannen möchten.
Wir erstellen die Datei /root/clamscan_daily.sh
nano /root/clamscan_daily.sh
und wir fügen den folgenden Code ein:
#!/bin/bash LOGFILE="/var/log/clamav/clamav-$(date +'%Y-%m-%d').log"; EMAIL_MSG="Please see the log file attached."; EMAIL_FROM="[email protected]"; EMAIL_TO="[email protected]"; DIRTOSCAN="/var/www /var/vmail"; for S in ${DIRTOSCAN}; do DIRSIZE=$(du -sh "$S" 2>/dev/null | cut -f1); echo "Starting a daily scan of "$S" directory. Amount of data to be scanned is "$DIRSIZE"."; clamscan -ri "$S" >> "$LOGFILE"; # get the value of "Infected lines" MALWARE=$(tail "$LOGFILE"|grep Infected|cut -d" " -f3); # if the value is not equal to zero, send an email with the log file attached if [ "$MALWARE" -ne "0" ];then # using heirloom-mailx below echo "$EMAIL_MSG"|mail -a "$LOGFILE" -s "Malware Found" -r "$EMAIL_FROM" "$EMAIL_TO"; fi done exit 0
Sie können die beiden Variablen EMAIL_FROM und EMAIL_TO ändern, um Ihre gewünschten E-Mail-Adressen widerzuspiegeln, und die Liste der zu scannenden Verzeichnisse in der Variable DIRTOSCAN ändern.
Speichern Sie die Datei mit ( ctrl+o ) und ändern Sie die Berechtigung wie folgt:
chmod 0755 /root/clamscan_daily.sh
Aktivieren Sie nun die tägliche Ausführung des Skripts, indem Sie einen Symlink im Verzeichnis /etc/cron.daily/ erstellen:
ln /root/clamscan_daily.sh /etc/cron.daily/clamscan_daily
Jetzt sollten Sie in der Lage sein, einmal täglich die E-Mail-Benachrichtigung über Viren oder Malware in Ihren E-Mail-Dateien oder Websites zu erhalten. ClamAV scannt auch den Inhalt von PHP-Dateien auf das Vorhandensein von Malware oder anderen potenziell schädlichen Inhalten.
Testen Sie das Skript
In dieser Konfiguration führt ClamAV keine Aktionen mit den gefundenen Viren durch, sondern meldet sie nur. Also keine Sorge, es wird nichts gelöscht oder verändert. Um das Skript zu testen, führen Sie einfach Folgendes aus:
/root/clamscan_daily.sh
Nachdem der Befehl beendet ist, gibt es zwei mögliche Zustände:
- Clamav hat einen Virus gefunden:In diesem Fall erhalten Sie eine E-Mail mit dem angehängten Protokoll in Ihrem Posteingang.
- Clamav hat nichts gefunden, oder etwas geht schief. In diesem Fall müssen Sie überprüfen, was das Protokoll sagt. Um die Protokolle zu überprüfen, sollten Sie /var/log/clamav/
eincheckenIch hänge ein kleines Protokollbeispiel an, damit Sie wissen, was Sie lesen sollten:
Starting a daily scan of /var/www directory. Amount of data to be scanned is 36G. Mon Jun 15 13:17:14 CEST 2015 ----------- SCAN SUMMARY ----------- Known viruses: 3841819 Engine version: 0.98.4 Scanned directories: 47944 Scanned files: 316827 Infected files: 0 Data scanned: 17386.77 MB Data read: 34921.59 MB (ratio 0.50:1) Time: 1432.747 sec (23 m 52 s) Mon Jun 15 13:41:06 CEST 2015 ------------------------------------------------------ ------------------------------------------------------ Starting a daily scan of /var/vmail directory. Amount of data to be scanned is 7.0G. Mon Jun 15 13:41:27 CEST 2015 /var/vmail/domain.tld/info/Maildir/.Cestino/cur/1386677288.M361286P15524.domain.tld,W=2675,S=2627:2,S: Heuristics.Phishing.Email.SpoofedDomain FOUND /var/vmail/domain.tld/info/Maildir/.Cestino/cur/1371451873.M697795P19793.domain.tld,W=5421,S=5353:2,S: Heuristics.Phishing.Email.SpoofedDomain FOUND /var/vmail/domain.tld/info/Maildir/.Cestino/cur/1390203133.M981287P17350.domain.tld,W=3223,S=3157:2,S: Heuristics.Phishing.Email.SpoofedDomain FOUND /var/vmail/domain.tld/info/Maildir/.Cestino/cur/1386677288.M361285P15524.domain.tld,W=2270,S=2227:2,S: Heuristics.Phishing.Email.SpoofedDomain FOUND
In diesem Fall hat ClamAV eine Phishing-E-Mail unter [email protected] gefunden, also erhalten Sie in diesem Fall auch die E-Mail.
Das ist alles!