doc-locale/fr-fr/administration/reply_by_email_postfix_setup.md
{{< details >}}
{{< /details >}}
Ce document vous guide à travers les étapes de configuration d'un serveur de messagerie Postfix de base avec authentification IMAP sur Ubuntu, à utiliser avec les e-mails entrants.
Les instructions supposent que vous utilisez l'adresse e-mail [email protected], c'est-à-dire le nom d'utilisateur incoming sur l'hôte gitlab.example.com. N'oubliez pas de le remplacer par votre hôte réel lors de l'exécution des exemples d'extraits de code.
Installez le package postfix s'il n'est pas déjà installé :
sudo apt-get install postfix
Lorsqu'on vous demande l'environnement, sélectionnez « Internet Site ». Lorsqu'on vous demande de confirmer le nom d'hôte, assurez-vous qu'il correspond à gitlab.example.com.
Installez le package mailutils.
sudo apt-get install mailutils
Créez un utilisateur pour les e-mails entrants.
sudo useradd -m -s /bin/bash incoming
Définissez un mot de passe pour cet utilisateur.
sudo passwd incoming
Veillez à ne pas l'oublier, vous en aurez besoin plus tard.
Connectez-vous au serveur SMTP local :
telnet localhost 25
Vous devriez voir une invite comme celle-ci :
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
220 gitlab.example.com ESMTP Postfix (Ubuntu)
Si vous obtenez plutôt une erreur Connection refused, vérifiez que postfix est en cours d'exécution :
sudo postfix status
S'il ne l'est pas, démarrez-le :
sudo postfix start
Envoyez un e-mail au nouvel utilisateur incoming pour tester le SMTP, en saisissant ce qui suit dans l'invite SMTP :
ehlo localhost
mail from: root@localhost
rcpt to: incoming@localhost
data
Subject: Re: Some issue
Sounds good!
.
quit
[!note] Le
.est un point littéral seul sur sa propre ligne.
Si vous recevez une erreur après avoir saisi rcpt to: incoming@localhost, alors la configuration my_network de votre Postfix n'est pas correcte. L'erreur indiquera « Temporary lookup failure ». Consultez Configurer Postfix pour recevoir des e-mails depuis Internet.
Vérifiez si l'utilisateur incoming a reçu l'e-mail :
su - incoming
mail
Vous devriez voir une sortie comme celle-ci :
"/var/mail/incoming": 1 message 1 unread
>U 1 root@localhost 59/2842 Re: Some issue
Quittez l'application de messagerie :
q
Déconnectez-vous du compte incoming et redevenez root :
logout
Courier, que nous installons plus tard pour ajouter l'authentification IMAP, nécessite que les boîtes aux lettres soient au format Maildir, plutôt que mbox.
Configurez Postfix pour utiliser des boîtes aux lettres de style Maildir :
sudo postconf -e "home_mailbox = Maildir/"
Redémarrez Postfix :
sudo /etc/init.d/postfix restart
Testez la nouvelle configuration :
Suivez les étapes 1 et 2 de Tester la configuration prête à l'emploi.
Vérifiez si l'utilisateur incoming a reçu l'e-mail :
su - incoming
MAIL=/home/incoming/Maildir
mail
Vous devriez voir une sortie comme celle-ci :
"/home/incoming/Maildir": 1 message 1 unread
>U 1 root@localhost 59/2842 Re: Some issue
Quittez l'application de messagerie :
q
Si mail renvoie une erreur Maildir: Is a directory, alors votre version de mail ne prend pas en charge les boîtes aux lettres de style Maildir. Installez heirloom-mailx en exécutant sudo apt-get install heirloom-mailx. Ensuite, réessayez les étapes précédentes en remplaçant la commande mail par heirloom-mailx.
Déconnectez-vous du compte incoming et redevenez root :
logout
Installez le package courier-imap :
sudo apt-get install courier-imap
Ubuntu 24.04 ne dispose pas du package courier-imap. Pour plus d'informations, consultez Ubuntu bug 2071662.
Après avoir installé courier-imap, démarrez imapd :
imapd start
Le courier-authdaemon ne démarre pas après l'installation. Sans lui, l'authentification IMAP échoue :
sudo service courier-authdaemon start
Vous pouvez également configurer courier-authdaemon pour qu'il démarre au démarrage du système :
sudo systemctl enable courier-authdaemon
Indiquez à Postfix les domaines qu'il doit considérer comme locaux :
sudo postconf -e "mydestination = gitlab.example.com, localhost.localdomain, localhost"
Indiquez à Postfix les adresses IP qu'il doit considérer comme faisant partie du réseau local :
Supposons que 192.168.1.0/24 est votre réseau local. Vous pouvez ignorer cette étape sans risque si vous n'avez pas d'autres machines sur le même réseau local.
sudo postconf -e "mynetworks = 127.0.0.0/8, 192.168.1.0/24"
Configurez Postfix pour recevoir des e-mails sur toutes les interfaces, y compris Internet :
sudo postconf -e "inet_interfaces = all"
Configurez Postfix pour utiliser le délimiteur + pour le sous-adressage :
sudo postconf -e "recipient_delimiter = +"
Redémarrez Postfix :
sudo service postfix restart
Testez le SMTP avec la nouvelle configuration :
Connectez-vous au serveur SMTP :
telnet gitlab.example.com 25
Vous devriez voir une invite comme celle-ci :
Trying 123.123.123.123...
Connected to gitlab.example.com.
Escape character is '^]'.
220 gitlab.example.com ESMTP Postfix (Ubuntu)
Si vous obtenez plutôt une erreur Connection refused, assurez-vous que votre pare-feu est configuré pour autoriser le trafic entrant sur le port 25.
Envoyez un e-mail à l'utilisateur incoming pour tester le SMTP, en saisissant ce qui suit dans l'invite SMTP :
ehlo gitlab.example.com
mail from: [email protected]
rcpt to: [email protected]
data
Subject: Re: Some issue
Sounds good!
.
quit
[!note] Le
.est un point littéral seul sur sa propre ligne.
Vérifiez si l'utilisateur incoming a reçu l'e-mail :
su - incoming
MAIL=/home/incoming/Maildir
mail
Vous devriez voir une sortie comme celle-ci :
"/home/incoming/Maildir": 1 message 1 unread
>U 1 [email protected] 59/2842 Re: Some issue
Quittez l'application de messagerie :
q
Déconnectez-vous du compte incoming et redevenez root :
logout
Testez l'IMAP avec la nouvelle configuration :
Connectez-vous au serveur IMAP :
telnet gitlab.example.com 143
Vous devriez voir une invite comme celle-ci :
Trying 123.123.123.123...
Connected to mail.gitlab.example.com.
Escape character is '^]'.
- OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION] Courier-IMAP ready. Copyright 1998-2011 Double Precision, Inc. See COPYING for distribution information.
Connectez-vous en tant qu'utilisateur incoming pour tester l'IMAP, en saisissant ce qui suit dans l'invite IMAP :
a login incoming PASSWORD
Remplacez PASSWORD par le mot de passe que vous avez défini pour l'utilisateur incoming précédemment.
Vous devriez voir une sortie comme celle-ci :
a OK LOGIN Ok.
Déconnectez-vous du serveur IMAP :
a logout
Si tous les tests ont réussi, Postfix est entièrement configuré et prêt à recevoir des e-mails ! Poursuivez avec le guide sur les e-mails entrants pour configurer GitLab.
Ce document a été adapté depuis https://help.ubuntu.com/community/PostfixBasicSetupHowto, par les contributeurs au wiki de documentation Ubuntu.