Beruflich Dokumente
Kultur Dokumente
/etc/hosts :
127.0.0.1
spike.starbridge.org localhost.localdomain localhost spike
Cache DNS LocalRetour la table des matires
Le fonctionnement dun serveur de mail ncessite lutilisation intensive de requtes DNS
.
Pour des raisons de performances, il est trs fortement conseill dinstaller un cache
DNS local.
aptitude install unbound
La configuration de base sous Debian fournie un serveur cache (on peut bien sur
le configurer pour grer son domaine local voire son domaine public mais ce nest pa
s le sujet de cet article).
On modifie le /etc/resolv.conf pour pointer en local :
nameserver 127.0.0.1
search starbridge.org
on relance le serveur DNS :
/etc/init.d/unbound restart
Puis on teste la rsolution avec nslookup ou dig
nslookup
>server
doit retourner :
Default server: 127.0.0.1
Address: 127.0.0.1#53
puis :
>yahoo.fr
La rsolution doit se faire correctement.
On installe ensuite les outils pour la compilation, ils seront ncessaires tout au
long de linstallation :
aptitude install bzip2 gcc libpcre3-dev libpcre++-dev g++ libtool libmysqlclient
-dev make libssl-dev libmysqld-dev libdb-dev automake autoconf bzip2 lbzip2 libb
z2-1.0 libbz2-dev curl libcurl3 libcurl4-openssl-dev libexpat1 libexpat1-dev
On cre le dossier de configuration gnral :
mkdir /etc/caremail
Postfix et MysqlRetour la table des matires
La version stable de Debian (Jessie) utilise postfix 2.11.3.
La derniere version de Postfix est la 3.1
La version Testing de Debian utilise la version 3.1
Le fait de rester en 2.11 nimpacte pas les fonctionnalits mises en place dans le t
uto (retrocompatibilit), donc pour le moment il nest pas forcment ncessaire de passe
r en 3.1 pour ceux qui sont en debian stable
On lance linstallation de postfix :
aptitude install postfix-mysql postfix-pcre
linstalleur va demander leffacement de exim que lon valide
puis il va demander le type dinstallation pour postfix, on laisse tout par dfaut.
on installe ensuite les autres paquets ncessaires :
aptitude install mysql-client mysql-server libsasl2-2 libsasl2-modules sasl2-bin
openssl ntp
voir le sujet sur le forum concernant loptimisation de mysql :
https://www.starbridge.org/support/viewtopic.php?f=6&t=1599
On installe apache + php5 pour grer plus tard le tout avec linterface postfixadmin
.
aptitude install libapache2-mod-php5 php5-mysql
Note : Il est fortement conseill dinstaller le SSL avec Apache pour scuriser les cha
nges. Cette configuration sera dtaille plus loin lors de linstallation de Postfixad
min.
Pour ceux qui le prfre, on peut tout de suite installer Phpmyadmin pour effectuer
ltape suivante.
(on ne dtaillera pas cette installation, en dehors du scope de ce document)
On passe donc la cration de la base sql Postfix :
Note : Si lon a mis un password lors de linstallation du paquet mysql, il faut sau
ter la premire commande ci dessous et excuter directement la seconde.
mysqladmin -u root password *****
mysqladmin -u root --password= ***** create postfix
Cration de luser postfix :
$ mysql -u root -p
Enter password:
GRANT ALL PRIVILEGES ON postfix.* TO "postfix"@"localhost" IDENTIFIED BY ******
;
On cre les tables suivantes dans la base Postfix :
Evidemment on modifie la commande sed pour inclure son domaine.
cd ~
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/postfix.sql
sed -i s/starbridge.org/toto.com/g postfix.sql
mysql -u root -p < postfix.sql
Explications :
Seules 3 tables sont ncessaires Postfix.
Le reste est pour linterface Postfixadmin que lon installera plus tard.
Le password (MD5) est "secret"
Le premier INSERT permet Postfix de savoir que ce domaine est virtuel et quil doi
t donc le grer.
Le 3me INSERT est un alias virtuel pointant vers un user de la table mailbox. Cet
alias vers lui mme sera utilis par Postfixadmin.
le 4me INSERT est un simple alias virtuel.
Le 7me INSERT est un compte (boite email) virtuel, qui utilise un mot de passe en
crypt en MD5.
Les deux derniers INSERT permettent de crer le superadministrateur que lon utilise
ra plus tard dans Postfixadmin.
#PAGINATION
Paramtrage de PostfixRetour la table des matires
On remplace tout le /etc/postfix/main.cf par le contenu ci dessous :
noubliez pas de remplacer myhostname = spike.starbridge.org par votre domaine
smtpd_banner = $myhostname ESMTP $mail_name (Debian/GNU)
biff = no
append_dot_mydomain = no
myhostname = spike.starbridge.org
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = $mydomain
mydestination = $myhostname, localhost.$mydomain, localhost
mynetworks = 127.0.0.0/8
recipient_delimiter = +
home_mailbox = Maildir/
notify_classes = 2bounce, bounce, delay, policy, protocol, resource, software
smtpd_helo_required = yes
strict_rfc821_envelopes = yes
relay_domains = proxy:mysql:/etc/postfix/mysql_relay_domains_maps.cf
relay_recipient_maps = proxy:mysql:/etc/postfix/mysql_relay_recipients_maps.cf
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql_virtual_alias_maps.cf,proxy:
mysql:/etc/postfix/mysql_virtual_alias_domain_maps.cf,proxy:mysql:/etc/postfix/m
ysql_virtual_alias_domain_catchall_maps.cf
virtual_gid_maps = static:20001
virtual_mailbox_base = /home/virtual
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql_virtual_mailbox_maps.cf,pr
oxy:mysql:/etc/postfix/mysql_virtual_alias_domain_mailbox_maps.cf
virtual_minimum_uid = 20001
virtual_uid_maps = static:20001
transport_maps = proxy:mysql:/etc/postfix/mysql_transport.cf,proxy:mysql:/etc/po
stfix/mysql_transport2.cf
proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virt
ual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipien
t_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonica
l_maps $relocated_maps $transport_maps $mynetworks $smtpd_recipient_restrictions
$smtpd_sender_login_maps $has_our_domain_as_sender
message_size_limit = 50240000
smtpd_recipient_restrictions =
permit_mynetworks,
reject_unauth_destination,
permit
smtpd_data_restrictions =
reject_unauth_pipelining,
permit
Ceux qui sont en postfix 2.10 et suprieur doivent ajouter cette ligne au dessus d
u bloc smtpd_recipient_restrictions
smtpd_relay_restrictions =
ce qui donne :
smtpd_relay_restrictions =
smtpd_recipient_restrictions =
permit_mynetworks,
reject_unauth_destination,
permit
smtpd_data_restrictions =
reject_unauth_pipelining,
permit
On modifie le /etc/postfix/master.cf comme ci dessous :
#
# Postfix master process configuration file. For details on the format
# of the file, see the master(5) manual page (command: "man 5 master").
#
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
#
(yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp
inet n
n
smtpd
#smtp
inet n
n
1
postscreen
#smtpd
pass n
smtpd
#dnsblog unix n
0
dnsblog
#tlsproxy unix n
0
tlsproxy
#submission inet n
n
smtpd
587
inet
n
n
smtpd
-o smtpd_tls_security_level=encrypt
-o smtpd_sasl_auth_enable=yes
-o smtpd_etrn_restrictions=reject
-o smtpd_client_restrictions=permit_sasl_authenticated,reject
#smtps
inet n
smtpd
# -o smtpd_tls_wrappermode=yes
# -o smtpd_sasl_auth_enable=yes
# -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#628
inet n
qmqpd
pickup
fifo n
n
60
1
pickup
-o receive_override_options=no_header_body_checks
-o content_filter=
cleanup unix n
n
0
cleanup
qmgr
fifo n
n
300
1
qmgr
#qmgr
fifo n
300
1
oqmgr
tlsmgr
unix n
1000? 1
tlsmgr
rewrite unix n
trivial-rewrite
bounce
unix n
0
bounce
defer
unix n
0
bounce
trace
unix n
0
bounce
verify
unix n
1
verify
flush
unix n
n
1000? 0
flush
proxymap unix n
proxymap
proxywrite unix n
1
proxymap
smtp
unix n
smtp
# When relaying mail as backup MX, disable fallback_relay to avoid MX loops
relay
unix n
smtp
#
-o fallback_relay=
#
-o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq
unix n
n
showq
error
unix n
error
retry
unix n
error
discard unix n
discard
local
unix n
n
local
virtual unix n
n
virtual
lmtp
unix n
lmtp
anvil
unix n
1
anvil
scache
unix n
1
scache
#
# # See the Postfix UUCP_README file for configuration details.
#
uucp
unix n
n
pipe
flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
On cre le groupe et le user vmail avec luid et gid 20001, ainsi que le rpertoire de
s mails :
groupadd -g 20001 vmail
useradd -g vmail -u 20001 vmail -d /home/virtual -m
On scurise :
chown -R vmail: /home/virtual
chmod 770 /home/virtual
On cre les fichiers dappel des tables par Postfix :
(la commande sed permet de specifier votre password daccs la base, dans lexemple ic
i cest toto)
cd /etc/postfix
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_virtual_alias_m
aps.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_virtual_domains
_maps.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_virtual_mailbox
_maps.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_relay_domains_m
aps.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_relay_recipient
s_maps.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_virtual_alias_d
omain_maps.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_virtual_alias_d
omain_catchall_maps.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_virtual_alias_d
omain_mailbox_maps.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_transport.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mysql_transport2.cf
sed -i s/\*\*\*\*/toto/g mysql_virtual_alias_maps.cf mysql_virtual_domains_map
s.cf mysql_virtual_mailbox_maps.cf mysql_relay_domains_maps.cf mysql_relay_recip
ients_maps.cf mysql_virtual_alias_domain_maps.cf mysql_virtual_alias_domain_catc
hall_maps.cf mysql_virtual_alias_domain_mailbox_maps.cf mysql_transport.cf mysql
_transport2.cf
On scurise le tout :
chmod 640 /etc/postfix/mysql_*
chgrp postfix /etc/postfix/mysql_*
HURRICANe Pro
Activation du TLSRetour la table des matires
Pour un serveur en production, il serait prfrable dutiliser un vritable certificat f
ourni et sign par une autorit de certification de confiance.
On dite la configuration de ssl pour pouvoir signer des certificats sur 10 ans, a
u lieu de 1 an par dfaut :
vi /etc/ssl/openssl.cnf
on change la ligne default_days en
default_days
= 3650
On cre le Certificat Racine :
cd ~
/usr/lib/ssl/misc/CA.pl -newca
on entre les parametres requis, on choisis un pass phrase de son choix et on lai
sse "challenge password" vide.
CA certificate filename (or enter to create)
Making CA certificate ...
Generating a 1024 bit RSA private key
.......++
.........................................++
writing new private key to ./demoCA/private/cakey.pem
Enter PEM pass phrase:
Verifying - Enter PEM pass phrase:
You are about to be asked to enter information that will be incorporated
into your certificate request.
serial:84:7C:CE:D2:F7:CF:DF:6C
X509v3 Basic Constraints:
CA:TRUE
Certificate is to be certified until Nov 12 16:44:33 2010 GMT (1095 days)
Write out database with 1 new entries
Data Base Updated
Ce certificat racine sert signer les certificats. Il est localis dans le rpertoire
/demoCA.
On cre maintenant une cl prive pour le serveur ainsi quun csr (Certificate Signing R
equest : demande de signature de certificat).
mkdir ~/CERT
cd ~/CERT
openssl req -new -nodes -keyout starbridge-key.pem -out starbridge-req.pem -days
3650
et on entre les paramtres comme ci dessous :
Generating a 1024 bit RSA private key
.............++
.............++
writing new private key to starbridge-key.pem
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter . , the field will be left blank.
Country Name (2 letter code) [AU]:FR
State or Province Name (full name) [Some-State]:Paris
Locality Name (eg, city) []:Paris
Organization Name (eg, company) [Internet Widgits Pty Ltd]:Starbridge
Organizational Unit Name (eg, section) []:
Common Name (eg, YOUR name) []:spike.starbridge.org
Email Address []:tonio@starbridge.org
Please enter the following extra attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
Note : le paramtre le plus important est le Common Name qui doit tre le mme que le
nom avec lequel se connecte les clients sur le serveur. Ici il sagit du FQDN : sp
ike.starbridge.org.
cela gnre 2 fichiers :
la cl prive, protger absolument
la demande de certificat, qui est pour faire simple un certificat public non sig
n
On signe maintenant notre certificat public avec le certificat racine :
cd ~
openssl ca -out CERT/starbridge-cert.pem -infiles CERT/starbridge-req.pem
Voici la sortie de la signature :
Using configuration from /usr/lib/ssl/openssl.cnf
On redmarre Postfix :
postfix reload
on testera le fonctionnement aprs linstallation de dovecot.
Dovecot : SASL, LDA, IMAP et SIEVERetour la table des matires
De "simple" serveur imap, Dovecot est devenu un ensemble doutils indispensables p
our la messagerie :
- il permet de grer le SASL trs simplement au travers de Postfix afin de fournir c
e dernier un moyen dauthentifier les transactions SMTP,
- il fournit un agent de livraison de mail trs performant et parfaitement intgr Pos
tfix,
- il permet de prendre en charge le langage Sieve pour le filtrage des mails lor
s de la livraison,
- et bien sur, il demeure un serveur imap rapide et lger.
On va dtailler ici son installation, fonction par fonction.
Installation de Dovecot :
On va utiliser la version 2.2 de Dovecot.
On compilera depuis les sources.
Crer les users pour dovecot :
adduser --system --group --home /usr/lib/dovecot --gecos "Dovecot mail server" -disabled-password --quiet dovecot
adduser --system --home /nonexistent --gecos "Dovecot login user" --disabled-pa
ssword --quiet dovenull
on compile :
cd ~
mkdir dovecot
cd dovecot
wget http://dovecot.org/releases/2.2/dovecot-2.2.25.tar.gz
wget http://pigeonhole.dovecot.org/releases/2.2/dovecot-2.2-pigeonhole-0.4.15.ta
r.gz
tar xvzf dovecot-2.2.25.tar.gz
tar xvzf dovecot-2.2-pigeonhole-0.4.15.tar.gz
cd dovecot-2.2.25
./configure --prefix=/usr/ --sysconfdir=/etc/ --with-mysql --libexecdir=/usr/lib
/ --localstatedir=/var --with-moduledir=/usr/lib/dovecot/modules --disable-rpath
--disable-static --with-zlib --with-bzlib --with-solr
make
make install
cd ../dovecot-2.2-pigeonhole-0.4.15
./configure --with-dovecot=/usr/lib/dovecot/ --prefix=/usr/ --sysconfdir=/etc/ -libexecdir=/usr/lib/ --disable-static
make
make install
On copie les fichiers de configuration ncessaires :
cd /etc/dovecot/
svn export http://smtp04.spamguard.fr/svn/Procmail/dovecot/dovecot.conf
svn export http://smtp04.spamguard.fr/svn/Procmail/dovecot/dovecot-sql.conf
svn export http://smtp04.spamguard.fr/svn/Procmail/dovecot/dovecot-dict-quota-sq
l.conf
chown vmail:dovecot dovecot-dict-quota-sql.conf
chmod 600 dovecot-sql.conf
chmod 640 dovecot-dict-quota-sql.conf
vi /home/virtual/sieve/global.sieve
require ["fileinto", "envelope", "subaddress"];
if envelope :detail "to" "spam"{
fileinto "Spam";
}
on scurise :
chown vmail: /home/virtual/sieve/global.sieve
chmod 600 /home/virtual/sieve/global.sieve
NOTE : Le fichier global.sieve est commun tous les
aque mail. Si lon veut appliquer des rgles spcifiques
crer un autre fichier sieve dans son Maildir. On pourra
emails dans des rpertoires spcifiques de cette faon.
fichier dovecot.sieve dans le maildir de lutilisateur.
Pour la cration assiste et autonome (par les utilisateurs eux-mmes) des fichiers Si
eve personnels on pourra utiliser un module du Webmail horde.
Larticle sur linstallation du Webmail traite ce point en dtail.
Il est galement possible dutiliser le protocole Sieve pour crer/modifier les script
s depuis un client lourd, Thunderbird propose par exemple un plugin pour la gest
ion des scripts Sieve.
Le port de connection par dfaut est le 4190.
Les users seront ainsi totalement autonomes sur la gestion de leur paramtres de f
iltrage.
Consultation des emails par IMAP
On teste limap en TLS sur le port 143 depuis un client mail.
Si tout fonctionne correctement on doit accder aisment aux messages de tests prcdent
s depuis le client mail.
Prise en charge du SASL par Dovecot :
Enfin, on passe la configuration SASL :
On ajoute ceci au /etc/postfix/main.cf :
smtpd_sasl_auth_enable = yes
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_sasl_local_domain =
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
On ajoute galement "permit_sasl_authenticated" dans "smtpd_recipient_restrictions
" pour valider les restrictions (attention bien placer le paramtre exactement lend
roit indiqu) :
.....
permit_mynetworks,
permit_sasl_authenticated,
reject_unauth_destination,
......
on relance Postfix :
postfix reload
Paramtrage de Postfix :
Une grande majorit des spams ne respecte pas les rgles denvoi demail : HELO incorrec
t, MAILFROM dun domaine inconnu, etc, etc...
Il est trs fortement conseill de lire des documents sur ce sujet, notamment les RF
C pour bien comprendre le fonctionnement.
La premire chose faire est de renforcer Postfix pour quil soit beaucoup plus restr
ictif.
Pour cela on va utiliser les smtpd_recipient_restrictions.
On ne dtaillera pas ici les actions prcises de chaque rgle. (la documentation de Po
stfix est trs complte sur le sujet et larticle sur la gestion du serveur de mail re
vient sur tous les points en les dtaillant).
On dite le main.cf et on remplace tout le smtpd_recipient_restrictions par celui
ci :
smtpd_recipient_restrictions =
reject_non_fqdn_recipient,
reject_unknown_sender_domain,
reject_non_fqdn_sender,
reject_unknown_recipient_domain,
reject_invalid_helo_hostname,
reject_unlisted_recipient,
reject_unlisted_sender,
permit_mynetworks,
permit_sasl_authenticated,
reject_non_fqdn_helo_hostname,
reject_unauth_destination,
check_client_access hash:/etc/postfix/internal_networks,
check_sender_access proxy:mysql:/etc/postfix/mysql_not_our_domain_as_sen
der.cf,
check_helo_access proxy:mysql:/etc/postfix/mysql-hello.cf,
check_sender_access proxy:mysql:/etc/postfix/mysql-sender.cf,
check_client_access proxy:mysql:/etc/postfix/mysql-client.cf,
permit
on va aussi paramtrer 4 RBL (des blacklists) qui filtrent trs efficacement.
Pour cela, on va se servir dune fonctionnalit apparue depuis la version 2.8 de pos
tfix : postscreen.
Toujours dans le main.cf, on ajoute tout en bas du fichier :
postscreen_dnsbl_threshold = 2
postscreen_dnsbl_sites = zen.spamhaus.org*2
bl.spamcop.net*2 b.barracudacentral.org*1 bl.mailspike.net*1
postscreen_dnsbl_action = enforce
postscreen_greet_action = enforce
Dans le master.cf, on commente la premire ligne :
#smtp
inet n
n
et on dcommente les suivantes :
smtp
inet n
n
smtpd
pass n
dnsblog unix n
tlsproxy unix n
1
0
0
smtpd
postscreen
smtpd
dnsblog
tlsproxy
ATTENTION : Il existe dautres RBL qui peuvent rendre le filtrage encore plus
restrictif mais je dconseille de les installer dans Postfix sur un serveur en pro
duction, bien que lon puisse se servir des tables ci dessous (mysql-sender.cf et
mysql-client.cf) pour whitelister certains clients ou expditeurs).
Il vaut mieux grer les RBL supplmentaires au travers de Spamassassin.
A noter que Postscreen effectue egalement une autre vrification (greet_action) qu
i est particulirement efficace (voir la doc de Postfix pour en comprendre le fonc
tionnement)
- Ensuite il faut limiter les possibilits de forging des expditeurs en vrifiant les
MAIL FROM (adresses expditrices).
Toujours dans le main.cf, on place au dessus du bloc smtpd_recipient_restriction
s = :
smtpd_sender_login_maps = proxy:mysql:/etc/postfix/mysql-sasl-sender-check.cf,pr
oxy:mysql:/etc/postfix/mysql_virtual_alias_domain_maps.cf
smtpd_sender_restrictions =
reject_authenticated_sender_login_mismatch
smtpd_reject_unlisted_sender = yes
smtpd_restriction_classes =
has_our_domain_as_sender
has_our_domain_as_sender =
check_sender_access proxy:mysql:/etc/postfix/mysql_our_domain_as_sender.cf,has
h:/etc/postfix/our_domain_as_sender
reject
Cela permettra dempcher des utilisateurs de mettre une autre adresse email dans le
MAIL FROM. Ils seront obligs de passer par les domaines que lon gre.
De mme, les utilisateurs authentifis par SASL seront tenus dutiliser comme adresse
email (MAIL FROM) un alias valide de leur mail principal (on dtaillera ce fonctio
nnement dans le document sur la gestion du serveur).
- Il faut maintenant crer les fichiers suivants :
On cre le fichier /etc/postfix/internal_networks :
cd /etc/postfix/
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/internal_networks
On dite ce fichier et on spcifie son rseau local et son adresse publique lintrieur :
10.0.0
has_our_domain_as_sender
Cela permet de spcifier la ou les plages IP de notre rseau, qui seront autorises en
voyer un mail avec nos domaines dans le MAIL FROM.
Cela permet galement de prciser les IP autorises envoyer un mail en se prsentant ave
c notre HELO.
On bloquera ainsi les clients SMTP extrieurs qui se prsentent avec un HELO qui est
le notre :
Ensuite on cre les fichier suivants qui appellent les tables SQL.
cd /etc/postfix/
On relance Postfix
postfix reload
on vrifie les logs et on teste.
On a insr des exemples de blacklist et de whitelist.
Tout le dtail du fonctionnement se trouve dans le document gestion serveur de mai
l.
On peut utiliser PhpMyadmin pour grer ces tables SQL.
Vrification des Headers, du Body et du Type Mime par Postfix.Retour la table des
matires
Postfix peut vrifier les mails entrants trs simplement en analysant le header, le
body et le type mime des pices jointes.
Ce type de blocage est trs efficace, plus rapide que de laisser faire Amavisd ou
SA, mais manque de souplesse.
Il savre cependant trs efficace pour bloquer des types de fichiers par exemple sans
que le mail ne soit envoy au serveur puis trait (conomie de bande passante et de C
PU).
Cependant une trop grande quantit de rgles et un fort trafic aurait leffet inverse
sur les performances.
Il faut donc utiliser ces rgles avec prcaution.
On cre les fichiers ncessaires :
cd /etc/postfix/
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/body_checks.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/header_checks.cf
svn export http://smtp04.spamguard.fr/svn/Procmail/postfix/mime_headers_checks.c
f
On dite le /etc/postfix/main.cf et on ajoute les lignes :
header_checks = regexp:/etc/postfix/header_checks.cf
body_checks = regexp:/etc/postfix/body_checks.cf
mime_header_checks = regexp:/etc/postfix/mime_headers_checks.cf
On relance Postfix :
postfix reload
On teste en envoyant un mail classique puis un autre qui contient un des mots ou
type bloqus par ces rgles.
Le blocage est immdiat et se traduit par un retour derreur au moment de lenvoi.
EOLE
Amavisd et SARetour la table des matires
on installe les prrequis damavisd :
aptitude install file libcompress-bzip2-perl nomarch arc p7zip-full arj zoo lzop
tnef pax cabextract
et les modules Perl :
Pour ceux qui le souhaitent, on peut installer tous les modules perl ncessaires p
ar CPAN ce qui permet davoir les versions les plus rcentes : Modules Perl Amavisd
par CPAN
aptitude install libarchive-tar-perl libarchive-zip-perl libberkeleydb-perl libc
ompress-zlib-perl libconvert-tnef-perl libconvert-uulib-perl libdigest-md5-perl
libio-stringy-perl libmailtools-perl libmime-base64-perl libmime-perl libnet-per
l perl-modules libnet-server-perl libtime-hires-perl libunix-syslog-perl libmail
-dkim-perl liblog-log4perl-perl liblog-dispatch-perl libgetopt-argvfile-perl lib
convert-binhex-perl libemail-sender-perl libnet-libidn-perl
On installe les dpendances de SA :
Pour ceux qui le souhaitent, on peut installer tous les modules perl ncessaires p
ar CPAN ce qui permet davoir les versions les plus rcentes : Modules perl pour SA
par CPAN
aptitude install razor pyzor libhtml-parser-perl libnet-dns-resolver-programmabl
e-perl liberror-perl libmail-spf-perl libmail-sendmail-perl libnetaddr-ip-perl l
ibdbi-perl libdbd-mysql-perl liblocale-subcountry-perl libwww-perl libimage-base
-bundle-perl libimage-base-perl libimage-info-perl libnet-cidr-lite-perl libmime
-encwords-perl libemail-valid-perl libencode-detect-perl
Note : IP ::Country nexiste pas en paquet, il faut linstaller par CPAN
Installation SpamassassinRetour la table des matires
On installe SA depuis les sources :
cd ~
wget http://mirror.ibcp.fr/pub/apache//spamassassin/source/Mail-SpamAssassin-3.4
.1.tar.gz
tar xvzf Mail-SpamAssassin-3.4.1.tar.gz
cd Mail-SpamAssassin-3.4.1
perl Makefile.PL PREFIX=/usr
make
make install
On lance toute de suite lupdate des rgles de SA (obligatoire depuis la version 3.3
.0) :
sa-update -D
Cela aura pour effet de tlcharger les rgles jour. Elles seront installes dans /var/l
ib/spamassassin/3.004001 (ce qui correspond la version 3.4.1 de SA)
Installation AmavisdRetour la table des matires
Tlcharger les sources damavisd :
cd ~
wget http://amavis.org/amavisd-new-2.10.1.tar.xz
tar xvf amavisd-new-2.10.1.tar.xz
cd amavisd-new-2.10.1
Crer le user et le groupe amavis :
groupadd -g 1002 amavis
useradd -g amavis -u 1002 amavis -d /var/amavis -m
Crer les sous rpertoires dans le home damavis :
mkdir /var/amavis/tmp /var/amavis/var /var/amavis/db /var/amavis/home
chown -R amavis: /var/amavis
On cre 2 lecteur tmpfs pour hberger les rpertoires db et tmp damavis. Cela accrot not
ablement les performances de traitement :
Modifier /etc/fstab :
tmpfs /var/amavis/db tmpfs rw,size=10m,mode=700,uid=amavis,gid=amavis 0 0
excutables :
amavisd-nanny amavisd-signer /usr/sbin/
/usr/sbin/amavisd*
/usr/sbin/amavisd*
Les utilisateurs identifis par SASL hors du lan et les utilisateurs du LAN (ident
ifis SASL ou pas) seront donc considrs de la mme facon. (on note que lon pourra mme m
difier le comportement dAmavisd trs prcisement de cette facon. Voir larticle suivant
sur le sujet.
On dite maintenant le main.cf et on ajoute :
content_filter = smtp-amavis:[127.0.0.1]:10024
Relancer postfix :
postfix reload
Surveiller les logs :
tail -f /var/log/mail.log
Si tout est ok, lancer nouveau amavisd debug
/usr/sbin/amavisd debug
et taper en console :
telnet 127.0.0.1 10024
Il doit rpondre :
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is ^] .
220 [127.0.0.1] ESMTP amavisd-new service ready
quit pour sortir
Pareil pour tester le retour de Postfix :
telnet 127.0.0.1 10025
Il doit rpondre un truc du style :
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is ^] .
220 spike.starbridge.org ESMTP Postfix (Debian/GNU)
QUIT pour sortir (en majuscules)
- Si les connections sont ok :
Tester le fonctionnement de base (ce quil faut taper est prcd de ---> , le reste cest
le retour du serveur) :
---> telnet localhost 10024
220 [127.0.0.1] ESMTP amavisd-new service ready
---> HELO localhost
250 [127.0.0.1]
rien de particulier paramtrer pour lusage que lon va faire, pas de schma installer.
tail -f /var/log/clamav/clamd.log
Et on vrifie bien que Clam tourne :
ps aux | grep clam
On teste le fonctionnement (le dossier "test" est dans le rpertoire clamav-0.98)
:
cd /root/clamav-0.98.6/test/
clamscan -l scan.txt clam-x.yz
clamav-x.yz etant un des fichiers de test prsents dans le rpertoire test
Installation des signatures additionnelles pour Clam (dtection du spam, phising..
.)
Il sagit de fichiers supplmentaires que lon place dans le dossier /var/lib/clamav
aptitude install curl rsync
cd /usr/sbin
svn export http://smtp04.spamguard.fr/svn/Procmail/usr/sbin/clamav-unofficial-si
gs.sh
chmod 755 clamav-unofficial-sigs.sh
cd /etc/
svn export http://smtp04.spamguard.fr/svn/Procmail/clamav-unofficial-sigs.conf
mkdir /var/lib/unofficial-clamav-sigs
chown -R amavis: /var/lib/unofficial-clamav-sigs
On lance le script :
su -c /usr/sbin/clamav-unofficial-sigs.sh
amavis
On vrifie que les fichiers sont bien prsents dans le rpertoire de Clam :
ls -la /var/lib/clamav
On doit trouver les fichiers suivants :
-rw-r--r-- 1 amavis amavis
54185 28
-rw-r--r-- 1 amavis amavis 6645011 28
-rw-r--r-- 1 amavis amavis
38237 29
-rw-r--r-- 1 amavis amavis
22549 15
-rw-r--r-- 1 amavis amavis
155 23
-rw-r--r-- 1 amavis amavis 5441471 29
-rw-r--r-- 1 amavis amavis 18380023 29
-rw-r--r-- 1 amavis amavis 812167 29
-rw-r--r-- 1 amavis amavis 242835 25
-rw-r--r-- 1 amavis amavis 30750647 28
-rw-r--r-- 1 amavis amavis
156 29
-rw-r--r-- 1 amavis amavis 3233016 29
-rw-r--r-- 1 amavis amavis
28806 29
-rw-r--r-- 1 amavis amavis
9164 19
-rw-r--r-- 1 amavis amavis 11717910 29
-rw-r--r-- 1 amavis amavis 1805097 28
-rw-r--r-- 1 amavis amavis 200405 21
-rw-r--r-- 1 amavis amavis 300559 30
-rw-r--r-- 1 amavis amavis
86504 21
-rw-r--r-- 1 amavis amavis 13939950 29
-rw-r--r-- 1 amavis amavis 1389724 29
-rw-r--r-- 1 amavis amavis 314920 10
-rw-r--r-- 1 amavis amavis 468241 16
-rw-r--r-- 1 amavis amavis
29520 21
-rw-r--r-- 1 amavis amavis
57676 2
-rw-r--r-- 1 amavis amavis
19002 11
-rw-r--r-- 1 amavis amavis 2000207 29
oct.
oct.
oct.
fvr.
juil.
oct.
oct.
oct.
juil.
oct.
oct.
oct.
oct.
juin
oct.
sept.
aot
mai
aot
oct.
oct.
fvr.
aot
aot
mars
avril
oct.
21:28
21:27
19:45
2012
13:09
10:56
19:55
19:55
12:53
21:27
20:02
17:29
16:57
10:56
19:45
13:54
10:16
22:28
12:07
12:25
12:27
2012
11:12
12:26
2012
2011
19:50
bytecode.cvd
daily.cvd
doppelstern.hdb
honeynet.hdb
INetMsg-SpamDomains-2w.ndb
junk.ndb
jurlbla.ndb
jurlbl.ndb
lott.ndb
main.cvd
mirrors.dat
phish.ndb
rogue.hdb
sanesecurity.ftm
scamnailer.ndb
scam.ndb
securiteinfobat.hdb
securiteinfodos.hdb
securiteinfoelf.hdb
securiteinfo.hdb
securiteinfohtml.hdb
securiteinfooffice.hdb
securiteinfopdf.hdb
securiteinfosh.hdb
spamimg.hdb
spam.ldb
spear.ndb
-rw-r--r--rw-r--r--rw-r--r--rw-r--r-b
-rw-r--r--
1
1
1
1
amavis
amavis
amavis
amavis
amavis
660 29 oct.
amavis 2878686 29 oct.
amavis 1498085 29 oct.
amavis 260787 29 oct.
1 amavis amavis
19:45
19:45
19:45
19:45
winnow.complex.patterns.ldb
winnow_malware.hdb
winnow_malware_links.ndb
winnow_phish_complete_url.nd
Une tache cron sera utilise pour mettre jour ces fichiers (on le fera en fin de t
uto)
Installation de ClamdMon pour la surveillance du demon clam :
installer le script de surveillance clamdmon :
cd ~
svn export http://smtp04.spamguard.fr/svn/Procmail/clamdmon-1.0.tar.gz
tar xvzf clamdmon-1.0.tar.gz
cd clamdmon-1.0
make
make install
Une tache cron sera utilise (on le fera en fin de tuto)
Paramtrage SpamassassinRetour la table des matires
Les binaires de SA ont t installs ltape prcdente.
Sa configuration de base se fait dans le fichier /etc/mail/spamassassin/local.cf
mais pour la plupart des paramtres, cest le fichier amavisd.conf qui sera priorit
aire.
Lorsquon utilise Amavisd pour appeler SA il est inutile de lancer spamd.
On remplace le /etc/mail/spamassassin/local.cf par celui ci :
cd /etc/mail/spamassassin/
mv local.cf local.cf-orig
svn export http://smtp04.spamguard.fr/svn/Procmail/spamassassin/local.cf
On dite le fichier pour adapter les parametres internal_networks et trusted_netwo
rks.
internal_networks et trusted_networks sont des paramtres trs importants pour la pe
rtinence de la dtection. Il faut absolument les configurer correctement.
On scurise :
chown amavis: /etc/mail/spamassassin/local.cf
chmod 640 /etc/mail/spamassassin/local.cf
SA fonctionne sur 2 types de tests :
Heuristiques (ensemble de rgles)
Bayesiens (apprentissage et statistiques)
Pour le filtre bayesien, depuis la version 3.4 de SA, on utilise une base redis.
Le serveur redis etant deja install, il ny a rien a faire, le fichier local.cf est
paramtr !
On initialise la base :
su amavis -c
spamtrap@starbridge.org
hamtrap@starbridge.org
Ces deux serviront ladmin pour trier les mails classs par les users dans leurs dos
siers spamfalse et spamtolearn
Il faut dabord crer un script qui scanne les 2 dossiers dapprentissage SpamToLe
arn et SpamFalse des botes des utilisateurs (Dossiers cres automatiquement par Dov
ecot LDA la premire livraison) puis envoie leur contenu vers les deux boites hamt
rap et spamtrap.
On cre deux boites et deux rpertoires spciaux de transit + deux rpertoires de stocka
ge :
mkdir -p /var/tmp/spamtrap/cur
mkdir /var/tmp/spamtrap/new
mkdir -p /var/tmp/hamtrap/cur
mkdir /var/tmp/hamtrap/new
chown -R vmail: /var/tmp/spamtrap
chown -R vmail: /var/tmp/hamtrap
mkdir /home/spamtrap
mkdir /home/hamtrap
chown -R vmail: /home/spamtrap
chown -R vmail: /home/hamtrap
mkdir /home/spamtrap-backup
mkdir /home/hamtrap-backup
chown -R vmail: /home/spamtrap-backup
chown -R vmail: /home/hamtrap-backup
les deux rpertoires de backup permettent de disposer dun corpus de spam/ham pour la
pprentissage en cas de migration ou de remise zero de la base bayes.
on cre un ficher /etc/caremail/cron/sa-trap-sdbox
mkdir /etc/caremail/cron/
cd /etc/caremail/cron/
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/cron/sa-trap-sdbox
chmod 755 /etc/caremail/cron/sa-trap-sdbox
On modifie lintrieur de ce fichier les 2 boites de destination pour ajuster son in
stallation.
Il suffira dindiquer aux utilisateurs de dplacer les emails non dtects comme Spam da
ns le dossier SpamToLearn et de copier les email lgitimes dtects tort comme Spam da
ns le Dossier SpamFalse.
Le script dplacera lors de son excution tous ces emails dans les boites spamtrap e
t hamtrap
Une tache sera ajoute en fin de tuto pour lancer automatiquement ce script.
Attention : TOUS les mails dposs dans les dossiers SpamTolearn et SpamFalse sont dp
lacs cest dire quils seront EFFACES de ces dossiers.
Ladmin pourra alors consulter ces emails, et une fois valids, il lancera un script
manuellement qui fera lapprentissage soit comme spam soit comme ham (non spam).
on cre le script dapprentissage pour ladmin /etc/caremail/sa-dspam-learn-sdbox :
cd /etc/caremail/
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/sa-dspam-learn-sdbox
chmod 755 /etc/caremail/sa-dspam-learn-sdbox
Activation de Clam dans Amavisd
Le fichier amavisd.conf fourni dans ce tuto est modifi pour ne prendre en charge
que lantivirus Clamav.
Pour info voici les paramtres modifis ( la fin du fichier) :
@av_scanners = (
# ### http://www.clamav.net/
[ ClamAV-clamd ,
\&ask_daemon, ["CONTSCAN {}\n", "/var/run/clamav/clamd.ctl"],
qr/\bOK$/, qr/\bFOUND$/,
qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ],
);
@av_scanners_backup = (
### http://www.clamav.net/ - backs up clamd or Mail::ClamAV
[ ClamAV-clamscan , clamscan ,
"--stdout --no-summary -r --tempdir=$TEMPBASE {}",
[0], qr/:.*\sFOUND$/, qr/^.*?: (?!Infected Archive)(.*) FOUND$/m ],
);
1; # insure a defined return
Pour activer Clam on commente au dbut du fichier :
@bypass_virus_checks_maps = (1);
On relance amavisd :
/etc/init.d/amavis restart
Lantivirus est charg.
On cre grace postfixadmin lalias email : virusalert@starbridge.org vers admin@star
bridge.org.
On teste le fonctionnement :
--> telnet 127.0.0.1 10024
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is ^] .
220 [127.0.0.1] ESMTP amavisd-new service ready
--> MAIL FROM:<test@example.com>
250 2.1.0 Sender test@example.com OK
--> RCPT TO:<postmaster>
250 2.1.5 Recipient postmaster OK
--> DATA
354 End data with <CR><LF>.<CR><LF>
--> Subject: test2 - virus test pattern
-->
--> X5O!P%@AP[4\PZX54(P^)7CC)7}$EICAR-STANDARD-ANTIVIRUS-TEST-FILE!$H+H*
--> .
--> QUIT
221 2.0.0 [127.0.0.1] (amavisd) closing transmission channel
Connection closed by foreign host.
On doit voir dans les logs :
Blocked INFECTED (Eicar-Test-Signature)
On peut aussi tester lenvoi dun mail infect dans une archive (pour tester le travai
l de dcompression) en rcuprant des fichiers de test sur eicar.com et en les envoyan
t par email.
DspamRetour la table des matires
Beaucoup considre Dspam comme une alternative plus performante de SA.
Je trouve quils sont plutt complmentaires.
Amavisd permet de grer les 2 en parallle.
cd ~
wget http://heanet.dl.sourceforge.net/project/dspam/dspam/dspam-3.10.2/dspam-3.1
0.2.tar.gz
tar xvzf dspam-3.10.2.tar.gz
cd dspam-3.10.2
./configure --prefix=/usr --disable-dependency-tracking --includedir=/usr/includ
e --with-logdir=/var/log/dspam/ --with-dspam-home=/var/amavis/dspam --sysconfdir
=/etc/ --enable-domain-scale --without-delivery-agent --with-mysql-includes=/usr
/include/mysql --with-storage-driver=mysql_drv --enable-virtual-users --enable-p
references-extension --enable-daemon --enable-debug
make
make install
Crer la base sql :
mysql -u root -p
create database dspam;
GRANT SELECT, INSERT, UPDATE, DELETE ON dspam.* TO
D BY ****** ;
FLUSH PRIVILEGES;
quit
On vrifie les logs, les headers des email pour les tags X-DSPAM et le remplissage
de la base de donnes.
Principe de fontionnement :
Dans cette configuration, Dspam marque simplement les mails (il ajoute un tag da
ns le header).
Avant la version 2.6.3 damavisd, le score etait transmis SA.
Dsormais, le score est ajout APRES Spamassassin, par amavisd.
Les scores par dfaut sont inscrits en dur dans le binaire damavisd : 3.8 pour un s
pam, 0.1 pour un ham.
Actuellement lautolearn nest pas pris en charge dans cette implmentation.
Il faudra donc alimenter manuellement la base de dspam depuis un corpus.
On cre les taches de maintenance de dspam :
On cre un fichier /etc/caremail/dspam-purge-4.1.sql
cd /etc/caremail/
svn export http://smtp04.spamguard.fr/svn/Procmail/dspam-purge-4.1.sql
une tache cron lancera ce script automatiquement (en fin de tuto)
Filtrage par extensions et type mime dans amavisd
On peut galement renforcer le blocage des fichiers par extension et type mime dan
s amavisd, indpendamment de lantivirus.
Ce blocage est trs efficace et peut tre complmentaire du premier blocage par Postfi
x sur ces fichiers (headers, body, type mime), car il utilise cette fois les cap
acits de dcodage et de dcompression dAmavisd.
Par exemple, on pourra facilement bloquer un fichier exe lintrieur dun fichier zip.
Voir mon fichier amavisd.conf pour des exemples de type mime et dextensions de fi
chiers.
Voila le serveur de mail et le filtrage sont configurs !
Fonctions Avances damavisd : Penpals et gestion des usersRetour la table des matire
s
Maintenant que lon a un systme fonctionnel articul autour dAmavis, on peut ajouter 2
fonctions intressantes :
- Penpals : qui permet de maintenir une liste des messages auquels un user a dj rpo
ndu et ainsi moduler les scores en fonction
- Gestions des users dans Amavisd par Mysql : cela permet de grer par utilisateur
les grandes fonctions dAmavisd (dsactivation de lantivirus, de lantispam, maintien
de whitelist et de blacklist personnelles...)
La base mysql est dja cre et fonctionnelle.
Pour linstant seul penpals fonctionne automatiquement.
En revanche la fonction users demande dtre paramtre :
Pour cela, on pourra utiliser le module SAM de horde (voir le tuto horde pour ce
la) soit alimenter manuellement la base SQL.
Ensuite on a ajout une entre a la table mailaddr o lon spcifie des expditeurs, par ex
mple toto@toto.com avec lid 1.
Grce la table wblist on pourra maintenir une liste de score attribuer en fonction
de ces adresses dexpditeurs ET de users (le destinataire dans notre rseau), ce qui
rend ces listes entirement personnelles.
Ainsi dans notre exemple, wblist pour rid 1 (recipient id 1 = test@starbridge.or
g) et le sid 1 (sender id 1 =toto@toto.com) on attribue un score positif de 15.
Cest lquivalent dans le fichier amavisd.conf du soft whitelisting/blacklisting mais
cette fois uniquement pour un utilisateur et non tous les autres.
On peut aussi faire du hard whitelisting/blacklisting en specifiant W ou B au li
eu du score.
On verra le module horde SAM pour laisser grer facilement ces options par lutilisa
teur lui mme (SAM ne gre que le hard whitelisting/blacklisting).
On peut galement utiliser cette table sql pour paramtrer finement non pas par user
s mais par domaine.
Pour cela il faudra juste utiliser le @starbridge.org pour prendre en compte tou
s les users de celui ci.
par exemple :
INSERT INTO `users` (`id`, `priority`, `policy_id`, `email`, `fullname`,
`local`) VALUES
(3, 6, 4, @starbridge.org , , Y );
INSERT INTO `policy` (`id`, `policy_name`, `virus_lover`, `spam_lover`,
`banned_files_lover`, `bad_header_lover`, `bypass_virus_checks`,
`bypass_spam_checks`, `bypass_banned_checks`, `bypass_header_checks`,
`spam_modifies_subj`, `virus_quarantine_to`, `spam_quarantine_to`,
`banned_quarantine_to`, `bad_header_quarantine_to`,
comptes dans
options par
bannis, qui sont sur bypass.
recevoir les fichiers ba
Les users qui le dsirent pourront toujours personnaliser ces options dans Horde a
u travers du module SAM car la priorit du user gnral est de 6 alors que celle des u
sers cres par le module SAM est de 7.
- Leur paramtrage personnel sera donc prioritaire celui du user gnral.
On peut galement mixer avec la table wblist et mailaddr pour crer des whitelist/bl
acklist par domaines.
EOLE
Maintenance des bases SQL damavisd
Les tables vont grossir au fur et mesure des rceptions, il faut donc regulirement
les purger.
On utilise le champ partition_tag comme lment de slection, cela permet de limiter l
e temps des requtes de purge.
Ce champ contient le numro de la semaine de lenregistrement sql. Il est insr par ama
visd pour chaque INSERT dans la base.
On cre un fichier amavis-purgesql :
cd /etc/caremail/
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/amavis-purgesql
Une tache cron assurera lactivation rguliere de la purge (en fin de tuto)
MailzuRetour la table des matires
Installation du gestionnaire de quarantaine : Mailzu
Pour grer la quarantaine et pour permettre aux utilisateurs de la consulter, on i
nstalle Mailzu.
_Il sagit ici dune version modifie intgrant des patches de la communaut (gestion des
admins par exemple) mais aussi des modification persos sur les requtes SQL pour p
rendre en compte le partition_tag damavisd.
On installe les prrequis :
aptitude install php5-imap php5-mcrypt php5-gd php-pear
on installe les modules pear :
pear update-channels
rm -rf /usr/share/php/.channels
rm /usr/share/php/doc
ln -s /usr/share/doc/php-pear /usr/share/php/doc
pear update-channels
pear upgrade-all
pear install DB
pear install MDB2
pear install pear/MDB2#mysql
pear install Mail
pear install Mail_Mime
pear install Mail_mimeDecode
pear install Log
pear install Net_Socket
pear install Date
pear install Auth_SASL
pear install HTTP_Request
pear install File
pear install Net_SMTP
pear install Cache
on tlcharge depuis SVN :
cd /var/www
svn co http://smtp04.spamguard.fr/svn/Procmail/mailzu quarantine
NOTE : Cette version de mailzu est compatible avec php 5.4
pour lutiliser avec php 5.3, il suffit de revenir sur la modification de deux lig
nes dans le fichier suivant :
https://smtp04.spamguard.fr/websvn/diff. ... hp&rev=237
On scurise :
chown -R www-data: /var/www/quarantine
chmod 640 /var/www/quarantine/config/config.php
On modifie les paramtres (attention il y a 2 passwords modifier, un pour Postfix
: toto et un pour Amavisd : titi)
cd /var/www/quarantine/config
sed -i s/toto/toto/g config.php
sed -i s/titi/toto/g config.php
sed -i s/www.starbridge.org/www.toto.com/g config.php
sed -i s/spike.starbridge.org/spike.toto.com/g config.php
le parametre $conf[auth][s_admins] permet de lister les admins de site, cest a dire c
eux qui auront acces a toutes les quarantaines de tous les utilisateurs.
Modifier lentre admin@starbridge.org pour utiliser votre admin global et laisser le
ntre @. qui est ladmin global par dfaut.
Les admins de domaine sont ceux qui ont accs un seul domaine.
Cette version de Mailzu rcupere la liste des admins depuis celle de postfixadmin.
on cre le fichier de log :
touch /var/log/mailzu.log
chown www-data: /var/log/mailzu.log
On se connecte sur linterface :
https://www.starbridge.org/quarantine
Lutilisateur est admin@starbridge.org (cest votre email dadministrateur admin@votre
domaine.com) et le password secret.
On teste la quarantaine pour voir si tout fonctionne.
Cette technique est dsormais quasi indispensable pour assurer une meilleure dlivra
bilit des emails, et depuis la version 2.6, amavisd propose dsormais dexcuter lintgra
it des tches DKIM : Vrification des messages reus et signatures des messages sortant
s.
La vrification DKIM des mails recus et faites par defaut dans amavisd.
Pour la gnration des signatures, il faut configurer amavisd :
On gnre la cl :
mkdir /var/amavis/dkim
cd /var/amavis/dkim
amavisd genrsa /var/amavis/dkim/starbridge.key.pem
les droits du fichier sont mis correctement par amavisd.
Si lon a plusieurs domaines on rpte la procdure pour chaque.
On ajoute ceci au /etc/amavisd.conf :
dkim_key( starbridge.org , starbridge , /var/amavis/dkim/starbridge.key.pem );
A partir dici Amavisd est capable de signer les messages sortants.
Mais le serveur destinataire ne sera pas capable de les vrifier, car il faut publ
ier la cl publique dans les DNS :
Pour cela, on lance la commande suivante pour afficher la cl publique du ou des d
omaines que lon a parametr plus haut.
amavisd showkeys
on fait un copier/coller du rsultat pour le domaine et on le colle tel quel dans
la zone DNS.
Le serveur DNS Unbound gre bien sr cet enregistrement (TXT) et il suffira de lenreg
istrer dans le fichier de zone et de la recharger.
Si les DNS sont grs par lhbergeur, la plupart dentre eux propose de modifier les cham
ps TXT, mais ce nest pas le cas de tous.
Il faudra donc vrifier ce point.
On teste lenregistrement avec une commande damavisd :
amavisd testkeys
Depuis la version 2.7, Amavisd propose un programme externe de signature.
Pour le moment la configuration se fait directement dans le binaire amavisd-sign
er :
vi /usr/sbin/amavisd-signer
On dite les lignes suivantes :
$daemon_user = amavis ;
$daemon_group = amavis ;
$daemonize = 1;
et on ajoute juste sous les exemple de dkim_key, la mme entre que dans amavisd.con
f :
dkim_key( starbridge.org , starbridge , /var/amavis/dkim/starbridge.key.pem );
Pour pouvoir signer les messages il faut que ceux ci proviennent pour amavisd dun
e source de confiance, cest dire en provenance du rseau spcifi dans amavisd comme ta
t local (policy bank MYNETS), ou bien depuis le port 587 dans postfix en TLS + S
ASL (policy bank ORIGINATING).
On teste en envoyant un mail et on vrifie dans les logs que la signature sapplique
bien.
On retrouvera cette signature dans les headers du message envoy.
Notes :
- On peut aller plus loin dans la configuration dAmavisd mais pour ne pas surchar
ger le tuto nous naborderons pas ces points ici.
Toutes les taches cron du tuto sont runies pour faciliter la gestion :
cd /etc/caremail/
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/CAReMAILcron
svn export http://smtp04.spamguard.fr/svn/Procmail/spamassassin/sa-compile
cd cron/
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/cron/daily-purge-sql
.sh
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/cron/daily-purge.sh
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/cron/amavis-purge.sh
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/cron/dspam-purgesql.
sh
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/cron/amavis-purgesql
.sh
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/cron/policydv2-purge
sql.sh
svn export http://smtp04.spamguard.fr/svn/Procmail/caremail/cron/sa-update.sh
chmod 755 /etc/caremail/sa-compile
il faut changer les passwords des fichiers dspam-purgesql.sh, amavis-purgesql.sh
et policydv2-purgesql.sh par ceux que vous avez parametr plus tot.
puis on scurise
chmod 700 /etc/caremail/cron/*
Enfin on fait un lien dans /etc/cron.d :
ln -s /etc/caremail/CAReMAILcron /etc/cron.d/
Vacation AutoReplyRetour la table des matires
On peut ventuellement activer un systme de rponse automatique en cas absence.
Note : Il est fortement dconseill dutiliser ce genre dautorponse car il peut gnrer u
rafic illgitime. (Backscatter Mails).
Voir ces liens pour plus dinformations :
http://www.spamcop.net/fom-serve/cache/329.html
http://www.rfc-editor.org/rfc/rfc3834.txt
Pour limiter ce risque il est ncessaire dinstaller le mcanisme dautoreply au plus pr
oche de la boite email, au moment de la livraison, une fois que tous les tests a
ntispams ont t effectus.
- Logwatch :
son installation est galement automatis par la debian.
Il envoie un rapport journalier sur les logs.
Pour des rsultats pertinent avec postfix/amavis, il faut ajouter les modification
s suivantes :
cd ~
wget http://downloads.sourceforge.net/project/logreporters/amavis-logwatch/relea
se/1.51.02/amavis-logwatch-1.51.02.tgz
tar xvzf amavis-logwatch-1.51.02.tgz
cd amavis-logwatch-1.51.02
cp amavis-logwatch /usr/share/logwatch/scripts/services/amavis
cp amavis-logwatch.conf /usr/share/logwatch/default.conf/services/amavis.conf
cd ..
wget http://downloads.sourceforge.net/project/logreporters/postfix-logwatch/rele
ase/1.40.00/postfix-logwatch-1.40.00.tgz
tar xvzf postfix-logwatch-1.40.00.tgz
cd postfix-logwatch-1.40.00
cp postfix-logwatch /usr/share/logwatch/scripts/services/postfix
cp postfix-logwatch.conf /usr/share/logwatch/default.conf/services/postfix.conf
-Mailgraph :
Mailgraph gnre des graphiques sur lutilisation de la messagerie
aptitude install mailgraph
sed -i s/IGNORE_LOCALHOST=false/IGNORE_LOCALHOST=true/ /etc/default/mailgraph
sed -i s!) SPAM\\!) (SPAM|SPAMMY)\\! /usr/sbin/mailgraph
/etc/init.d/mailgraph restart
note : le dernier sed est pour la version stable du paquet mailgraph. Si on a la
version testing ce nest pas necessaire.
On se connecte pour les graphiques avec lurl :
https://www.starbridge.org/cgi-bin/mailgraph.cgi
- Volume des mails dalertes
Au dbut du tuto, on a parametr Postfix pour alerter le postmaster par mail pour la
plupart des vnements, en particulier les bounces.
Une fois la priode de tests termins, il est conseill de dsactiver ces options car lon
risque dtre rapidement submerg par les mails destination du Postmaster.
Pour cela il faut diter le main.cf et commenter la ligne suivante :
notify_classes = 2bounce, bounce, delay, policy, protocol, resource, software
puis
postfix reload
FirewallRetour la table des matires
Il est capital de protger le serveur par un firewall.
On utilisera iptables..
Ci dessous un exemple pour un serveur standalone.
Il faudra bien sur ladapter la topologie du rseau.
exemple firewall
6.7.9 11/08/2012
- Dovecot : ajout dun chmod manquant
- General : ajout fichier manquant pour purge amavis
6.7.8 02/08/2012
- Gnral : remplacement des crontab par un fichier cron gnral et des fichiers par
service dans un dossier spcifique.
- SA/DSPAM : refonte du sa-learn pour prendre en compte dspam et le format s
dbox
6.7.7 01/08/2012
- Dovecot : migration dovecot maildir vers sdbox, activation compression, prp
aration larrive de solr
- General : typo, ajout lien vers optimisation Mysql
- Mailzu : mise jour pour php 5.4
6.7.6 11/07/2012
- ajout paquets pour la compilation
- ajout de la compression dans la compilation dovecot
- ajout de solr dans la compilation dovecot
- passage dovecot 2.1.8
- Mise jour policyd2
6.7.5 18/06/2012
- Clamav : mise a jour 0.97.5
- Mysql : indication du passage en 5.5 pour la version debian testing
- Amavisd : mise jour 2.7.1
- Amavisd : retrait de la quarantaine /var/virusmail, plus utilise
6.7.4 09/04/2012
- Postfix : fix pour les warnings sur fallback_relay dans le master.cf. Fina
lement il y avait bien un leger changement de conf a faire !
6.7.3 09/04/2012
- Clamav : mise a jour 0.97.4
- Postfix : ajustements du texte pour la version 2.9.1 : version par defaut
de la debian testing et des backports stable. Pas de modification de configurati
on.
6.7.2 22/02/2012
- Dovecot : Mise a jour dovecot 2.1.1
6.7.1 17/02/2012
- Dovecot : Mise a jour dovecot 2.1.0, pigeonhole 0.3.0
6.7.0 22/01/2012
- Postfix : Mise a jour postfixadmin en version 2.4 et modification du looku
p transport
6.6.6 18/11/2011
- Mise a jour dovecot 2.0.16, pigeonhole 0.25
6.6.4 27/10/2011
- Logwatch : mise jour postfix-logwatch-1.39.07
6.6.3 19/10/2011
- Clamav : mise a jour 0.97.3
6.6.2 13/10/2011
- Gnral : mise en forme et typos
- SA : retrait de AWL
6.6.1 24/09/2011
- Logwach : mise jour
6.6.0 16/09/2011
- Postfix : retour linstallation par paquet avec les backports squeeze
6.5.9 16/09/2011
- Dovecot : Mise a jour dovecot et pigeonhole
6.5.8 16/09/2011
- Clamav : mise a jour 0.97.2
- Dspam : mise a jour 3.10.0
6.5.7 4/07/2011
- Amavisd 2.7.0 version finale
6.5.6 26/06/2011
- Spamassassin : upgrade en 3.3.2
- Typos (merci Bouks !)
6.5.5 14/06/2011
- Amavisd : modification du amavisd-signer pour passer en demon
6.5.4 14/06/2011
- Clamav : maj en 0.97.1
6.5.3 14/06/2011
- postfix : mise jour master.cf pour retrait du chroot sur tous les processe
s (conforme au master.cf des sources postfix)
- Mise jour du script sql amavis (verifier les diffs)
6.5.2 03/06/2011
- Spamassassin : upgrade en 3.3.2 rc2
6.5.1 02/06/2011
- Policyd : migration en V2
6.5.0 31/05/2011
- Gnral : mise jour pour Squeeze, retrait paquets inutiles
- Amavisd 2.7.0-rc1
- passage de bind a unbound pour les dns
- postfix 2.8.3 depuis les sources et utilisation de postscreen
- ajout pyzor et razor pour SA
- ajout dkim amavisd-signer
- maj script sql dspam
6.4.2 29/05/2011
- Dovecot : mise a jour 2.0.13 et sieve 0.2.3
6.4.1 28/05/2011
- Amavisd : modification du script sql pour utiliser le partitionning sur la
table quarantine. La version 5.1 de mysql doit etre utilise.
6.4.0 18/05/2011
- retrait des rules SARE desormais obsoletes et ajout des rules SOUGHT
6.3.0 08/03/2011
- global : mise a jour pour les changements de versions debian
4.9.5 01/11/2009
- Amavisd : modification de la base SQL. Drop des contraintes et ajout dun ch
amp dans une cl primaire. Modification du script de purge pour utiliser le partit
ion_tag. Modification du amavisd.conf pour insrer le partition_tag dans la base.
4.9.4 28/10/2009
- Clamd : Mise jour en version 0.95.3
4.9.3 2/10/2009
- Gnral : Mise jour des scripts init.d (clamd/amavis/policyd) pour intgrer les
headers LSB. Ajout des commandes insserv dans le cas de la version testing.
4.9.2 12/09/2009
- Mise jour script sanesecurity : v3.6
4.9.1 26/08/2009
- DSPAM : mise jour en dspam-3.9.0-BETA1
4.9.0 26/08/2009
- SA : passage des regles amavis-sanesecurity sur les rules starbridge pour
une mise jour automatique avec sa-update
- Gnral : cration dun rpertoire commun pour les scripts de maintenance. Modificat
ion des chemins.
- SA : modification du sa-update et passage de la compilation des rulesets e
n quotidien dans le script directement.
4.8.9 25/08/2009
- Logwatch : Mise jour
4.8.8 05/07/2009
- SA : ajoutdun channel starbridge pour les mises a jours des regles SA
4.8.7 30/06/2009
- Dspam : mise jour paramtrage dans amavisd.conf et dans dspam.conf
4.8.6 27/06/2009
- Clamd : Mise jour en version 0.95.2
4.8.5 26/06/2009
- Amavisd : Mise jour du binaire et du fichier de conf en 2.6.4.
- Dspam : Mise jour en 3.9.0 ALPHA2
4.8.4 11/06/2009
- Amavisd : modification du master.cf et du amavisd.conf pour ajouter le por
t 10029 spcifique aux notifications damavisd
- Dspam : mise jour du script de cration des tables MySQL.
4.8.3 17/05/2009
- amavisd : mise jour prrequis libdb4.4-dev par libdb4.6-dev. Le paquet nexist
e plus dans Lenny
- paragraphe antispam : modification de lordre dexcution du tutorial pour evite
r le message suivant au dmarrage damavisd durant les tests" Cant locate object meth
od "new" via package "Amavis ::SpamControl" at /usr/sbin/amavisd line 13878."
4.8.2 10/05/2009
- Dspam : Mise jour version 3.9.0
- Mise jour script sanesecurity : v3.0
4.8.1 24/04/2009
4.6.2 17/11/2008
- Amavisd : Mise jour en 2.6.2-pre1. Les nouvelles signatures Sanesecurity o
nt t ajout au code, donc on les enleve du amavisd.conf.
4.6.1 12/11/2008
- Amavisd : modification du amavisd.conf pour utiliser des fichiers externes
pour les domaines et les whitelist/blacklist. Ajout des nouvelles signatures Sa
neSecurity
- SA : Ajout des nouvelles signatures SaneSecurity
- SaneSecurity : Mise a jour du script
- Clamd : Mise jour en version 0.94.1
- Postfixadmin : Mise a jour en 478
4.6.0 26/09/2008
- Postfix : retrait de la rbl list.dsbl.org. Celle ci est arrete dfinitivement
.
4.5.9 04/09/2008
- Clamd : Mise jour en version 0.94
4.5.8 03/09/2008
- Postfixadmin : mise jour en version 458. Mise jour de vacation.pl
4.5.7 02/08/2008
- Postfixadmin : mise jour en version 432. Corrige le bug pour leffacement du
vacation_notification dans le mode admin
4.5.6 01/08/2008
- Postfixadmin : mise jour vacation.pl. Remise en forme du paragraphe dans l
e tuto pour crer le /etc/postfix/transport par wget+sed.
- Dspam : simplification de limport sql (wget)
4.5.5 31/07/2008
- Postfixadmin : mise jour en version 431. Mise jour du fichier config.inc.p
hp
4.5.4 20/07/2008
- SA : retrait de la procdure cpan et installation des modules perl en packag
e debian.
4.5.3 19/07/2008
- Amavisd : retrait de la procdure cpan et installation des modules perl en p
ackage debian.
4.5.2 18/07/2008
- Amavisd : Modification des options de compilation pour deplacer les binair
es dans le chemin par defaut : /usr au lieu de /usr/local
- Policyd : Idem
- SA : idem. On installe SA directement par perl et non plus par CPAN.
4.5.1 17/07/2008
- Clamd : Modification des options de compilation pour deplacer les binaires
dans le chemin par defaut : /usr au lieu de /usr/local. Meme chose pour clamdmo
n dont le package fourni a t modifi.
- Dspam : Idem
4.5.0 08/07/2008
- Clamd : Mise jour en version 0.93.3
4.4.9 04/07/2008
- Postfixadmin : Mise jour du script sql de creation des tables
- Postfix : passage des commandes de creation des fichiers de lookup sql de
la partie antispam/antivirus en wget/sed.
4.4.8 02/07/2008
- Postfix : Modification des droits sur les lookup sql de la partie antispam
. Le owner doit etre root, et non postfix.
- Maildrop : Modification de la cration du fichier quotawarnmsg. On ne le pla
ce plus que dans /etc/. La creation du dossier /usr/local/courier etant inutile.
4.4.7 01/07/2008
- Mailfilter : Modification de la cration du dossier des mails envoys par dfaut
. Dsormais le rpertoire sera Sent, et plus sent-mail pour compatibilit avec les der
nieres versions de horde et avec Thunderbird. Ajout dune regle pour intercepter l
es mails avec lextension +spam, utilise par amavisd si il est paramtr avec Mailzu.
4.4.6 30/06/2008
- Policyd : prcision sur la possibilit de placer la vrification dans le smtpd_r
ecipient_restrictions dans le cas ou le controle du nombre de mails envoys/recus
est primordial.
4.4.5 28/06/2008
- Amavisd : Mise jour en version 2.6.1
4.4.4 28/06/2008
- Amavisd : modification du script sql pour le pb dimport. Correction officie
lle.
4.4.3 25/06/2008
- Clamav : Mise jour du script UpdateSaneSecurity.sh pour eviter le controle
du repertoire /var/lib/clamav (structure differente dans les dernieres versions
de clamav)
4.4.2 24/06/2008
- Postfix : Modification dans la mise en forme du tuto de linsert des tables
sql principales et des fichiers de lookup. (wget + sed)
- SASL : idem pour tout la section
4.4.1 23/06/2008
- Postfix : Mise en place des prrequis pour lutilisation de certains domaines
en relais uniquement en cochant loption relative dans postfixadmin. (ajout du fic
hier /etc/postfix/mysql_relay_domains_maps.cf et modification du fichier /etc/po
stfix/mysql_virtual_domains_maps.cf)
4.4.0 16/06/2008
- Maildrop : Passage la version par paquet debian. Au niveau fonctionnel cel
a modifie le comportement de maildrop lors dun over quota : il ne rejette plus le
mail gnrant ainsi un bounce, mais il met celui ci en queue.
- Courier/Dovecot : Mise en forme du tuto pour bien sparer les 2 installation
s
- Clamd : ajout de clamdmon en telechargement car il a disparu des sources d
e clamd 0.93.1
4.3.6 14/06/2008
- SA : Mise jour en version 3.2.5
4.3.5 11/06/2008
- Amavisd : ajout dans le amavisd.conf fourni dune section banned_rules, perm
ettant de specifier dans les policies dans la base sql une liste personnalise de
fichiers bannis. Il sagit dexemple qui pourront bien sur etre modifis.
4.3.4 11/06/2008
- Amavisd : ajout dexemple et dexplication sur les policies dans SQL. Explicat
ion sur la possibilit de paramtrer par domaine.
4.3.3 09/06/2008
- Clamd : Mise jour en version 0.93.1
4.3.2 02/06/2008
- Policyd : dsactivation des options de verifications du HELO par dfaut dans l
e fichier de configuration fourni. La verification du HELO est deja faite dans p
ostfix et le controle du HELO selon lhote peut gnrer des blocages. Ces 2 controles
peuvent etre reactivs si lon comprend bien leur fonctionnement.
4.3.1 02/05/2008
- Postfixadmin : Remplacement dans le tuto du config.inc.php par un fichier
preconfigur a tlcharger.
- Postfixadmin : mise jour en version 3.5.8. Cette version correspond a la r
elease 2.2
4.3.0 23/04/2008
- Amavisd : Mise jour en version 2.6.0. Mise jour du fichier amavisd.conf po
ur ajouter le parametre dactivation de la signature dkim
4.2.8 22/04/2008
- Gnral : Uniformisation du nom du serveur dans le tuto : dans le /etc/hosts r
etrait du domaine seul (starbridge.org). Dans la partie TLS, modification du CN
en spike.starbridge.org au lieu de starbridge.org
4.2.7 20/04/2008
- Amavisd : Mise jour en version 2.6.0rc2. Mise jour du script sql et du fic
hier amavisd.conf.
4.2.6 14/04/2008
- Clamd : Mise jour en version 0.93. Mise jour des fichiers de configuration
.
4.2.5 9/04/2008
- Maildrop : mise jour de lurl pour rcuprer les sources
4.2.4 1/04/2008
- Amavisd : modification du tuto pour faire en sorte de recuperer le fichier
de conf damavisd correctement modifi au dbut de linstallation et deviter ainsi les e
rreurs de conf.
4.2.3 28/03/2008
- Amavisd : prerequis Mail ::DKIM deplac de la partie SA vers amavisd dans le
tuto car cest dsormais un prrequis pour amavisd
4.2.2 26/03/2008
- Reporting : Ajout de mailgraph pour gnrer des graphiques.
4.2.1 26/03/2008
- Policyd : FIX pour le pb de multiple recipient : Suppression de la verific
ation de policyd sur les recipient. (policyd.conf mis a jour)
4.2.0 21/03/2008
- Postfix : Nettoyage dune ACL inutile dans le stage smtpd_sender_restriction
s (reject_unknown_sender_domain) car prsente ensuite dans le stage smtpd_recipien
t_restrictions.
- Policyd : Dplacement de la rgle dappel de policyd dans le main.cf du stage sm
tpd_recipient_restrictions smtpd_end_of_data_restrictions. Cela permet Policyd d
e connaitre la taille dun message, mais aussi cela permet de faire passer au trav
ers de policyd les senders locaux. Cela permettra donc un controle de flux pour
les users internes. Mise a jour du document de gestion du serveur pour refleter
ce changement.
4.1.1 21/03/2008
- Amavisd : Activation dans amavisd du port 10026 pour utiliser la policy ba
nk ORIGINATING et permettre aux utilisateurs passant par le port 587 et authenti
fis par SASL detre considrs comme locaux par amavisd, meme si ils sont en dehors du
LAN.
4.1.0 20/03/2008
- Amavisd : Mise jour en 2.6.0rc1. Mise jour du script SQL damavisd. Ajout dun
e section pour configurer la signature DKIM par amavisd.
4.0.4 19/03/2008
- Gnral : ajout de lien pour suivre linstallation de Dovecot la place de Courie
r-imap dans le tuto
4.0.3 13/03/2008
- Amavisd : mise jour en amavisd-new-2.5.4
4.0.2 11/03/2008
- Postfix : Mise jour du master.cf de base pour la version 2.5 (ajout de pro
xywrite).
- Postfixadmin : Mise en jour en 311
4.0.1 10/03/2008
- Postfix : Mise jour des chemins btree dans le main.cf pour prendre en comp
te un changement dans la version 2.5 de postfix. ( $queue_directory ==> $data_di
rectory ). Ajout dune note pour la compatibilit avec Postfix < 2.5
4.0.0 26/02/2008
- FIX : Maildrop : le mail de warning lors de lapproche du quota (90%) ne fon
ctionnait plus ==> Modification de la mthode dinstallation du fichier quotawarnmsg
et surtout de sa localisation.
3.9.8 12/02/2008
- Clam : Mise jour en version 0.92.1
3.9.7 31/01/2008
- Clam : Mise jour du script UpdateSaneSecurity.sh.
3.9.6 30/01/2008
- Logwatch : Mise jour en amavis-logwatch-1.48.27
3.9.5 29/01/2008
- Courier : ajout dune clause dans authmysqlrc pour vrifier le statut actif du
compte et rendre le login imap impossible si celui ci est desactiv
3.9.4 29/01/2008
- Dspam : passage du fichier de configuration en wget et sed pour modificati
on du password.
3.9.3 28/01/2008
- firewall : le script de firewall a t transform en lien pour limiter la taille
de la page du tuto.
- policyd : passage du fichier de configuration en wget, modification du uid
/gid du user policyd en 20002 pour matcher le fichier de conf. passage du fichie
r init en wget
3.9.2 21/01/2008
- Postfixadmin : Mise jour en rvision 298
3.9.1 14/01/2008
- Gnral : modification de la procdure de cration de nombreux script en wget pour
faciliter la mise en oeuvre (sa-learn, sa-update, sa-compile, dspam.....)
3.9.0 11/01/2008
- Postfixadmin : Mise jour en rvision 291. Ajout dun import wget pour le confi
g.inc.php et dune commande de substitition du nom de domaine pour faciliter lediti
on de ce fichier de config.
- Postfix : ajout dun script pour importer la table sql et commande rapide po
ur le changement du domaine.
- Maildrop : ajout dun wget pour importer directement le fichier authmysqlrc
et viter ainsi les erreurs de saisie. Ajput de la commande pour modifier le passw
ord dans le fichier.
3.8.9 9/1/2008
- SA : Mise jour en version 3.2.4.
3.8.8 31/12/2007
- Postfixadmin : Mise jour en rvision 283.
3.8.7 18/12/2007
- Clam : Mise jour en version 0.92
3.8.6.1 18/12/2007
- SA : FIX : Correction de lerreur sur le nom du fichier sql de la base suite
la mise jour 3.8.4
3.8.6 17/12/2007
- Amavisd/Postfix : Modification du destinataire du test telnet (postmaster >
admin@starbridge.org) qui ne fonctionnait plus depuis la mise jour du tuto 3.8.
1
- Gnral : modification de la commande de cration du user vmail. Cration automati
que du home "virtual".
- Maildrop : Prcision pour le paquet libpcre++-dev sous etch.
3.8.5 14/12/2007
- Postfixadmin : Mise jour en rvision 268. Adaptation du config.inc.php.
3.8.4 12/12/2007
- SA : ajout du support de lAutoWhitelist (AWL) : ajout de la table sql, modi
fication du local.cf et ajout dun script de purge.
- SA : modification de limport SQL : modification du script pour prendre en c
ompte la creation directe des tables InnoDB. Retrait de la section de conversion
en InnoDB.
- Amavisd : Mise jour en version 2.5.3
3.8.3 09/12/2007
- Clam : modification du fichier clamdmon.sh pour ajouter les chemins vers l
es binaires.
3.8.2 06/12/2007
- Postfix : ajout dun paragraphe dans la section analyse des logs sur la ncess
it de desactiver lenvoi de mail au postmaster pour les bounces, une fois la priode
de test termine.
3.8.1 30/11/2007
- Postfix-Amavisd : Retrait du paramtre receive_override = no_address_mapping
s dans le main.cf pour le dplacer dans le master.cf sur le port 10025. Cela perme
ttra dutiliser pleinement les rgles par utilisateurs dans amavisd.
- amavisd : Changement du destinataire des mails dalerte virus (virusalert ==
> admin)
3.8.0.1 27/11/2007
- Postfixadmin : svn : mise a jour en version 248
- typos
3.8.0 25/11/2007
- Amavisd : ajout dune section sur la configuration de Penpals et des lookups
SQL pour une gestion par utilisateurs
3.7.4 23/11/2007
- SA : /etc/sa-update.sh, ajout des chemins en dur vers les binaires, pour e
viter les problmes avec Ubuntu.
- SA : ajout du chemin dans la crontab pour le sa-learn
3.7.3 22/11/2007
- policyd : ajout des INSERT dans la table blacklist_helo
3.7.2 20/11/2007
- Postfix : Activation dans le master.cf du port 587 (submission).
- Postfix : Prparation du port 465 (smtps) mais non activ (comment). Il peut et
re ncessaire suivant les cas de figure. Ce port est considr comme obsolte.
- Firewall : Ouverture du port 587.
- Amavisd : ajout de notes et dun lien vers un autre article du site sur lutil
isation du port 587 pour bypasser lantispam pour les mails sortants.
3.7.1 15/11/2007
- Postfixadmin : passage en rvision 227.
3.7.0 13/11/2007
- TLS : Refonte totale de la cration des certificats et de la CA.
- Postfix-TLS : modification des options relatives dans le main.cf
- Imapd-ssl : Ajout de la creation dun certificat personnalis et sign par la CA
- Postfixadmin-ApacheSSL : Modification du certificat.
- UpdateSaneSecurity : Changement pour la 1ere execution du script : cest le
user amavis qui la lance, a lidentique du cron.
- Postfix : Nettoyage du main.cf original (celui du debut du tuto). retrait
de parametres inutiles. Pas de changement dans les fonctionnalits.
3.6.6 12/11/2007
- Maildrop : ajout dune prcision sur le point pour terminer un mail en ligne d
e commande.
- Maildrop : Ajout dune prcision sur les droits appliquer au fichier personnel
.mailfilter.
- Postfix sql : Nettoyage des scripts de cration des tables postfix_hello et
postfix_access. (AUTO INCREMENT)
- Postfixadmin : passage en rvision 215.
- Postfixadmin : Retrait du paragraphe sur le .htaccess dans le rpertoire adm
in car celui ci nexiste plus dans cette version. (il est vide)
- Postfixadmin : Retrait du paragraphe sur la correction de laffichage.
- Postfixadmin : Mise jour du config.inc.php
- Amavisd : retrait du mkdir /var/amavis, dj cre par la commande adduser.
- sa-learn : prcision sur les deplacements des emails dans les dossiers SpamF
alse et SpamToLearn
- Typo
3.6.5 08/11/2007
- Vacation.pl : modification du script pour ne pas envoyer dautoreply pour me
ssages marqus comme spam par SA.
3.6.4 07/11/2007
- Maildrop : modification des droits appliqus sur le /var/run/courier/authdae
mon. (775 ==> 750)
3.6.3.1 30/10/2007
- FIX clam : Modification du chmod sur le dossier /var/tmp/clamdb pour evite
r une erreur de droits lors de lexcution du script.
3.6.3 28/10/2007
- Clam : modification dans le tuto pour automatiquement telecharger les fich
iers de configuration clamd.conf et freshclam.conf. Plus besoin de les editer ma
nuellement.
- Freshclam : Modification du cron en edition de la crontab plutt que par un
fichier dans /etc/cron.d
- SA : ajout de 2 modules perl optionnels : Mail ::DKIM et Encode ::Detect.
Ajout du package libssl-dev necessaire a la compilation, en dbut de tuto.
- SA : Edition du fichier /etc/mail/spamassassin/v312.pre pour activation du
plugin Mail ::Dkim
3.6.2 27/10/2007
- Clam : modification du crontab de UpdateSaneSecurity. Il sera excut par le u
ser amavis. (au lieu de root)
- Clam : Dplacement du paragraphe de UpdateSaneSecurity dans celui de linstall
de clamd.
- Clam : retrait de la cration du RamDisk /var/lib/clamav pour viter le problme
au redmarrage.
- clam : ajout du lancement de freshclam lors de linit.d de clam.
- Freshclam : Retrait du lancement de freshclam en cron au boot. Retrait dun l
og-verbose en trop dans la ligne.
- Clamav : installation de clamdmon pour surveiller Clam.
3.6.1 25/10/2007
- vacation.pl : ajout du module Mail ::Sendmail dans les prrequis (ils se tro
uvent dans la partie amavisd du tuto) pour viter un problme de dpendances.
3.6 24/10/2007
- postfixadmin : modification du script de scurisation des fichiers, effaceme
nt du setup.php plus tt dans le tuto. Rappel du password du superadmin
- postfixadmin : ajout de la modification pour la mise en page en francais
- logwatch : mise jour des liens pour le tlchargement suite aux changements su
r le site original.
- typos
3.5.9 17/10/2007
- postfixadmin : passage en rvision 157
- postfixadmin : mise jour vacation.pl
3.5.8 04/10/2007
- postfixadmin : passage en rvision 132. Modification du config.inc.php
- postfixadmin : mise jour vacation.pl
3.5.7 03/10/2007
3.4 21/08/2007
- Maildrop : modification de la version en 2.0.4.
- Maildrop : Ajout de make la liste de packages ncessaires linstallation.
- Maildrop : Explication sur le message derreur la fin du make install et sur
le temps ncessaire au ./configure.
- Maildrop : retrait du paragraphe sur le fichier obsolte maildropmysqlconfig
- Maildrop : ajout de prcisions sur la procdure de test.
- TLS : ajout dun chmod sur le dossier /etc/postfix/tls
- SASL : modification du fichier /etc/init.d/postfix pour tenir compte des m
ises jour debian. (dans la ligne FILE, le fichier etc/nss_mdns.config a t ajout par
linstalleur)
- Postfix : mise jour du master.cf original pour correspondre la dernire vers
ion de linstalleur.
- Postfixadmin : [rouge]refonte totale[/rouge]. Installation de la version S
VN. Mise jour des commentaires.
- Postfixadmin : ajout dune section sur linstallation du SSL dans apache
- Clamav : Mise jour version 0.91.2 et mise jour des fichiers de configurati
on dexemple.
- Clamav : modification des prrequis de compilation. (changement de version d
u paquet debian libgmpxx4)
- Ramdisk : modification du mount pour les ramdisk (mount tmfs)
- Vacation : modification/simplification de la procdure (ajout de wget) et mo
dification du lien vers postfixadmin dans cette section en https:// (ajout du ss
l)
3.3 19/08/2007
- retrait de scores obsoltes dans local.cf pour SA : (HTML_60_70 et HTML_SHOU
TING3)
3.2 11/08/2007
- modification de la structure des tables SQL de postfixadmin : correction d
es index.
- ajout de sa-compile dans linstallation de SA
3.1 08/08/2007
- ajout de la section sur les mises jour des rgles SA et installation des rgle
s SARE.
- ajout de la section sur linstallation des signatures supplmentaires de Clam
: sanesecurity.
- mise jour du ficher amavisd.conf dexemple (lien)
3.0 06/08/2007
- ajout dune section Firewall avec un exemple.
- modification des liens pointant sur le tuto webmail (tuto cre ce jour)
2.8 30/07/2007
- retrait du paragraphe sur la modification damavisd 2.50 et antrieures pour f
onctionner avec dspam 3.8.0. On utilise amavisd 2.52 par dfaut dsormais. Si ncessai
re, la modification effectuer est toujours documente dans larticle spcifique sur DS
PAM.
- typos
- prcision sur le fichier maildropmysql.config dans la partie sur Maildrop
2.7 27/07/2007
- retrait des commandes postmap inutiles sur les fichiers de lookup Mysql
- mise jour de certains lookup sql qui taient nots avec lancienne syntaxe de po
stfix.
2.6 18/07/2007
- Mise jour du lien pour clamav 0.91.1
2.5 09/07/2007
- Modification du master.cf pour eviter le filtrage et les body/header check
s sur le pickup.
2.4 03/07/2007
- ajout de la modification de /etc/init.d/courier-authdaemon sous ubuntu pou
r viter le changement des droits chaque lancement.
- simplification du paragraphe sur les RBL. Seules 2 listes restent en fonct
ion par dfaut.
2.3 30/06/2007
- modification du lien de clamd pour la version 0.91rc2 en raison du bug de
demarrage de la version 0.90.3.
2.2 29/06/2007
- ajout dun paragraphe dans courier-imap sur lutilisation de ENHANCEDIDLE.
- ajout dun paragraphe dans courier-imap sur le nombre de process maximum
- ajout dun paragraphe dans courier-imap sur le fonctionnement des fichiers d
e configuration imapd et imapd-ssl
2.1 28/06/2007
- Typo
2.0 27/06/2007
- Partie antispam, paramtrage de postfix (stmd_recipient_restrictions..) : Re
fonte complte du paragraphe pour ajouter des rgles pour viter le spoofing des adres
ses expditrices.
- Postfix main.cf (au dbut du tuto) : ajout de $smtpd_sender_login_maps dans
proxy_read_maps.
- Mise jour des liens pour Amavisd-2.5.2
1.3 26/06/2007 Merci Guillain pour son aide !
- Typos : type Mime
- Headers/body/tyme Mime : modification des noms de fichiers pour quils aient
tous la terminaison .cf
- SASL : Ajout du START=yes dans le /etc/default/saslauthd
- Maildrop : ajout de libpcre3-dev dans les paquets ncessaires installer (com
patibilit Ubuntu)
- Maildrop : ajout de linstallation de la commande mail pour les systmes Ubunt
u
1.2 06/06/2007
- Modification du script dapprentissage SA
- ajout des botes email dapprentissage Spam et Ham
- ajout des rpertoires par dfaut dans les botes imap : SpamToLearn et SpamFalse
1.1 31/05/2007
- Modification du Main.cf et dplacement du reject_unauth_pipelining sous smtp
d_data_restrictions.
- Modification de postfixadmin pour corriger le bug denvoi de lemail de confir
mation li a la restriction sur le pipelining.
1.0 Article Original