Configuration Serveur · 2 min read · Dec 31, 2025

Utilisateurs et domaines virtuels avec Postfix, Courier, MySQL et SquirrelMail (Fedora 14 x86_64) - Page 3

9 Configurer Saslauthd

Éditez /etc/sasl2/smtpd.conf. Cela devrait ressembler à ceci :

vi /etc/sasl2/smtpd.conf

| pwcheck_method: authdaemond log_level: 3 mech_list: PLAIN LOGIN authdaemond_path:/var/spool/authdaemon/socket |

Ensuite, désactivez Sendmail et démarrez Postfix, saslauthd et courier-authlib :

chmod 755 /var/spool/authdaemon  
chkconfig --levels 235 courier-authlib on  
/etc/init.d/courier-authlib start
chkconfig --levels 235 sendmail off  
chkconfig --levels 235 postfix on  
chkconfig --levels 235 saslauthd on  
/etc/init.d/sendmail stop  
/etc/init.d/postfix start  
/etc/init.d/saslauthd start

10 Configurer Courier

Maintenant, nous devons dire à Courier qu’il doit s’authentifier contre notre base de données MySQL. Tout d’abord, éditez /etc/authlib/authdaemonrc et changez la valeur de authmodulelist pour qu’elle se lise

vi /etc/authlib/authdaemonrc

| [...] authmodulelist="authmysql" #authmodulelist="authuserdb authpam authpgsql authldap authmysql authcustom authpipe" [...] |

Ensuite, éditez /etc/authlib/authmysqlrc. Cela devrait ressembler exactement à ceci (encore une fois, assurez-vous de remplir les bonnes informations de la base de données) :

cp /etc/authlib/authmysqlrc /etc/authlib/authmysqlrc_orig  
cat /dev/null > /etc/authlib/authmysqlrc  
vi /etc/authlib/authmysqlrc

| MYSQL_SERVER localhost MYSQL_USERNAME mail_admin MYSQL_PASSWORD mail_admin_password MYSQL_PORT 0 MYSQL_DATABASE mail MYSQL_USER_TABLE users MYSQL_CRYPT_PWFIELD password #MYSQL_CLEAR_PWFIELD password MYSQL_UID_FIELD 5000 MYSQL_GID_FIELD 5000 MYSQL_LOGIN_FIELD email MYSQL_HOME_FIELD "/home/vmail" MYSQL_MAILDIR_FIELD CONCAT(SUBSTRING_INDEX(email,'@',-1),'/',SUBSTRING_INDEX(email,'@',1),'/') #MYSQL_NAME_FIELD MYSQL_QUOTA_FIELD quota |

Ensuite, redémarrez Courier :

chkconfig --levels 235 courier-imap on  
/etc/init.d/courier-authlib restart  
/etc/init.d/courier-imap restart

Lorsque courier-imap est démarré pour la première fois, il crée automatiquement les fichiers de certificat /usr/lib/courier-imap/share/imapd.pem et /usr/lib/courier-imap/share/pop3d.pem à partir des fichiers /usr/lib/courier-imap/etc/imapd.cnf et /usr/lib/courier-imap/etc/pop3d.cnf. Comme les fichiers .cnf contiennent la ligne CN=localhost, mais que notre serveur est nommé server1.example.com, les certificats pourraient causer des problèmes lorsque vous utilisez des connexions TLS. Pour résoudre cela, nous supprimons les deux certificats…

cd /usr/lib/courier-imap/share  
rm -f imapd.pem  
rm -f pop3d.pem

… et remplaçons les lignes CN=localhost dans /usr/lib/courier-imap/etc/imapd.cnf et /usr/lib/courier-imap/etc/pop3d.cnf par CN=server1.example.com :

vi /usr/lib/courier-imap/etc/imapd.cnf

| [...] CN=server1.example.com [...] |

vi /usr/lib/courier-imap/etc/pop3d.cnf

| [...] CN=server1.example.com [...] |

Ensuite, nous recréons les deux certificats…

./mkimapdcert  
./mkpop3dcert

… et redémarrons courier-authlib et courier-imap :

/etc/init.d/courier-authlib restart  
/etc/init.d/courier-imap restart

En exécutant

telnet localhost pop3

vous pouvez voir si votre serveur POP3 fonctionne correctement. Il devrait renvoyer +OK Hello there . (tapez quit pour revenir au shell Linux) :

[root@server1 share]# telnet localhost pop3  
Trying ::1...  
Connected to localhost.  
Escape character is '^]'.  
+OK Hello there.  
quit  
+OK Better luck next time.  
Connection closed by foreign host.  
[root@server1 share]#

11 Modifier /etc/aliases

Maintenant, nous devrions ouvrir /etc/aliases. Assurez-vous que postmaster pointe vers root et root vers votre propre nom d’utilisateur ou votre adresse e-mail, par exemple comme ceci :

vi /etc/aliases

| [...] postmaster: root root: [email protected] [...] |

ou comme ceci (si administrateur est votre propre nom d’utilisateur) :

| [...] postmaster: root root: administrator [...] |

Chaque fois que vous modifiez /etc/aliases, vous devez exécuter

newaliases

ensuite et redémarrer Postfix :

/etc/init.d/postfix restart
Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.