Postfix – Installer Amavis, SpamAssassin et ClamAV

août 13, 2015 1:25 Publié par Laissez vos commentaires

Bonjour à tous,

Si vous avez rigoureusement suivi le tuto
Debian – Installer un serveur mail Postfix vous avez un serveur Postfix opérationnel.

Nous allons maintenant sécuriser quelque peu notre serveur à l’aide du triumvirat Amavis, SpamAssassin et ClamAV :

Les sources

Téléchargeons et installons les paquets nécessaires

apt-get install amavisd-new spamassassin clamav clamav-daemon arj zoo nomarch cpio lzop cabextract apt-listchanges libauthen-sasl-perl  libdbi-perl libmail-dkim-perl p7zip rpm unrar-free libsnmp-perl libdbd-mysql-perl

Configuration

Ajoutons les lignes suivantes à la fin du fichier /etc/postfix/master.cf

smtp-amavis unix -      -       n     -       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    -       n       -       -     smtpd
    -o content_filter=
    -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 smtpd_restriction_classes=
    -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
    -o local_header_rewrite_clients=

Ajoutons ensuite les 2 lignes suivantes au fichier /etc/postix/main.cf

content_filter = smtp-amavis:[127.0.0.1]:10024
receive_override_options = no_address_mappings

Décommenter les lignes suivantes du fichier /etc/amavis/conf.d/15-content_filter_mode

@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);

Configuration de la quarantaine

Création du dossier quarantaine

mkdir /var/spool/virusmails
chown amavis:amavis /var/spool/virusmails

Configuration des variables

Fichier /etc/amavis/conf.d/50-user (ce fichier vient surcharger les autres fichiers de conf, vous pouvez donc y personnaliser les variables )

use strict;

#
# Place your configuration directives here.  They will override those in
# earlier files.
#
# See /usr/share/doc/amavisd-new/ for documentation and examples of
# the directives you can use in this file
#


$sa_spam_subject_tag = '***SPAM*** ';


# Prevent spams from automatically rejected by mail-server
#$final_spam_destiny = D_DISCARD;
$final_spam_destiny  = D_PASS;

@lookup_sql_dsn = (
['DBI:mysql:database=postfix;host=192.168.1.2;port=3306',
'login',
'password']);
$sql_select_policy = 'SELECT domain FROM domain WHERE CONCAT("@",domain) IN (%k)';




$QUARANTINEDIR = '/var/spool/virusmails';



#------------ Do not modify anything below this line -------------
1;  # ensure a defined return

Filtrage des emails sur tous les domaines virtuels
nano /etc/amavis/conf.d/05-domain_id

#@local_domains_acl = ( ".$mydomain" );
@local_domains_maps = ( ["."] );

Gestion des permissions entre ClamAV et Amavis :

nano /etc/clamav/clamd.conf
AllowSupplementaryGroups true

Mise à jour auto de Spamassassin :

sa-update -D

Fichier /etc/default/spamassassin

ENABLED=1
CRON=1

Ajoutons l’utilisateur clamav au group amavis :

adduser clamav amavis

Il ne reste plus qu’à redémarrer tous les services!

service spamassassin start
service amavis restart
service clamav-daemon restart
service postfix restart

Terminé!

PS :

Vous pouvez tester la config en envoyant un mail ave la chaine
XJS*C4JDBQADN1.NSBN3*2IDNEN*GTUBE-STANDARD-ANTI-UBE-TEST-EMAIL*C.34X dans le corps du message.

Classés dans :

Cet article a été écrit par admin

Laisser un commentaire