Postfix Configuration · 3 min read · Oct 11, 2025
Utilisateurs et domaines virtuels avec Postfix, Courier et MySQL (CentOS 5.1) - Page 5
14 Tester Postfix
Pour voir si Postfix est prêt pour SMTP-AUTH et TLS, exécutez
telnet localhost 25Après avoir établi la connexion à votre serveur de messagerie Postfix, tapez
ehlo localhostSi vous voyez les lignes
*250-STARTTLS *et
*250-AUTH PLAIN LOGIN *tout va bien.
[root@server1 ~]# telnet localhost 25
Trying 127.0.0.1...
Connected to localhost.localdomain (127.0.0.1).
Escape character is '^]'.
220 server1.example.com ESMTP Postfix
ehlo localhost
250-server1.example.com
250-PIPELINING
250-SIZE 10240000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN LOGIN
250-AUTH=PLAIN LOGIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
quit
221 2.0.0 Bye
Connection closed by foreign host.
[root@server1 ~]#Tapez
quitpour revenir au shell du système.
15 Peupler la base de données et tester
Pour peupler la base de données, vous pouvez utiliser le shell MySQL :
mysql -u root -p
USE mail;Vous devez au moins créer des entrées dans les tables domains et users :
INSERT INTO `domains` (`domain`) VALUES ('example.com');
INSERT INTO `users` (`email`, `password`, `quota`) VALUES ('[email protected]', ENCRYPT('secret'), 10485760);(Veuillez faire attention à utiliser la syntaxe ENCRYPT dans la deuxième instruction INSERT afin de chiffrer le mot de passe !)
Si vous souhaitez faire des entrées dans les deux autres tables, cela ressemblerait à ceci :
INSERT INTO `forwardings` (`source`, `destination`) VALUES ('[email protected]', '[email protected]');
INSERT INTO `transport` (`domain`, `transport`) VALUES ('example.com', 'smtp:mail.example.com');Pour quitter le shell MySQL, tapez
quit;Pour la plupart des gens, il est plus facile d’avoir une interface graphique pour MySQL ; par conséquent, vous pouvez également utiliser phpMyAdmin (dans cet exemple sous http://192.168.0.100/phpmyadmin/ ou http://server1.example.com/phpmyadmin/) pour administrer la base de données mail. Encore une fois, lorsque vous créez un utilisateur, assurez-vous d’utiliser la fonction ENCRYPT pour chiffrer le mot de passe :
Je ne pense pas avoir besoin d’expliquer davantage les tables domains et users.
La table forwardings peut avoir des entrées comme les suivantes :
| source | destination | |
| [email protected] | [email protected] | Redirige les emails pour [email protected] vers [email protected] |
| @example.com | [email protected] | Crée un compte Catch-All pour [email protected]. Tous les emails à example.com arriveront à [email protected], sauf ceux qui existent dans la table users (c’est-à-dire, si [email protected] existe dans la table users, les mails à [email protected] arriveront toujours à [email protected]). |
| @example.com | @anotherdomain.tld | Cela redirige tous les emails vers example.com vers le même utilisateur à anotherdomain.tld. Par exemple, les emails à [email protected] seront transférés à [email protected]. |
| [email protected] | [email protected], [email protected] | Transfère les emails pour [email protected] vers deux adresses email ou plus. Toutes les adresses email listées sous destination reçoivent une copie de l’email. |
La table transport peut avoir des entrées comme celles-ci :
| domain | transport | |
| example.com | : | Livrer les emails pour example.com localement. C’est comme si cet enregistrement n’existait pas du tout dans cette table. |
| example.com | smtp:mail.anotherdomain.tld | Livrer tous les emails pour example.com via smtp au serveur mail.anotherdomain.com. |
| example.com | smtp:mail.anotherdomain.tld:2025 | Livrer tous les emails pour example.com via smtp au serveur mail.anotherdomain.com, mais sur le port 2025, pas 25 qui est le port par défaut pour smtp. |
| example.com | smtp:[1.2.3.4]
smtp:[1.2.3.4]:2025
smtp:[mail.anotherdomain.tld] | Les crochets empêchent Postfix de faire des recherches sur l’enregistrement MX DNS pour l’adresse entre crochets. Cela a du sens pour les adresses IP. | | .example.com | smtp:mail.anotherdomain.tld | Le courrier pour tout sous-domaine de example.com est livré à mail.anotherdomain.tld. | | * | smtp:mail.anotherdomain.tld | Tous les emails sont livrés à mail.anotherdomain.tld. | | [email protected] | smtp:mail.anotherdomain.tld | Les emails pour [email protected] sont livrés à mail.anotherdomain.tld. |
Voir
man transportpour plus de détails.
Veuillez garder à l’esprit que l’ordre des entrées dans la table transport est important ! Les entrées seront suivies de haut en bas.
Important : Postfix utilise un mécanisme de mise en cache pour les transports, il peut donc falloir un certain temps avant que vos modifications dans la table transport prennent effet. Si vous souhaitez qu’elles prennent effet immédiatement, exécutez
postfix reloadaprès avoir effectué vos modifications dans la table transport.
16 Références
Tutoriel : Service de messagerie de style ISP avec Debian-Sarge et Postfix 2.1 : http://workaround.org/articles/ispmail-sarge/
Postfix + Quota : http://vhcs.net/new/modules/newbb/viewtopic.php?topic_id=3496&forum=17
Mots de passe de messagerie chiffrés utilisant saslauthd : http://www.syscp.de/docs/public/contrib/cryptedmailpws
17 Liens
- Postfix MTA : http://www.postfix.org/
- Patch Quota Postfix : http://web.onda.com.br/nadal/
- phpMyAdmin : http://www.phpmyadmin.net/
- CentOS : http://www.centos.org
Recevez de nouveaux articles dans votre boîte de réception.
Aucun spam. Désabonnez-vous à tout moment.