Afin qu'apache sache le nom du serveur sur lequel il est installé (évite l'affichage de warnings)
-----------------------------------------------------------------
Ajouter la directive suivante à la fin du fichier /etc/apache2/apache2.conf :
ServerName "mail.fij.name"
Recharger la configuration d'apache :
# /etc/init.d/apache2 reload
===============================================================
= Installation d'une solution antispam/antivirus pour postfix = (amavis, spamassassin, clamav, pyzor, razor)
===============================================================
# aptitude install amavisd-new spamassassin clamav-daemon
# aptitude install libnet-dns-perl libmail-spf-perl pyzor razor
# aptitude install arj bzip2 cabextract cpio file gzip lha nomarch pax rar unrar unzip zip
Configuration de clamav
-----------------------
Ajouter l'utilisateur 'clamav' au groupe 'amavis' et vice versa pour que clamav puisse accéder aux fichiers scannés :
# adduser clamav amavis
# adduser amavis clamav
Configuration de spamassassin
-----------------------------
# vim /etc/default/spamassassin
Trouver les lignes ENABLED=0 et CRON=0, et remplacer les '0' par des '1':
ENABLED=1
CRON=1
Démarrer spamassassin:
# /etc/init.d/spamassassin start
Configuration d'amavis
----------------------
Activer la détection des spams et virus dans amavis en éditant /etc/amavis/conf.d/15-content_filter_mode :
# vim /etc/amavis/conf.d/15-content_filter_mode
Décommenter les lignes suivantes :
@bypass_virus_checks_maps = (
\%bypass_virus_checks, \@bypass_virus_checks_acl, \$bypass_virus_checks_re);
@bypass_spam_checks_maps = (
\%bypass_spam_checks, \@bypass_spam_checks_acl, \$bypass_spam_checks_re);
Indiquer à amavis le nom du serveur sur lequel il est installé :
# vim /etc/amavis/conf.d/05-node_id
Modifier la ligne :
$myhostname = "mail.fij.name";
Modifier les réglages par défaut du mainteneur debian :
Il n'est pas intéressant de stocker les spams dans le dossier d'amavis ni de répondre à des spams par des 'bounces'.
De manière générale, il ne faut pas répondre aux spams, même par des messages d'avertissement ou d'erreur.
# vim /etc/amavis/conf.d/20-debian_defaults
Modifier quatres lignes afin d'obtenir les lignes suivantes :
$syslog_priority = 'info';
$QUARANTINEDIR = "/var/virusmails";
$final_spam_destiny = D_DISCARD;
$sa_spam_subject_tag = undef;
Créer un dossier où amavis ira placer les mails/spams/virus lorsqu'ils auront été scannés:
# mkdir /var/virusmails
# chown -R amavis:amavis /var/virusmails/
Redémarrer amavis:
# /etc/init.d/amavis restart
Configurer postfix afin qu'il puisse s'interfacer avec amavis :
---------------------------------------------------------------
# vim /etc/postfix/main.cf
Ajouter
cette ligne avant les lignes concernant zarafa (vous pouvez laisser un
commentaire indiquant qu'il s'agit d'une ligne ajoutée qui sert à
interfacer amavis avec postfix) :
content_filter = smtp-amavis:[127.0.0.1]:10024
Modifier le fichier 'master.cf' (ensemble des processus lancés et gérés par postfix).
Amavis recevra les mails par postfix sur le port 10024 et les renverra une fois scannés sur le port 10025.
# vim /etc/postfix/master.cf
Ajouter en fin de fichier (bien conserver l'identation des '-o') :
smtp-amavis
unix -
-
-
-
2 smtp
-o smtp_data_done_timeout=1200
-o smtp_send_xforward_command=yes
-o disable_dns_lookups=yes
-o max_use=20
127.0.0.1:10025
inet n
-
-
-
- smtpd
-o content_filter=
-o local_recipient_maps=
-o relay_recipient_maps=
-o smtpd_restriction_classes=
-o smtpd_delay_reject=no
-o smtpd_client_restrictions=permit_mynetworks,reject
-o smtpd_helo_restrictions=
-o smtpd_sender_restrictions=
-o smtpd_recipient_restrictions=permit_mynetworks,reject
-o smtpd_data_restrictions=reject_unauth_pipelining
-o smtpd_end_of_data_restrictions=
-o mynetworks=127.0.0.0/8
-o smtpd_error_sleep_time=0
-o smtpd_soft_error_limit=1001
-o smtpd_hard_error_limit=1000
-o smtpd_client_connection_count_limit=0
-o smtpd_client_connection_rate_limit=0
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks
Recharger la configuration de postfix, redémarrer clamav et mettre à jour clamav :
# /etc/init.d/postfix reload
# /etc/init.d/clamav-daemon restart
# freshclam
Vérification qu'amavis est bien à l'écoute sur le port 10024 :
# aptitude install telnet
# telnet localhost 10024
'^]' pour clôturer la connection
'quit' pour quitter telnet
Commandes utiles pour vérifier les logs du serveur mail :
# cat /var/log/mail.log
# tail -f /var/log/mail.log
Initialiser Razor
-----------------
# razor-admin -create
# razor-admin -register -l
# razor-admin -discover
# su amavis -c 'razor-admin -create'
# su amavis -c 'razor-admin -register -l'
# su amavis -c 'razor-admin -discover'
Initialiser Pyzor
-----------------
# cd /usr/bin
# wget http://www200.pair.com/mecham/spam/pyzor.deprecation.txt
# cp pyzor pyzor.original
# aptitude install patch
# patch pyzor <pyzor.deprecation.txt
# pyzor discover
# su amavis -c 'pyzor discover'
# pyzor ping
# su amavis -c 'pyzor ping'
Lister de façon récursive tous les fichiers contenus dans le répertoire 'home' d'amavis :
# ls -alhR /var/lib/amavis/
Ils doivent bien appartenir à l'utilisateur et au groupe système créés pour amavis.
=============================================================================
= Configurer apache pour un accès HTTPS (SSL, port 443) au webmail de zarafa =
=============================================================================
# a2enmod ssl
Copier le fichier 'zarafa-ssl' dans /etc/apache2/sites-enabled/
Effacer les autres fichiers zarafa-* (liens symboliques) de ce répertoire.
# /etc/init.d/apache2 restart
=============
= Exercices =
=============
-
Installer mailgraph et queuegraph (cgi serveur web : ils génèrent des
statistiques sous forme de graphes à partir des logs du serveur mail
[mails reçus, envoyés, refusés, considérés comme spam ; mails se
trouvant dans les queues de postfix, ...])
- Configurer POPS et IMAPS pour zarafa (voir le manuel de l'administrateur).