Introductie
In dit artikel zullen we beschrijven hoe je ClamAV kunt configureren om inkomende en uitgaande mail te scannen op virussen in Plesk op CentOS 8. ClamAV is een open-source antivirus die word gebruikt in situaties zoals e-mailscannen, webscannen en eindpuntbeveiliging. Dit artikel zal je helpen bij het installeren en configureren van jouw server met ClamAV.
Vereisten
- VPS, Budget Dedicated Server of Dedicated Server met Plesk Obsidian (getest op 18.0.30) controlepaneel op CentOS 8.
- SSH root toegang tot de server.
Stap 1: Log in via SSH
Je moet via SSH ingelogd zijn als sudo of rootgebruiker. Lees dit artikel als je niet zeker weet hoe je verbinding moet maken.
Stap 2: Installeer EPEL repo
ClamAV is geïnstalleerd vanuit EPEL repo.
yum -y install epel-release
Stap 3: Installeer ClamAV en utilities
yum -y install clamav clamd clamav-milter
Stap 4: Pas SELinux aan
setsebool -P antivirus_can_scan_system 1
Stap 5: Verkrijg de antivirushandtekeningen
freshclam
Stap 6: Schakel freshclam in om virusdefinities automatisch te updaten
systemctl enable clamav-freshclam systemctl start clamav-freshclam
Stap 7: Configureer clamd
Clamd wordt gebruikt om daadwerkelijk op virussen te scannen. In onze voorbeeld wordt clamd genoemd door clamav-milter.
sed -i "s|^#LogFacility LOG_MAIL|LogFacility LOG_MAIL|g" /etc/clamd.d/scan.conf sed -i "s|^#LocalSocket\s.*|LocalSocket /run/clamd.scan/clamd.sock |g" /etc/clamd.d/scan.conf sed -i "s|^#ScanArchive yes|ScanArchive yes|g" /etc/clamd.d/scan.conf sed -i "s|^#AlertEncrypted yes|AlertEncrypted yes|g" /etc/clamd.d/scan.conf sed -i "s|^#AlertEncryptedArchive yes|AlertEncryptedArchive yes|g" /etc/clamd.d/scan.conf sed -i "s|^#AlertEncryptedDoc yes|AlertEncryptedDoc yes|g" /etc/clamd.d/scan.conf sed -i "s|^#AlertBrokenExecutables yes|AlertBrokenExecutables yes|g" /etc/clamd.d/scan.conf
Stap 8: Schakel clamd in
systemctl enable [email protected] systemctl start [email protected]
Stap 9: Configureer ClamAV-milter
We brengen wijzigingen aan in ClamAV-milter en instrueren ClamAV-milter hoe het verbinding kunt maken met clamd. We configureren ook dat virussen geweigerd moeten worden.
sed -i "s|^Example|#Example|g" /etc/mail/clamav-milter.conf sed -i "s|^#ClamdSocket tcp:scanner.mydomain:7357|ClamdSocket unix:/run/clamd.scan/clamd.sock|g" /etc/mail/clamav-milter.conf sed -i "s|^#AddHeader Replace|AddHeader Replace|g" /etc/mail/clamav-milter.conf sed -i "s|^#LogFacility LOG_MAIL|LogFacility LOG_MAIL|g" /etc/mail/clamav-milter.conf sed -i "s|^#MilterSocket inet:7357|MilterSocket inet:3381@localhost|g" /etc/mail/clamav-milter.conf sed -i "s|^#OnInfected Quarantine|OnInfected Reject|g" /etc/mail/clamav-milter.conf
Stap 10: Schakel ClamAV-milter in
systemctl enable clamav-milter systemctl start clamav-milter
Stap 11: Controleer of ClamAV-milter actief is.
grep clamav-milter /var/log/maillog
Aug 28 14:41:41 s1.localhost clamav-milter[124614]: +++ Started at Fri Jun 19 16:43:51 2020
Stap 13: Herlaad postfix
postfix reload
Stap 14: Test ClamAV (lokaal)
Bij deze stap zullen we testen of de levering van virussen wordt afgewezen.
We beginnen met het downloaden van het eicar-testbestand. Dit is een onschadelijk bestand (geen echte virus) dat door een antivirus als virus gedetecteerd moet worden.
cd /tmp wget https://secure.eicar.org/eicar.com.txt
Vervolgens installeren we mutt voor het verzenden van een testmail met bijlage.
yum -y install mutt
Vervolgens moeten we mutt configureren om een juist van-adres te verzenden dat ook de bounce zal ontvangen. Vergeet niet het afzenderadres te wijzigen!
echo -e 'set from="[email protected]"' > /root/.muttrc echo -e 'set use_from=yes' >> /root/.muttrc echo -e 'set use_envelope_from=yes' >> /root/.muttrc
Daarna versturen we een e-mail, zorg ervoor dat je het adres van de ontvanger vervangt.
echo "This message contains a virus" | mutt -a eicar.com.txt -s "This is a virus" -- [email protected]
Je zou de bounce email in het e-maillogboek moeten kunnen zien. (vervang het afzenderadres)
grep "[email protected]" /var/log/maillog
De uitvoer moet er ongeveer zo uitzien:
Aug 28 14:55:41 s1 postfix/cleanup[27493]: 2305E300A6E: milter-reject: END-OF-MESSAGE from localhost[127.0.0.1]: 5.7.1 Command rejected; from=<[email protected]> to=<[email protected]> Aug 28 14:55:41 s1 postfix/cleanup[27493]: 2305E300A6E: to=<[email protected]>, relay=none, delay=0.19, delays=0.19/0/0/0, dsn=5.7.1, status=bounced (Command rejected)
Als je de hele transactiegreep op de ID wilt zien (vervang ID):
grep 2305E300A6E /var/log/maillog
De uitvoer moet er ongeveer zo uitzien:
Aug 28 14:55:41 s1.localhost postfix/pickup[22190]: 2305E300A6E: uid=0 from=<root> Aug 28 14:55:41 s1.localhost postfix/cleanup[27493]: 2305E300A6E: message-id=<[email protected]> Aug 28 14:55:41 s1.localhost postfix/cleanup[27493]: 2305E300A6E: milter-reject: END-OF-MESSAGE from localhost[127.0.0.1]: 5.7.1 Command rejected; from=<[email protected]> to=<[email protected]> Aug 28 14:55:41 s1.localhost postfix/cleanup[27493]: 2305E300A6E: to=<[email protected]>, relay=none, delay=0.17, delays=0.17/0/0/0, dsn=5.7.1, status=bounced (Command rejected) Aug 28 14:55:41 s1.localhost postfix/cleanup[27493]: 2305E300A6E: to=<[email protected]>, relay=none, delay=0.19, delays=0.19/0/0/0, dsn=5.7.1, status=bounced (Command rejected) Aug 28 14:55:41 s1.localhost postfix/bounce[27499]: 2305E300A6E: sender non-delivery notification: 4D46F300A91
Schoonmaak:
rm -f /tmp/eicar.com.txt /root/.muttrc yum remove mutt
Conclusie
Gefeliciteerd, je hebt ClamAV geconfigureerd om inkomende en uitgaande mail te scannen op virussen.
Geef een reactie