mars 9, 2022

Comment installer et configurer Sendmail sur Ubuntu

Comment installer et configurer Sendmail sur Ubuntu pour envoyer des e-mails à l’aide d’un serveur de messagerie qui achemine ou relaie la livraison du courrier.

Sendmail est un agent de transfert de courrier opensource (MTA) qui est utilisé pour acheminer les e-mails à l’aide du serveur ou à l’aide de commandes shell. Vous pouvez également configurer SMTP à l’aide de Sendmail.

Dans ce guide, vous allez apprendre à installer et à configurer Sendmail sur Ubuntu. Vous allez également configurer SMTP et le configurer avec PHP.

Le meilleur hébergement pour votre entreprise

Plateforme Avis Prix
Chemin des Nuages ★★★★★ $10
Accueil – Google Cloud ★★★★★ $30

Mettez à jour les packages serveur

SSH à l’intérieur de votre serveur et mettez à jour les packages vers sa dernière version.

sudo apt updatesudo apt upgrade

Installer Sendmail

Sendmail est disponible dans le référentiel ubuntu, vous pouvez donc l’installer directement à l’aide de la commande apt install.

sudo apt install sendmail

Configurez le nom d’hôte

Modifiez le fichier /etc/hosts et ajoutez votre nom d’hôte.

sudo nano /etc/hosts

Sur la ligne commençant par 127.0.0.1, ajoutez le hostname à la fin comme il apparaît ci-dessous. Cela devrait être sur une seule ligne.

127.0.0.1 localhost hostname

Configure SMTP

Crée un nouveau répertoire dans /etc/mail pour les configurations SMTP.

sudo mkdir /etc/mail/authinfo

Configurez les autorisations correctes.

sudo chmod -R 700 /etc/mail/authinfo

Créez un nouveau fichier pour votre authentification SMTP dans le répertoire nouvellement créé.

cd /etc/mail/authinfosudo nano smtp-auth

Collez la ligne suivante et remplacez l’adresse e-mail par votre adresse e-mail de connexion et le mot de passe par votre mot de passe.

AuthInfo: "U:root" "I:email-address" "P:password"

Appuyez sur CRTL + X suivi de Y et ENTER pour enregistrer et quitter le fichier.

Créez une carte de base de données de hachage pour l’authentification créée ci-dessus.

sudo makemap hash smtp-auth < smtp-auth

Configure SMTP

Accédez au répertoire de configuration de sendmail et modifiez le fichier sendmail.mc.

cd /etc/mailsudo nano sendmail.mc

Ajoutez les configurations ci-dessous juste après la ligne MAILER _DEFINITIONS.

Remplacez smtp-host par votre nom d’hôte SMTP.

define(`SMART_HOST',`')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 587')dnldefine(`ESMTP_MAILER_ARGS', `TCP $h 587')dnldefine(`confAUTH_OPTIONS', `A p')dnlTRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnldefine(`confAUTH_MECHANISMS', `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnlFEATURE(`authinfo',`hash -o /etc/mail/authinfo/smtp-auth.db')dnl

La configuration devrait ressembler à la capture d’écran ci-dessous.

 Configuration SMTP

Enregistrez maintenant le fichier et quittez l’éditeur.

Reconstruire la configuration de Sendmail

Une fois la configuration terminée, vous devez reconstruire la configuration de Sendmail à l’aide de la commande make.

cd /etc/mailmake

Une fois la configuration reconstruite, vous devez redémarrer Sendmail

Redémarrer Sendmail

Redémarrer Sendmail à l’aide de la commande suivante.

sudo /etc/init.d/sendmail restart

Maintenant, vous pouvez envoyer des e-mails en utilisant SMTP.

Configurations supplémentaires

Configuration avec PHP

Pour utiliser Sendmail avec PHP, vous devez indiquer le chemin sendmail dans votre fichier php.ini.

sudo nano /etc/php/version/fpm-or-apache2/php.ini

Au bas du fichier, ajoutez ce qui suit.

sendmail_path= /usr/sbin/sendmail -t -i

Redémarrez Apache ou PHP-FPM pour que les modifications prennent effet.

sudo service apache2 restartorsudo service php8.0-fpm restart

Configuration SMTP de Sendmail sans authentification

Si vous avez inscrit l’adresse IP de votre serveur sur la liste blanche pour SMTP et que vous pouvez envoyer des e-mails sans authentification, vous pouvez suivre la méthode ci-dessous.

Vous n’avez pas besoin de créer le fichier smtp-auth que nous avons créé ci-dessus.

Vous pouvez modifier directement le fichier sendmail.mc et apporter les modifications suivantes.

cd /etc/mailsudo nano sendmail.mc

Ajoutez les configurations ci-dessous à la dernière.

Remplacez smtp-host par votre nom d’hôte SMTP.

define(`SMART_HOST',`smtp-host')dnldefine(`RELAY_MAILER', `esmtp')dnldefine(`RELAY_MAILER_ARGS', `TCP $h 587')dnl

Enregistrez le fichier, reconstruisez la configuration et redémarrez Sendmail.

cd /etc/mailmakesudo /etc/init.d/sendmail restart

Conclusion

Maintenant, vous avez appris à installer et configurer Sendmail pour relayer en utilisant SMTP sur Ubuntu.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.