« Mise en place d'un serveur de mail complet » : différence entre les versions

Aller à la navigation Aller à la recherche
Ligne 815 : Ligne 815 :
Si vous n'avez eu aucune erreur vous pouvez relancer postfix :
Si vous n'avez eu aucune erreur vous pouvez relancer postfix :
<pre>/etc/init.d/postfix restart</pre>
<pre>/etc/init.d/postfix restart</pre>
=amavis=
Amavis permet de scanner facilement les mails avec toutes sortes d'outils externes tel que spamassassin et clamav.
Installez amavis :
<pre>aptitude install amavisd-new</pre>
Il est possible que vous rencontriez l'erreur suivante :
<pre>
Paramétrage de amavisd-new (2.4.2-6.1) ...
Creating/updating amavis user account...
Starting amavisd:  The value of variable $myhostname is "CSNU", but should have been
  a fully qualified domain name; perhaps uname(3) did not provide such.
  You must explicitly assign a FQDN of this host to variable $myhostname
  in amavisd.conf, or fix what uname(3) provides as a host's network name!
(failed).
invoke-rc.d: initscript amavis, action "start" failed.
dpkg : erreur de traitement de amavisd-new (--configure) :
le sous-processus post-installation script a retourné une erreur de sortie d'état 1
Des erreurs ont été rencontrées pendant l'exécution :
amavisd-new
E: Sub-process /usr/bin/dpkg returned an error code (1)
Échec de l'installation d'un paquet. Tentative de réparation :
Paramétrage de amavisd-new (2.4.2-6.1) ...
Creating/updating amavis user account...
addgroup: Starting amavisd:  The value of variable $myhostname is "CSNU", but should have been
a fully qualified domain name; perhaps uname(3) did not provide such.
You must explicitly assign a FQDN of this host to variable $myhostname
  in amavisd.conf, or fix what uname(3) provides as a host's network name!
(failed).
invoke-rc.d: initscript amavis, action "start" failed.
dpkg : erreur de traitement de amavisd-new (--configure) :
le sous-processus post-installation script a retourné une erreur de sortie d'état 1
Des erreurs ont été rencontrées pendant l'exécution :
amavisd-new
</pre>
Cette erreur survient parce que votre fichier <code>/etc/hostname</code> ne contient pas un domaine FQDN (un domaine écrit correctement).
Deux possibilités s'offrent à vous : modifier le fichier hostname pour que le domaine soit FQDN (exemple : csnu.org), ou alors, ajoutez la ligne suivante dans <code>/etc/amavis/conf.d/50-user</code> :
<pre>$myhostname = "csnu.org";</pre>
Il va maintenant falloir modifier <code>/etc/postfix/main.cf</code> pour que postfix fasse transiter ses mails par amavis. Ajoutez y les lignes suivantes :
<pre>
# Use amavis
content_filter = amavis:[127.0.0.1]:10024
receive_override_options = no_address_mappings
</pre>
De cette manière, postfix va adresser tous les mails entrant à amavis sur le port local 10024.
Il faut encore modifier le fichier <code>/etc/postfix/master.cf</code> afin d'y configurer amavis et de définir le port sur lequel postfix va recevoir les mails provenant de amavis :
<pre>
# Amavis filter
amavis unix -      -      -    -      10  smtp
    -o smtp_data_done_timeout=1200
    -o smtp_send_xforward_command=yes
    -o disable_dns_lookups=yes
    -o max_use=20
    -o smtp_bind_address=127.0.0.1
   
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
</pre>
Amavis est configuré. Il ne reste plus qu'à relancer les services :
<pre>
/etc/init.d/amavis restart
/etc/init.d/postfix restart
</pre>
Si amavis semble utiliser trop de ressource, vous pouvez diminuer le nombre maximum de child. Ajoutez la directive <code>$max_servers = 2;</code> dans la configuration de amavis
==Taguer les mails contenant un virus==
Par défaut, amavis renvoi les mails contenant un virus vers l'adresse définie par <code>$virus_admin</code> (dans le fichier <code>/etc/amavis/conf.d/20-debian_defaults</code>). Vous voudrez peut-être comme moi que les utilisateurs reçoivent tout de même le message avec une alerte.
Pour que les mails contenant un virus arrivent jusqu'aux utilisateurs, il suffit de modifier la directive <code>$final_virus_destiny</code> du fichier <code>/etc/amavis/conf.d/20-debian_defaults</code> comme suit:
<pre>$final_virus_destiny      = D_PASS;</pre>
Enfin, ajoutez la ligne suivante dans <code>/etc/amavis/conf.d/20-debian_defaults</code> :
<pre>$subject_tag_maps_by_ccat{+CC_VIRUS} = [ '***INFECTED*** ' ];</pre>
=spamassassin=
==Mise en place de spamassassin==
4 203

modifications

Menu de navigation