Installation et configuration de Postfix et Courrier
Contents
1 Introduction
Postfix est un serveur de messagerie électronique et un logiciel libre développé par Wietse Venema. Il se charge de la livraison de messages électroniques. Il a été conçu comme une alternative plus rapide, plus facile à administrer et plus sécurisée que l'historique Sendmail.
Ce logiciel permet de gérer presque tous les cas d'une utilisation professionnelle. Utilisé avec les regexp dans un fichier junk et une liste publique antispam, il permet d'éviter bon nombre de spams sans même devoir scanner les contenus de message. Il remplace idéalement toutes sortes de solutions moins libres. On trouve quelques howto sur le site officiel de Postfix. Afin d'optimiser l'analyse de courriels, Postfix permet de déléguer la gestion de ceux-ci à un processus externe, qui se chargera de déterminer si le courriel est accepté ou refusé (très utile dans les systèmes anti-pourriel).
Le schéma suivant décrit l'architecture interne de postfix :
2 Installation
2.1 Debian
Pour installer un serveur Postifx, voici le minimum à installer :
apt-get |
apt-get install postfix courier-imap-ssl procmail spamc |
2.2 OpenBSD
Sous OpenBSD, nous allons prendre la version packagée simple :
pkg_add |
pkg_add -iv postfix |
Après l'installation, il faut remplacer postfix à la place de sendmail. Il suffit de suivre les instructions données à la fin de l'installation de Postfix. Notamment, il faut supprimer les tâches cron de sendmail et configurer le système pour qu'il utilise postfix à la place de Sendmail.
C'est ce que fait le script postfix_enable !
2.3 FreeBSD
Sous FreeBSD, nous allons prendre la version packagée :
pkg_add |
pkg_add -vr postfix |
Après l'installation, il faut remplacer postfix à la place de sendmail. Il suffit de suivre les instructions données à la fin de l'installation de Postfix. Nous allons continuer ici en rajoutant cette ligne dans rc.conf :
rc.conf |
... postfix_enable="YES" |
Désactivons sendmail en rajoutant ces lignes :
rc.conf |
sendmail_enable="NO" sendmail_submit_enable="NO" sendmail_outbound_enable="NO" sendmail_msp_queue_enable="NO" |
3 Configuration
Pour la configuration, il va falloir éditer puis adapter le fichier de configuration :
Comme vous pouvez le voir, la ligne "smtpd_recipient_restrictions" est assez longue. C'est parceque des RBL y sont intégrés. Voici une petite description :
Les RBLs ont comme mandat de fournir une liste de serveurs réputés comme grands envoyeurs de courriels, et de lister les grands pollupsteurs. Il s'agit en fait d'une grande liste noire généralisée. Le principe d'utilisation est fort simple : lorsqu'un filtre reçoit une courriel, il vérifie si le serveur d'envoi est contenu dans un RBL. Si oui, le courriel est catégorisé comme pourriel. Les RBLs qu'un filtre utilise comme sources de serveurs est habituellement déterminée par l'administrateur système. Cette méthode contient donc son lot de controverse, puisque certains RBLs sont réputés pour être plus efficaces que d'autres. Le choix des RBLs influence donc directement l'efficacité du système anti-pourriel. De plus, certains RBL ont des règles plus souples que d'autres quant à l'ajout d'un serveur dans leur liste, compliquant encore plus la situation. Parmi les RBLs connus, notons, entre autres, SpamHaus, DynaBlock, Sorbs, et DSBL. Il est également possible d'associer ROKSO aux RBLs. ROKSO (Register of Known Spam Operations) est une liste des polluposteurs les plus actifs. En fait, les membres de ROKSO sont responsables de près de 80% du pourriel sur le Net.
L'option "disable_dns_lookups = yes" sert a désactiver les requetes vers le DNS. lorsque le "relayhost" est entre "[ ]" cela implique que postfix n’essaiera pas de resoudre le MX.
Ensuite créez un fichier /etc/postfix/mime_header_checks.regexp :
Si certaines pièces jointes ne passent pas à l'envoie ou la réception, c'est ici qu'il faut faire des modifs (au niveau des extentions).
Editez le fichier /etc/mailname et mettez votre DNS :
/etc/mailname |
deimos.fr |
3.1 OpenBSD
Pour OpenBSD, il y a ces lignes en plus :
Editez le fichier /etc/mailname et mettez votre DNS :
/etc/mailname |
deimos.fr |
4 Lancer Postfix
4.1 Debian
Une fois que tout ceci est terminé, il ne vous reste plus qu'à lancer la commande de redémarrage du service :
/etc/init.d/postfix restart |
4.2 OpenBSD
Postfix se lance avec la commande postfix start, mais d'abord il va falloir activer Postfix à la place de Sendmail :
postfix-enable |
Regarder dans les fichiers /var/log/messages et /var/log/maillog pour voir si tout s'est bien passé.
Arrêt et démarrage de Postfix, vérification de la configuration :
- postfix check : vérification élémentaire de la configuration
- postfix reload : rechargement des fichiers de configuration
- postfix start : démarrage de postfix
- postfix stop : arrêt de postfix
Gestion des files d'attente :
- mailq : affichage du contenu des files
- postqueue -p : affichage du contenu des files
- postqueue -f : forcer le traiment des files
- postfix flush : forcer le traiment des files
4.3 FreeBSD
Nous allons donc killer sendmail et démarrer postfix :
pkill sendmail postfix start |
Postfix est maintenant démarré
5 Création de boites aux lettres
Pour créer ensuite une boite aux lettres, il suffit de se placer dans son home et de taper :
maildirmake |
maildirmake Maildir |
Ensuite, pour que les mails arrivent à destination, il faut placer dans un fichier ".procmailrc" ces quelques lignes :
6 Se protéger encore plus du spam
Je vous conseil un site qui répertorie toutes les adresses intéressantes. Faites en bon usage, mais attention à ne pas trop en mettre !
http://spamlinks.net/filter-dnsbl-lists.htm
7 Ressources
Site officiel de Postfix
Documentation sur la mise en place de Postfix sur OpenBSD
Postscreen : lutter un peu plus contre les spams
Installation rapide d'un serveur mail sécurisé
Configuration avancée de Postfix
Lutter contre le spam avec Postfix
Serveur SMTP Routage des mails avec Postfix
Les pratiques antispams
SMTP reject 554 : Eliminez le spam à la racine
Documentation sur la configuration du bounce mail sur Postfix
Anti-spam adaptable et performant avec OpenBSD et Spamd
Virtual Users And Domains With Postfix Courier MySQL And SquirrelMail
How To Whitelist Hosts IP Addresses In Postfix
Installation d’un serveur mail brique par brique