Home / Linux / Comment utiliser le MTA sSMTP sous Centos.

Comment utiliser le MTA sSMTP sous Centos.

Dans beaucoup de distribution sendmail (le MTA de référence) est souvent installé par défaut. Mais si vous voulez utiliser un MTA simple et léger sSMTP est fait pour vous. Voyons comment l’installer et l’utiliser sous Centos.

 ssmtp_1

Avant de commencer procédons à une petite définition des composants d’un serveur de messagerie.

Définition de MTA / MDA : Un serveur de messagerie est composé d’au moins 2 processus: le MTA (Mail Transport Agent) et le MDA (Mail Delivery Agent). Le MTA gère la livraison des emails, c’est le serveur SMTP. Le MTA transfère ensuite le message reçu au MDA qui le stocke (au bon endroit) pour que l’utilisateur vienne le récupérer (via du POP3, IMAP4 ou autre). Sous linux vous avez différent MTA comme Sendmail, Postfix et bien sûr sSMTP l’objet de notre tutoriel.

Par rapport aux autres MTA plus complet mais plus lourd, sSMTP ne peut pas :

  • recevoir de courrier
  • gérer des alias
  • gérer une file d’attente

Son seul but est d’envoyer du courrier. Pour l’envoi de notification par mail, sSMTP fait très bien son travail est très robuste et consomme peu de ressources machine. L’autre avantage de sSMTP c’est qu’il n’y a pas de démon à relancer lors d’une modification de la configuration. Une fois que votre configuration est enregistrée, elle est directement prise en compte.

  • Installation de sSMTP.

Le paquet sSMTP n’est pas présent dans les dépôts officiels, ni même sur rpmforge. Pour cela nous devons utiliser les dépôts EPEL. Pour CentOS 6 vous devez utilisez les commandes suivantes :

#wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
#wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
#sudo rpm -Uvh remi-release-6*.rpm epel-release-6*.rpm

ssmtp_2

ssmtp_3

Une fois les nouveaux dépôts installés, aller dans /etc/yum.repos.d/ et faites un ls –l, vous devriez voir apparaître les nouveaux dépôts (voir ci-dessus).

 

ssmtp_4

 Maintenant vous devez éditer le fichier de configuration du dépôt de remi pour l’activer. A l’aide d’un éditeur de texte taper la commande suivante :

#vi /etc/yum.repos.d/remi.repo

Ensuite passer l’option enabled à 1. Je n’ai activé que le dépôt officiel c’est à dire le premier dans la liste.

 ssmtp_5

Si vous ne voulez pas activer en permanence ces nouveaux dépôts vous pouvez utiliser l’option –enablerepo=epl par exemple pour rechercher un rpm dans ce dépôt sans qu’il soit activer.

 ssmtp_6

Ensuite procéder à son installation.

  • Configuration de sSMTP.

Dans ces lignes, nous allons voir comment installer et configurer sSMTP afin qu’il relaye les mails émanant du serveur vers votre boite mail. Pour cela on utilise 2 fichiers :

  • /etc/ssmtp/ssmtp.conf
  • /etc/ssmtp/revaliases

ssmtp_7

(Exemple de mon fichier de conf)


#
# CONGIFURATON GENERALE
#

# Redirige les mails à destination de root vers votre email
root=reynaud.guillaume@gmail.com

# Serveur SMTP vers lequel il faut envoyer les mails
mailhub=smtp.googlemail.com:465

# Example for SMTP port number 2525
# mailhub=mail.your.domain:2525
# Example for SMTP port number 25 (Standard/RFC)
# mailhub=mail.your.domain
# Example for SSL encrypted connection
# mailhub=mail.your.domain:465

# Domaine depuis lequel est envoyé le mail (Cette option peut rester vierge)
#RewriteDomain=

# Nom de la machine
Hostname=Be1host_Centos

# Ré-écriture de lexpéditeur (champ From)
FromLineOverride=YES

#
# CONGIFURATON DE L'AUTENTIFICATION
#

# Utilisation d'une connexion sécurisée SSL ou TLS (Cela dépend de votre FAI, par exemple ici avec googlemail, il utilise une connexion SSL il faut donc mettre YES sinon mettez NO)
UseTLS=YES

# Use SSL/TLS certificate to authenticate against smtp host.
#UseTLSCert=YES

# Use this RSA certificate.
#TLSCert=/etc/pki/tls/private/ssmtp.pem

# Get enhanced (*really* enhanced) debugging information in the logs
# If you want to have debugging of the config file parsing, move this option
# to the top of the config file and uncomment
#Debug=YES

# Nom de l'utilisateur pour l'autentification SMTP
AuthUser=votre_user
#Le mot d epasse correspondant
AuthPass=votre_mot_de_passe

Une fois le fichier sauvegardé nous allons pouvoir modifier le fichier /etc/ssmtp/revaliases.

Ce fichier permet de spécifier quel serveur smtp doit être utilisé en fonction des comptes utilisateurs (si ce n’est pas celui par défaut).

ssmtp_8


# sSMTP aliases
#
# Format: local_account:outgoing_address:mailhub
#
# Example: root:your_login@your.domain:mailhub.your.domain[:port]
# where [:port] is an optional port number that defaults to 25.
root:votre_adresse_mail@votre_domaine:votre_serveur_smtp:le_port_utilisé

Maintenant que tout est paramétré, nous allons essayer d’envoyer un mail en ligne de commande pour savoir si cela fonctionne correctement.

  • Envoi d’un mail de test.

ssmtp_9

Pour cela nous allons utiliser la commande mail (généralement installé par défaut sous CentOS). Taper la ligne ci-dessous :

# mail -s "Test envoi mail depuis Be1host" toto@gmail.com

Le paramètre –s permet de spécifier le sujet du mail.

Ensuite un champ vide va apparaitre se sera le corps de l’email, saisissez votre message. Une fois que vous aurez fini, appuyer sur  la touche ENTREE et mettez un point à la fin. Le point doit se situer sur une ligne à part et il doit être le seul caractère sur la ligne, cela indique la fin du mail.

Appuyer sur Entrée et le mail est parti.

Pour vérifier le bon envoi du mail vous pouvez consulter le fichier /var/log/maillog et vous devriez avoir une ligne similaire à ci-dessous :

ssmtp_10

Vous devez supprimer le MTA installé par défaut. Pour CentOS il s’agit de Postfix. Pour le supprimer utiliser la commande suivante : yum remove postfix 

Voilà maintenant votre serveur peut envoyer des mails.

That’s All.

  

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

2dd3389dd867f943efd1485755749e48$$$$$$$$$$$$$$$$$$$$$$