Configuration Serveur · 3 min read · Oct 07, 2025

Utilisateurs et domaines virtuels avec Postfix, Courier et MySQL (Debian Etch) - Page 3

6 Configurer Saslauthd

D’abord, exécutez

mkdir -p /var/spool/postfix/var/run/saslauthd

Ensuite, éditez /etc/default/saslauthd. Mettez START à yes et changez la ligne OPTIONS=”-c” en OPTIONS=”-c -m /var/spool/postfix/var/run/saslauthd -r”:

vi /etc/default/saslauthd

| # # Paramètres pour le démon saslauthd # # Le démon saslauthd doit-il s'exécuter automatiquement au démarrage ? (par défaut : non) START=yes # Quels mécanismes d'authentification le saslauthd doit-il utiliser ? (par défaut : pam) # # Options disponibles dans ce paquet Debian : # getpwent -- utiliser la fonction de bibliothèque getpwent() # kerberos5 -- utiliser Kerberos 5 # pam -- utiliser PAM # rimap -- utiliser un serveur IMAP distant # shadow -- utiliser le fichier de mots de passe shadow local # sasldb -- utiliser le fichier de base de données sasldb local # ldap -- utiliser LDAP (la configuration est dans /etc/saslauthd.conf) # # Une seule option peut être utilisée à la fois. Consultez la page de manuel de saslauthd # pour plus d'informations. # # Exemple : MECHANISMS="pam" MECHANISMS="pam" # Options supplémentaires pour ce mécanisme. (par défaut : aucune) # Consultez la page de manuel de saslauthd pour des informations sur les options spécifiques au mécanisme. MECH_OPTIONS="" # Combien de processus saslauthd devons-nous exécuter ? (par défaut : 5) # Une valeur de 0 créera un nouveau processus pour chaque connexion. THREADS=5 # Autres options (par défaut : -c) # Consultez la page de manuel de saslauthd pour des informations sur ces options. # # Exemple pour les utilisateurs de postfix : "-c -m /var/spool/postfix/var/run/saslauthd" # Remarque : Consultez /usr/share/doc/sasl2-bin/README.Debian OPTIONS="-c -m /var/spool/postfix/var/run/saslauthd -r" |

Ensuite, créez le fichier /etc/pam.d/smtp. Il doit contenir seulement les deux lignes suivantes (assurez-vous de remplir vos détails de base de données corrects) :

vi /etc/pam.d/smtp

| auth required pam_mysql.so user=mail_admin passwd=mail_admin_password host=127.0.0.1 db=mail table=users usercolumn=email passwdcolumn=password crypt=1 account sufficient pam_mysql.so user=mail_admin passwd=mail_admin_password host=127.0.0.1 db=mail table=users usercolumn=email passwdcolumn=password crypt=1 |

Ensuite, créez le fichier /etc/postfix/sasl/smtpd.conf. Il doit ressembler à ceci :

vi /etc/postfix/sasl/smtpd.conf

| pwcheck_method: saslauthd mech_list: plain login allow_plaintext: true auxprop_plugin: mysql sql_hostnames: 127.0.0.1 sql_user: mail_admin sql_passwd: mail_admin_password sql_database: mail sql_select: select password from users where email = '%u' |

Ensuite, redémarrez Postfix et Saslauthd :

/etc/init.d/postfix restart  
/etc/init.d/saslauthd restart

7 Configurer Courier

Maintenant, nous devons dire à Courier qu’il doit s’authentifier contre notre base de données MySQL. D’abord, éditez /etc/courier/authdaemonrc et changez la valeur de authmodulelist pour qu’elle soit :

vi /etc/courier/authdaemonrc

| [...] authmodulelist="authmysql" [...] |

Ensuite, faites une sauvegarde de /etc/courier/authmysqlrc et videz l’ancien fichier :

cp /etc/courier/authmysqlrc /etc/courier/authmysqlrc_orig  
cat /dev/null > /etc/courier/authmysqlrc

Ensuite, ouvrez /etc/courier/authmysqlrc et mettez les lignes suivantes :

vi /etc/courier/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 :

/etc/init.d/courier-authdaemon restart  
/etc/init.d/courier-imap restart  
/etc/init.d/courier-imap-ssl restart  
/etc/init.d/courier-pop restart  
/etc/init.d/courier-pop-ssl 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.)

server1:/etc/postfix# telnet localhost pop3  
Trying 127.0.0.1...  
Connected to localhost.localdomain.  
Escape character is '^]'.  
+OK Hello there.  
quit  
+OK Better luck next time.  
Connection closed by foreign host.

8 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] [...] |

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.