-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Le Mercredi 11 Décembre 2002 14:54, Alain Siani a écrit : > Je veux bien jeter un oeil a la doc :) > > Sophos est gratuit ? Non, mais VRAIMENT pas cher. Et bien. Et il tourne sous Linux, se met à jour toutes les nuits (J'ai un script qui fait ça, mais il ne doit pas être livré en standard) Je tourne néanmoins avec une démo depuis longtemps... J'ai pas encore fait les démarches.
La doc : - -------------------------------------------------------------------------> Postfix - AMaViS POSTFIX Récuperer le rpm (postfix-20001217-8 ou spérieur) sur http://rpmfind.net/linux/RPM ou http://fr2.rpmfind.net Préparation postfix et sendmail ne peuvent cohabiter en rpm sur la meme machine. Il faut donc enlever sendmail du serveur avant de pouvoir mettre postfix. Note : Il faut faire une sauvegarde des fichiers de configuration de sendmail : /etc/sendmail.cf /etc/aliases /etc/revaliases Pour enlever sendmail: # rpm -e sendmail Installation de postfix # rpm -Uvh postfix-xxxx.rpm De nombreux programmes font appel à sendmail via /usr/lib/sendmail qui n'est pas installé par Postfix. Il faut donc faire un lien: # ln -s /usr/sbin/sendmail /usr/lib/sendmail Configuration Les fichiers de configuration de postfix se trouvent dans /etc/postfix. La configuration de postfix se décompose en 2 fichiers: main.cf qui permet de configurer postfix proprement dit master.cf qui permet de configurer l'interaction de postfix avec d'éventuel process externe (serveur smtp, antivirus, etc.) Dans main.cf il faut modifier: mydomain : nom du domaine principal du serveur mynetworks : contient la liste des IP/reseaux qui sont autorisé a envoyer des mail a partir du serveur (pour l'anti-relay) myorigin : quand un utilisateur local envoie un mail, au lieu de mettre [EMAIL PROTECTED], postfix peut remplacer nommachine.domaine.top par un autre domaine (domain.top, par exemple) mydestination : liste des domaines mail gérés par le serveur (mail.domain.com, www.domain.com, domain.com, etc.) alias_map : emplacement du fichier d'alias (hash:/etc/postfix/aliases) alias_database : idem aliasmap sender_canonical_map : emplacement du fichier de revaliases (hash:/etc/postfix/revaliases) biff = no : pour éviter les messages d'alerte biff dans les logs (désactive la fonctionnalité) soft-bounce = YES Les fichiers aliases et revaliases sont à compiler avec postmap : # postmap hash:/etc/postfix/aliases # postmap hash:/etc/postfix/revaliases Lancement Le script de démarrage /etc/rc.d/init.d/postfix prend les mêmes arguments que le binaire /usr/sbin/postfix : # /etc/rc.d/init.d/postfix Usage: postfix {start|stop|restart|reload|abort|flush|check|status} Vérifier d'éventuelles erreurs dans /var/log/maillog Vérifier le lancement automatique au démarrage : # chkconfig --list postfix postfix 0:off 1:off 2:on 3:on 4:on 5:on 6:off Exemple de configuration [root@callisto /root]# egrep -v "^#|^$" /etc/postfix/main.cf queue_directory = /var/spool/postfix command_directory = /usr/sbin daemon_directory = /usr/libexec/postfix mail_owner = postfix mydomain = sous-domaine.domaine.fr myorigin = $mydomain mydestination = domaine.fr, sous-domaine.domaine.fr, machine.sous-domaine.domaine.fr sender_canonical_maps = hash:/etc/postfix/revaliases alias_maps = hash:/etc/postfix/aliases, hash:/var/mailman/data/aliases alias_database = hash:/etc/postfix/aliases, hash:/var/mailman/data/aliases mynetworks = 193.XXX.XXX.0/24, sous-domaine.domaine.fr,127.0.0.0/8 local_destination_concurrency_limit = 2 default_destination_concurrency_limit = 10 debug_peer_level = 2 debugger_command = PATH=/usr/bin:/usr/X11R6/bin xxgdb $daemon_directory/$process_name $process_id & sleep 5 content_filter= vscan: default_mailbox_size = 20480000 mailbox_size_limit = 20480000 message_size_limit = 20480000 biff = no [root@callisto /root]# AMaViS - A Mail Virus Scanner Récupérer AMaViS (amavisd-snapshot-200105xx ou supérieur) en tar.gz sur http://www.amavis.org Note : la version AMaViS/daemon est beaucoup plus rapide que la version AMaViS/perl Principe Les dernieres versions de postfix permettent d'utiliser un analyseur de contenu automatiquement grace a l'instruction content_filter de main.cf (dans notre cas, c'est AMaViS). A la réception d'un mail, postfix fait appel à AMaViS, puis AMaViS le ré-injecte en smtp à postfix qui ensuite le redistribut. Si un virus est trouvé, AMaViS le met en quarantaine et envoie les mails de notifications. Antivirus Les antivirus doivent être installés avant AMaViS car le ./configure d'AMaViS détecte les antivirus et les configure ad-hoc. McAfee Viruscan: ??? sophos: http://www.sophos.fr ...Plein d'autres .... Compilation / installation Décompresser le .tar.gz d'amavis dans un repertoire temporaire Préparation AMaViS requiert des modules Perl (à prendre sur http://kobesearch.cpan.org), et à installer dans cet ordre : Archive-Tar Compress-Zlib Archive-Zip Bundle-libnet IO-stringy Syslog MIME-Base64 libnet MailTools MIME-tools version 5.313 or better (!!) Convert-TNEF 0.06 or better (!!) Convert-UUlib Pour chaque module Perl : # tar xf <module>.tar # cd <module> # perl Makefile.PL # make # make test # make install (On peut aussi lancer perl avec cette ligne de commande: # perl -MCPAN -e shell Puis faire: CPAN> i nom_du_module Pour avoir de l'info sur le nom exact des modules, puis CPAN>install nom_module ) AMaViS requiert également des archiveurs (à prendre sur http://rpmfind.net/linux/RPM) : lha zoo unrar unarj Compilation # ./configure --enable-postfix --enable-syslog --enable-smtp \ --with-amavis-user=vscan -with-warnrecip Installation Ajouter un utilisateur 'vscan' sans droits administrateur: # groupadd -g 56 vscan # adduser -u 56 -g 56 -c "Utilisateur amavis" -d /var/amavis \ -s /bin/bash -n vscan Puis pour finir: # make install Mise en route AMaViS se lance par la commande : su - vscan -c "/usr/sbin/amavisd >/dev/null 2>&1" Le script de lancement /etc/rc.d/init.d/amavis permet de démarrer l'antivirus au boot de la machine. Il doit être lancer avant Postfix (et arréter après Postfix) : # chkconfig --level 2345 amavis on # chkconfig --level 016 amavis off # chkconfig --list amavis amavis 0:off 1:off 2:off 3:off 4:off 5:off 6:off # cd /etc/rc.d/ # ls -l */*amavis* */*postfix* ls -l */*amavis* */*postfix* -rwxr-xr-x 1 root root 1197 Dec 21 15:37 init.d/amavis -rwxr-xr-x 1 root root 1510 Jan 4 2001 init.d/postfix lrwxrwxrwx 1 root root 17 Oct 1 18:24 rc0.d/K30postfix -> ../init.d/postfix lrwxrwxrwx 1 root root 16 Jan 3 14:39 rc0.d/K31amavis -> ../init.d/amavis lrwxrwxrwx 1 root root 17 Oct 1 18:24 rc1.d/K30postfix -> ../init.d/postfix lrwxrwxrwx 1 root root 16 Jan 3 14:39 rc1.d/K31amavis -> ../init.d/amavis lrwxrwxrwx 1 root root 16 Oct 9 09:27 rc2.d/S65amavis -> ../init.d/amavis lrwxrwxrwx 1 root root 17 Oct 1 18:24 rc2.d/S80postfix -> ../init.d/postfix lrwxrwxrwx 1 root root 16 Oct 9 09:27 rc3.d/S65amavis -> ../init.d/amavis lrwxrwxrwx 1 root root 17 Oct 1 18:24 rc3.d/S80postfix -> ../init.d/postfix lrwxrwxrwx 1 root root 16 Oct 9 09:27 rc4.d/S65amavis -> ../init.d/amavis lrwxrwxrwx 1 root root 17 Oct 1 18:24 rc4.d/S80postfix -> ../init.d/postfix lrwxrwxrwx 1 root root 16 Oct 9 09:27 rc5.d/S65amavis -> ../init.d/amavis lrwxrwxrwx 1 root root 17 Oct 1 18:24 rc5.d/S80postfix -> ../init.d/postfix lrwxrwxrwx 1 root root 17 Oct 1 18:24 rc6.d/K30postfix -> ../init.d/postfix lrwxrwxrwx 1 root root 16 Jan 3 14:39 rc6.d/K31amavis -> ../init.d/amavis Ne pas négliger de faire cette vérification. Cela évite quelques soucis au redémarrage du serveur !!! Pour lancer AMaViS avant PostFix, vérifier dans les scripts de démarrage (/etc/rc.d/init.d) que le numéro d'ordre de lancement pour AMaVis soit inférieur à celui de PostFix et inverssement pour l'arrêt : # grep chkconfig init.d/amavis init.d/postfix init.d/amavis:# chkconfig: - 65 31 init.d/postfix:# chkconfig: 2345 80 30 Configuration d'amavisd Le script configure a créé un fichier /etc/amavisd.conf qui convient à toutes les configurations. le fichier /etc/amavisd.conf doit être lisible par le user vscan.A priori, il doit appartenir à vscan ! # ll /etc/amavisd.conf - -rw------- 1 vscan root 2903 Dec 19 13:11 /etc/amavisd.conf Post installation Il convient de : programmer le nettoyage automatique des mails infectés collectés par AMaViS dans /var/amavis/virusmails avec le script amavisclean.sh AMaViS conserve les fichiers infectés pour anayle. Mais ceux-ci peuvent faire plusieurs Ko voire plusieurs Mo. D'où l'importance de les nettoyer régulièrement. # crontab -l | grep "amavis" 0 5 * * 1 /usr/local/bin/amavisclean.sh programmer la rotation des logs d'AMaViS : # cat /etc/logrotate.d/amavisd /var/amavis/amavis.log { missingok compress size=200k } Configuration de Postfix & AMaViS Elle consiste en l'ajout de quelques lignes de paramètres dans les fichiers de configuration de postfix (main.cf et master.cf) : Ajouter dans /etc/postfix/main.cf : content_filter = vscan: Ajouter dans /etc/postfix/master.cf : # ========================================================================== # service type private unpriv chroot wakeup maxproc command + args # (yes) (yes) (yes) (never) (50) # ========================================================================== vscan unix - n n - 10 pipe user=vscan argv=/usr/sbin/amavis ${sender} ${recipient} localhost:10025 inet n - n - - smtpd -o content_filter= McAfee Viruscan Récupérer le programme d'installation : vlnx414l.tar.Z (Obsolète... Google est ton ami ! Je tourne personnellement avec des demos depuis... heu... Longtemps.) Extraire les fichiers dans un répertoire temporaire et lancer l'installeur : # mkdir /tmp/installuvscan # cd /tmp/installuvscan # tar zxvf /usr/local/src/vlnx414l.tar.Z scan.dat names.dat clean.dat readme.txt license.txt reseller.txt unxadmin.pdf uvscan.1 liblnxfv.so uvscan messages.dat license.dat install-uvscan uninstall-uvscan # ./install-uvscan Which directory do you want to install into? [/usr/local/uvscan] /usr/local/uvscan doesn't exist. Create it? [y]/n y Do you want a link to uvscan placed in /usr/local/bin [y]/n y Do you want a link to liblnxfv.so placed in /usr/local/lib [y]/n y Do you want a link to uvscan.1 placed in /usr/local/man/man1 [y]/n y Installation completed. Do you want to perform a scan of all filesystems y/[n] # cd # /bin/rm -rf /tmp/installuvscan Il faut ensuite programmer la mise à jour automatique des signatures de virus. Le programme update_vscan.sh permet de récupérer et installer ces mises à jour. # crontab -l | grep "uvscan" 0 5 * * 1 /usr/local/uvscan/update_vscan.sh Auteurs: Arnaud Abélard Hervé Pinvidic (Université de Nantes) - -------------------------------------------------------------------> Et voilou ! Merci aux auteurs, des collègues ! Il manque encore des choses, mais déjà, ça fait du boulot, on fera le WebMail après :-) - -- ,, ( °> Nicolas Costes /||\ IUT de La Roche / Yon ( ^ ) [EMAIL PROTECTED] ^ ^ http://luxregina.free.fr -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.7 (GNU/Linux) iD8DBQE991ImDeRAHGw6DGURArDdAJ0cney3F1/g2R449+E0Tdx4Rurd1gCfZ65Q cmeKNsTOnCcfrToz+p3BYU8= =FdcS -----END PGP SIGNATURE-----
Vous souhaitez acquerir votre Pack ou des Services MandrakeSoft? Rendez-vous sur "http://www.mandrakestore.com"