ssmtp msmtp mail s-nail : Envoyer des emails facilement sous Linux en ligne de commande
Table des matières
Sur ce site, j'ai réalisé des tutoriels sur postfix et comment l'installer en tant que relais SMTP.
Cependant, il existe plus simple que de mettre en place postfix pour envoyer des emails, grâce à 2 composants :
- Un Client SMTP
- Une commande qui permet d'expédier des emails
Vous allez voir, c'est facile, cela fonctionne super bien, et j'utilise ça depuis bien longtemps sur les serveurs du travail pour envoyer par mail des retours de scripts de sauvegarde.
Il existe plusieurs clients SMTP. Choisissez celui de votre choix : ssmtp, msmtp.
ssmtp est le premier outil que j'ai utilisé pour configurer localement un client SMTP sur la machine.
Il suffit d'installer le paquet ssmtp.
CentOS :
Gentoo :
Debian :
Ensuite, on va indiquer à ssmtp les paramètres du SMTP à contacter pour envoyer des emails. Tout se passe dans le fichier /etc/ssmtp/ssmtp.conf :
Je vous mets mon fichier de configuration avec les options
Il faut installer la commande mail pour envoyer des emails depuis vos scripts.
Certaines commandes n'ont pas la même syntaxe, je diffère donc les cas ici.
Gentoo :
Debian :
Pour envoyer un message :
Le mail est envoyé avec comme expéditeur le unixusername@hostname. On peut réécrire l'expéditeur ainsi :
Plutôt que de faire
on peut écrire tout au long du script dans un fichier (par exemple /tmp/fichier) puis de faire
Debian :
Pour envoyer un message :
Le mail est envoyé avec comme expéditeur le unixusername@hostname. On peut réécrire l'expéditeur ainsi :
Plutôt que de faire
on peut écrire tout au long du script dans un fichier (par exemple /tmp/fichier) puis de faire
CentOS :
Pour envoyer un message :
Le mail est envoyé avec comme expéditeur le unixusername@hostname. On peut réécrire l'expéditeur ainsi :
Introduction
Sur ce site, j'ai réalisé des tutoriels sur postfix et comment l'installer en tant que relais SMTP.
Cependant, il existe plus simple que de mettre en place postfix pour envoyer des emails, grâce à 2 composants :
- Un Client SMTP
- Une commande qui permet d'expédier des emails
Vous allez voir, c'est facile, cela fonctionne super bien, et j'utilise ça depuis bien longtemps sur les serveurs du travail pour envoyer par mail des retours de scripts de sauvegarde.
Le client SMTP
Il existe plusieurs clients SMTP. Choisissez celui de votre choix : ssmtp, msmtp.
ssmtp
ssmtp est le premier outil que j'ai utilisé pour configurer localement un client SMTP sur la machine.
Il suffit d'installer le paquet ssmtp.
CentOS :
Code BASH :
yum install ssmtp
Gentoo :
Code BASH :
emerge -av mail-mta/ssmtp
Debian :
Code BASH :
apt install ssmtp
Ensuite, on va indiquer à ssmtp les paramètres du SMTP à contacter pour envoyer des emails. Tout se passe dans le fichier /etc/ssmtp/ssmtp.conf :
Code BASH :
vi /etc/ssmtp/ssmtp.conf
Je vous mets mon fichier de configuration avec les options
Code BASH :
# # /etc/ssmtp.conf -- a config file for sSMTP sendmail. # # Serveur SMTP à utiliser mailhub=auth.smtp.1and1.fr:587 # Réécrire le domaine de l'expéditeur rewriteDomain=linuxtricks.fr # Nom de la machine hostname=serveur ## Mettre YES permet au programme qui envoie un courriel de modifier l'entête du message concernant l'émetteur. FromLineOverride=YES ## Authentification sur le relais smtp UseSTARTTLS=yes UseTLS=yes #IMPORTANT: The following line is mandatory for TLS authentication TLS_CA_File=/etc/pki/tls/certs/ca-bundle.crt ## Nom d'utilisateur SMTP AuthUser=XXXXXXXXXXX@linuxtricks.fr ## Mot de passe associe au compte AuthPass=XXXXXXXXXXX
La commande mail pour envoyer des emails
Il faut installer la commande mail pour envoyer des emails depuis vos scripts.
Certaines commandes n'ont pas la même syntaxe, je diffère donc les cas ici.
mailutils
Gentoo :
Code BASH :
emerge -av net-mail/mailutils
Debian :
Code BASH :
apt install mailutils
Pour envoyer un message :
Code BASH :
echo "Corps de mail" | mail -s "Sujet" destinataire@linuxtricks.fr
Le mail est envoyé avec comme expéditeur le unixusername@hostname. On peut réécrire l'expéditeur ainsi :
Code BASH :
echo "Corps de mail" | mail -s "Sujet" -a "From: [email protected]" destinataire@linuxtricks.fr
Plutôt que de faire
Code BASH :
echo "Du texte" | mail
on peut écrire tout au long du script dans un fichier (par exemple /tmp/fichier) puis de faire
Code BASH :
cat /tmp/fichier | mail
bsd-mailx
Debian :
Code BASH :
apt install mailutils
Pour envoyer un message :
Code BASH :
echo "Corps de mail" | mail -s "Sujet" destinataire@linuxtricks.fr
Le mail est envoyé avec comme expéditeur le unixusername@hostname. On peut réécrire l'expéditeur ainsi :
Code BASH :
echo "Corps de mail" | mail -s "Sujet" -a "From: [email protected]" destinataire@linuxtricks.fr
Plutôt que de faire
Code BASH :
echo "Du texte" | mail
on peut écrire tout au long du script dans un fichier (par exemple /tmp/fichier) puis de faire
Code BASH :
cat /tmp/fichier | mail
mailx
CentOS :
Code BASH :
yum install mailx
Pour envoyer un message :
Code BASH :
echo "Corps de mail" | mail -s "Sujet" destinataire@linuxtricks.fr
Le mail est envoyé avec comme expéditeur le unixusername@hostname. On peut réécrire l'expéditeur ainsi :
Code BASH :
echo "Corps de mail" | mail -s "Sujet" -r expediteur@linuxtricks.fr destinataire@linuxtricks.fr