Sendmail
| Fiche express | |
|---|---|
| Domaine | Agent de transport de courrier (MTA) |
| Paquets | sendmail · sendmail-cf
|
| Config | /etc/mail/sendmail.mc (source) → /etc/mail/sendmail.cf (généré)
|
| Voir aussi | Mail · Sendmail (AIX) |
sendmail est un agent de transport de courrier (MTA) historique, capable de faire office de serveur SMTP local, de relayer les mails sortants vers un relais SMTP externe (« smart host »), et de gérer une file d'attente de livraison. Cette page couvre l'usage sous Linux (RHEL/CentOS) ; pour le pilotage du service sous AIX via le System Resource Controller, voir Sendmail (AIX).
Installation
yum install sendmail sendmail-cf
Fichiers de configuration
Le fichier utilisé par le démon est sendmail.cf, mais il ne doit
pas être édité directement : il est régénéré à partir de la source macro
sendmail.mc à chaque (re)démarrage du service.
vi /etc/mail/sendmail.mc
DAEMON_OPTIONS(`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl
LOCAL_DOMAIN(`example.com')dnl
dnl define(`SMART_HOST', `192.0.2.1')dnl
Régénérer sendmail.cf à partir de la macro, puis relancer le service :
m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
systemctl restart sendmail
Relais SMTP (smart host)
La directive DS de sendmail.cf définit le relais vers lequel tout
le courrier sortant est envoyé (peut être vide pour une livraison directe) :
# "Smart" relay host (may be null)
DS<nom-ou-ip-du-relais>
grep '^DS' /etc/mail/sendmail.cf
Authentification vers un relais externe
vi /etc/mail/authinfo
AuthInfo:smtp.exemple.com "U:utilisateur" "P:mot-de-passe" "M:PLAIN"
makemap hash /etc/mail/authinfo.db < /etc/mail/authinfo
Dans sendmail.mc, activer l'authentification et référencer la table :
define(`confAUTH_OPTIONS', `A')dnl
FEATURE(`authinfo', `hash /etc/mail/authinfo.db')dnl
Régénérer sendmail.cf (voir plus haut) puis tester :
echo "Test de courriel" | sendmail -v destinataire@exemple.com
⚠️ Le mot de passe est stocké en clair dans /etc/mail/authinfo — restreindre
les droits du fichier (chmod 600) et de authinfo.db.
Gestion de la file d'attente
mailq # affiche le contenu de la file d'attente
sendmail -q -v # tente de livrer les mails en file, en arrière-plan
sendmail -qf -v # idem, en premier plan (foreground)
sendmail -bp -qQ # liste tous les messages en quarantaine
sendmail -bp # liste tous les messages en file
Autres fichiers utiles
access— contrôle d'accès par hôte/réseau/utilisateur :REJECT(avec message d'erreur),DISCARD(sans message) ouRELAY(accepte et relaie).domaintable— réécriture de domaine, ex. lors d'une migrationancien-domaine.example→nouveau-domaine.example.local-host-names— alias supplémentaires du serveur, un par ligne.mailertable— table de routage utilisée à la place d'une résolution DNS classique.trusted-users— utilisateurs autorisés à envoyer du courrier sans avertissement (usurpation d'expéditeur possible pour ces comptes).virtusertable— redirection de courrier entre domaines virtuels.statistics— fichier binaire de statistiques d'usage, consultable avecmailstats; n'existe qu'une fois le service démarré.
Voir aussi
- Mail — envoi de courrier côté client (
mail/mailx,mutt,swaks) - Sendmail (AIX) — équivalent AIX, piloté par le System Resource Controller (SRC)