MailScanner/Sendmail/SpamAss assin/Sophos/ClamAV
Transcription
MailScanner/Sendmail/SpamAss assin/Sophos/ClamAV
MailScanner/Sendmail/SpamAss assin/Sophos/ClamAV Kai Poutrain, JT-SIARS 2005 • http://www.sng.ecs.soton.ac.uk/mailscanner/ Sendmail (SMTP) Sendmail (local) mqueue /var/mail Sendmail (SMTP) Sendmail (local) mqueue.in /var/mail mqueue MailScanner Sendmail (SMTP) Sendmail (local) mqueue.in mqueue MailScanner /var/mail SpamAssassin Sendmail (SMTP) Sophos Sendmail (local) mqueue.in MailScanner Sendmail (SMTP) Sophos ClamAV /var/mail mqueue SpamAssassin Sendmail (local) mqueue.in mqueue MailScanner /var/mail SpamAssassin Installation • • • • • Modules Perl Installation de MailScanner Installation de Sophos Configuration de MailScanner pour Sophos Configuration de Sendmail Modules PERL IO-stringy MIME-Base64 MailTools File-Spec HTML-Tagset HTML-Parser Sous Solaris, en cas d’erreur lors du make, supprimer dans le Makefile : -x03 -xdepend -KPIC Modules PERL (suite) MIME-tools: Décompacter l’archive tar.gz, et appliquer les 4 patches : patch -p0 < mime-tools-patch.txt patch -p0 < mime-tools-patch2.txt patch -p0 < mime-tools-patch3.txt patch -p0 < mime-tools-patch4.txt cd MIME-tools-5.411 perl Makefile.PL make make test make install Modules PERL (suite 2) File-Temp Convert-TNEF Net::CIDR : perl -MCPAN -e 'install Net::CIDR' Installation de MailScanner Télécharger la dernière version MailScanner-x.xx-x.tar.gz, dans /opt cd /opt tar xzf MailScanner-x.xx-x.tar.gz ln -s MailScanner-x.xx-x MailScanner Installation de spamassassin perl -MCPAN -e shell o conf prerequisites_policy ask install Mail::SpamAssassin quit [as root] Installation (et mise à jour) de Sophos wget ftp://login:[email protected]\ /sophos/unix/solaris.sparc.tar #sauvegarde de l’archive precedente set datedujour = `date +%d%m%y` cp solaris.sparc.tar /tmp mv solaris.sparc.tar solaris.sparc.tar.$datedujour #on garde une copie de la version precedente cp -R /opt/sophos /opt/sophos.$datedujour/ #installation… cd /tmp opt/MailScanner/bin/Sophos.install.solaris rm /tmp/solaris.sparc.tar #mise a jour des descriptions virales /opt/MailScanner/lib/sophos-autoupdate Module PERL Sophos-SAVI http://www.csupomona.edu/~henson/www/projects\ /SAVI-Perl/dist/ tar xzf SAVI-Perl-0.15.tar.gz cd SAVI-Perl-0.15 Modifier le Makefile : 'LIBS' => ['-L/opt/sophos/lib \ -R/opt/sophos/lib -lsavi'] Module PERL Sophos-SAVI (2) créer les liens suivants : [ -e /opt/sophos/lib/libsavi.so.2 ] && \ ln -sf libsavi.so.2 /opt/sophos/lib/libsavi.so [ -e /opt/sophos/lib/libsavi.so.3 ] && \ ln -sf libsavi.so.3 /opt/sophos/lib/libsavi.so perl Makefile.PL Supprimer "-KPIC" and "-xO3 -xdepend!» du Makefile Make make test make install Plannification des màj des descriptions virales Dans la crontab : /opt/MailScanner/bin/update_virus_scanners Ou plus spécifiquement : /opt/MailScanner/lib/sophos-autoupdate Configuration de MailScanner Dans /opt/MailScanner/etc/MailScanner.conf, remplacer Virus Scanners = none par Virus Scanners = sophossavi Configuration de Sendmail Création de la seconde file d’attente : mkdir chown chgrp chmod /var/spool/mqueue.in root /var/spool/mqueue.in bin /var/spool/mqueue.in u=rwx,g=rx,o-rwx /var/spool/mqueue.in Répertoires de travail de MailScanner : mkdir /var/spool/MailScanner mkdir /var/spool/MailScanner/incoming mkdir /var/spool/MailScanner/quarantine Configuration de Sendmail (scripts de démarrage) Dans : /etc/init.d/sendmail : /usr/lib/sendmail -bd -OPrivacyOptions=noetrn \ -ODeliveryMode=queueonly \ -OQueueDirectory=/var/spool/mqueue.in & /usr/lib/sendmail -q15m & /usr/lib/sendmail -Ac -q15m & /opt/MailScanner/bin/check_mailscanner Dans la crontab éventuellement : #controle de mailscanner : 0,20,40 * * * * [ -x /opt/MailScanner/bin/check_mailscanner ] && /opt/MailScanner/bin/check_mailscanner >/dev/null 2>&1 Upgrade de MailScanner cd /opt wget de la dernière version tar -zxvf de l’archive MailScanner-4.25-14.tar.gz (par exemple) Reporter la config de l’ancienne version dans la nouvelle cd /opt/MailScanner-4.25-14 cp etc/MailScanner.conf etc/MailScanner.conf.sav Modifier /opt/MailScanner-4.25-14/etc/MailScanner.conf … Upgrade de MailScanner (2) #Ajout du numero de version apres MailScanner pour travailler sur la nouvelle : %report-dir% = /opt/MailScanner-4.25-14/etc/reports/en %etc-dir% = /opt/MailScanner-4.25-14/etc et %rules-dir% = /opt/MailScanner-4.25-14/etc/rules Upgrade de MailScanner (3) #On travaille sur une file d'attente entrante perso #(note : la file d'attente sortante est toujours la meme, #De cette maniere les messages sont delivres normalement #apres le scan : Incoming Queue Dir = /var/spool/mqueue.in.test #On utilise un PID file different : PID file = /opt/MailScanner/var/MailScanner.pid.test Upgrade de MailScanner (4) #on logge les messages via local5 : Syslog Facility = local5 Dans bin/MailScanner, modifier la premiere ligne pour ajouter le numero de version a MailScanner : #!/usr/local/bin/perl -I/opt/MailScanner-4.25-14/lib Upgrade de MailScanner (5) Création de la nouvelle file d’attente pour les tests : mkdir /var/spool/mqueue.in.test chown root:bin /var/spool/mqueue.in.test chmod 750 /var/spool/mqueue.in.test Pour faire les tests, placer les mails dans /var/spool/mqueue.in.test : on lance une instance de sendmail en "queueonly" sur le port 26 : /usr/lib/sendmail -bd -oOport=26 \ -ODeliveryMode=queueonly \ -OQueueDirectory=/var/spool/mqueue.in.test Upgrade de MailScanner (6) Lancement de MailScanner : ./MailScanner /opt/MailScanner-4.25-14\ /etc/MailScanner.conf Upgrade de MailScanner (7) Activation permanente : tuer le MailScanner de test et sendmail en écoute sur le port 26 mv etc/MailScanner.conf.sav etc/MailScanner.conf rm /opt/MailScanner ln -s /opt/MailScanner-newversion /opt/MailScanner /etc/init.d/sendmail stop /etc/init.d/sendmail start Éventuellement : pkill MailScanner /opt/MailScanner/bin/check_mailscanner Installation de MailScanner (nouvelle formule) cd /opt wget http://www.sng.ecs.soton.ac.uk/mailscanner/files\ /4/tar/MailScanner-install-4.37.7-1.tar.gz tar -zxvf MailScanner-install-4.37.7-1.tar.gz cd MailScanner-install-4.37.7-1 ./install.sh Installation de ClamAV L'installation est realisee avec le prefixe par defaut (/usr/local), ce qui correspond aussi à la configuration de MailScanner. Lors de la premiere installation il faut creer un utilisateur et un groupe clamav : groupadd clamav useradd -g clamav -s /bin/false -c "Clam Antivirus" clamav ./configure make make install Installation de ClamAV(2) Dans etc/MailScanner.conf Virus Scanners = clamav Mise a jour automatique de ClamAV, dans la crontab ajouter : /opt/MailScanner/lib/clamav-autoupdate Configuration de MailScanner Cf. etc/MailScanner.conf En-têtes des mails X-MailScanner: Found to be clean X-MailScanner-SpamCheck: spam, SpamAssassin (score=5.98, required 5,FORGED_MUA_OUTLOOK 1.58, MIME_MISSING_BOUNDARY 0.80, MSGID_FROM_MTA_SHORT 3.31, NO_REAL_NAME 0.28) X-MailScanner-SpamScore: sssss