Ce tutoriel détaille la configuration complète de Postfix pour :
sasldb2).HOSTNAME-root@mon-domaine.fr.Installer Postfix, les outils de test et le module requis pour la gestion des expressions régulières (PCRE) :
sudo apt update sudo apt install postfix bsd-mailx postfix-pcre -y
On configure SASL pour utiliser une base de données indépendante des utilisateurs Linux du système.
Créer le dossier et le fichier de configuration :
sudo mkdir -p /etc/postfix/sasl sudo vi /etc/postfix/sasl/smtpd.conf
Coller le contenu suivant :
pwcheck_method: auxprop auxprop_plugin: sasldb mech_list: PLAIN LOGIN
Créer l’utilisateur de messagerie (remplacer mon-domaine.fr par la valeur exacte de votre myhostname) :
sudo saslpasswd2 -c -u mon-domaine.fr toto
(Saisissez et confirmez le mot de passe lorsque demandé).
Par sécurité, Postfix s’exécute souvent de manière isolée (Chroot). Il faut copier la base de données des utilisateurs SASL dans sa prison :
# Droits sur le fichier maître sudo chown root:postfix /etc/sasldb2 sudo chmod 640 /etc/sasldb2 # Duplication dans le Chroot Postfix sudo mkdir -p /var/spool/postfix/etc/ sudo cp /etc/sasldb2 /var/spool/postfix/etc/sasldb2 sudo chown root:postfix /var/spool/postfix/etc/sasldb2 sudo chmod 640 /var/spool/postfix/etc/sasldb2
**NOTE :** En cas de modification future du mot de passe via ''saslpasswd2'', il faudra impérativement refaire la copie vers le dossier ''/var/spool/postfix/etc/''.
Créer le fichier spécifiant quels domaines doivent être ralentis :
sudo nano /etc/postfix/transport
Ajouter les lignes suivantes :
orange.fr slow: wanadoo.fr slow: orange.com slow: wanadoo.com slow:
Compiler la table de transport pour Postfix :
sudo postmap /etc/postfix/transport
Si votre instance trivial-rewrite s’exécute en Chroot, copier également les fichiers générés dans la prison :
sudo mkdir -p /var/spool/postfix/etc/postfix/ sudo cp /etc/postfix/transport* /var/spool/postfix/etc/postfix/
Ouvrir le fichier :
sudo nano /etc/postfix/main.cf
Adapter ou ajouter les blocs suivants à la fin du fichier :
# Réécriture d'envoi dynamique (Generic) smtp_generic_maps = pcre:/etc/postfix/generic # Routage et transport transport_maps = hash:/etc/postfix/transport # Bridage du service "slow" (Orange / Wanadoo) slow_destination_recipient_limit = 20 slow_destination_concurrency_limit = 2 slow_destination_rate_delay = 10s
Ouvrir le fichier :
sudo nano /etc/postfix/master.cf
Créer le fichier /etc/postfix/generic pour intercepter les envois locaux de root :
sudo nano /etc/postfix/generic
Ajouter la règle RegEx (le ${HOSTNAME} sera interprété dynamiquement par le système) :
/^root(@.*)?$/ ${HOSTNAME}-root@mon-domaine.fr
Définir vers quelle boîte de réception externe les mails système doivent arriver :
sudo nano /etc/aliases
Modifier ou ajouter la ligne :
root: votre-email-externe@mon-mail.com
Appliquer les alias :
sudo newaliases
Redémarrer Postfix pour appliquer l’ensemble de la configuration :
sudo systemctl restart postfix
Depuis une autre machine ou via un client comme Thunderbird, configurez un compte SMTP sortant sur le port 587 (Sécurité: STARTTLS), avec l’utilisateur toto et le mot de passe défini à l’étape 2.
Exécuter la commande suivante sur le serveur :
echo "Test d'alerte système Postfix" | mail -s "Alerte Test [${HOSTNAME}]" root
Vérifier le bon déroulement des opérations dans les journaux :
sudo journalctl -u postfix -f
* Pour un mail Orange, vous devez voir passer la mention postfix-slow/smtp.
* Pour la réécriture root, vous devez constater la traduction automatique de l’expéditeur en from=HOSTNAME-root@mon-domaine.fr.