Date : 14/11/2007
OS : Linux Fedora 7
La version contenu dans les dépôts YUM ne fonctionnera pas, on installera donc clamav à partir des sources.
# Si nécessaire On vérifie que l'on n'a plus de programmes clamav installés
rpm -qa |grep clamav
yum remove clamav*
# Téléchargement et installation du programme et ses dépendances.
wget -c http://dag.wieers.com/rpm/packages/clamav/clamav-0.91.2-1.rf.src.rpm
rpm -i clamav-0.91.2-1.rf.src.rpm
yum install sendmail-devel
rpmbuild -bb /usr/src/redhat/SPECS/clamav.spec
rpm -i /usr/src/redhat/RPMS/i386/clamav-0.91.2-1.rf.i386.rpm
rpm -i /usr/src/redhat/RPMS/i386/clamav-db-0.91.2-1.rf.i386.rpm
rpm -i /usr/src/redhat/RPMS/i386/clamav-devel-0.91.2-1.rf.i386.rpm
# Mise à jour de la base de données virale (liste des virus connus)
freshclam
Installation de HTTP Anti Virus Proxy qui va filtrer les pages passant par le proxy.
# Téléchargement et installation du programme
wget -c http://www.server-side.de/download/havp-0.86.tar.gz
tar xvf havp-0.86.tar.gz
cd havp-0.86/
./configure --with-scanner=libclammav
make
make install
# copie des fichiers modèles sur le système
cp -rf etc/havp /etc/
cp etc/init.d/havp /etc/init.d/
# Edition du fichier de configuration de havp en décommantant l utilisation de clamav.
# Commenter : REMOVETHISLINE (sécurité pour savoir si vous avez bien éditer le fichier de configuration)
# Mettre : ENABLECLAMLIB true, CLAMDBDIR /var/clamav
vi /etc/havp/havp.config
# Cette commande ajoute automatiquement dans la fichier de configuration de squid :
echo "cache_peer 127.0.0.1 parent 8080 0 no-query no-digest no-netdb-exchange default" >> /etc/squid/squid.conf
# Configuration de havp
useradd havp
chown havp -R /var/log/havp/
chown havp -R /var/tmp/havp/
A partir de ce moment, le système est installé. Il ne reste plus qu'à tester si tout fonctionne correctement.
# Montage d'un disque virtuel pour havp à créer à chaque démarrage
dd if=/dev/zero of=/tmp/disk30M bs=1024k count=30
mke2fs -F /tmp/disk30M
mount -t ext2 -o loop,mand,noatime,async /tmp/disk30M /var/tmp/havp
# Lancement de havp
chown havp -R /var/tmp/havp/
havp -c /etc/havp/havp.config
Lancement automatique d'un script qui montera automatiquement le disque virtuel et lancera havp. Il est préférable de modifier le fichier service /etc/init.d/havp pour le mount du disque virtuel (cf commandes précédentes). Modifier le chemin de recherche de ficher config de havp (/etc/havp/havp.config). Penser aussi à faire un sleep 5 && umount /var/tmp/havp à l'arrêt du service havp. Ainsi en chargeant les services, tout sera opérationnel.
Ensuite :
/etc/init.d/havp start
Si vous ne voulez pas modifier le fichier service, vous pouvez ajouter le lancement de havp dans le fichier /etc/rc.local.
Comme configuré ici, il faut changer le port par défaut du proxy (squid = 3128 par défaut) sur la machine cliente (havp = 8080 par défaut).
On peut personnaliser la page d'alerte virus par défaut en éditant le fichiers html dans /usr/local/etc/havp/templates/.