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