Apportez votre aide…
Comment envoyer un courriel par smtp en ligne de commande
- Il n'est pas nécessaire de surcharger son système d'applications serveur pour l'envoi de courriel. La solution la plus simple est l'utilisation d'un client smtp.
- Envoyer automatiquement des informations par courriel peut être utile, par exemple, pour récupérer l'IP externe de sa box. Voir le tuto Comment_envoyer_l_IP_de_sa_box_automatiquement_par_courriel.
Utilisation de msmtp
Installation
Si vous aviez déjà installé des paquets désormais inutiles, un petit rappel sur la suppression d'un paquet.
Configuration
- Créez et ouvrez le fichier ~/.msmtprc (dans votre dossier personnel).
nano ~/.msmtprc
account default host smtp.monfai.fr from prenom.nom@monfai.fr auth off #auth on #si jamais auth off ne passe pas user prenom.nom #si votre fai vous identifie plus clairement si vous reprécisez le domaine, alors plutôt cela : #user prenom.nom@fai.fr password monmotdepasse
- Dissimuler ce fichier qui contient votre mot de passe en clair
chmod 600 ~/.msmtprc
Configurations spécifiques (en fin de tuto)
- la configuration de msmtp peut être beaucoup plus pointue, man et documentation peuvent vous aider.
- Pour avoir plusiers comptes configurés:
il suffit de rajouter une ligne account NomDuCompte suivi de la configuration propre à ce compte.
exemple:
account celuidelaposte host smtp.laposte.net from user@laposte.net tls on tls_certcheck off tls_starttls off auth on user user@laposte.net password motdepasse
Pour utiliser un compte plutôt que celui par défaut (default), on utilisera l'option -a:
echo "bonjour, je viens d'un autre compte" | msmtp -a celuidelaposte toto@univers.net
- fichier .msmtprc pour gmail.
Utilisation
- Pour envoyer le contenu d'un fichier texte comme message:
cat readme.txt | msmtp johnny@liday.ch
- Pour envoyer un fichier binaire, ou compressé en pièce jointe :
uuencode application.zip | msmtp johnny@liday.ch
Attention: il faut alors un saut de ligne; une solution simple est d'utiliser printf plutôt que echo. Exemple:
printf "Subject:DeQuoiOnParle\nLeCorpsDuMessage" | msmtp johnny@liday.ch
From: mon-adresse@domaine.xx To: adresse-destination@domaine.xx subject: le sujet de l'Email le corps du texte commence à cette ligne (laisser une ligne blanche)
Vérification
- Depuis votre client de messagerie, vérifiez que vous avez bien reçu le message attendu
Configurations particulières
gmail
gmail impose l'utilisation d'une couche TLS. La configuration doit le prendre en compte de cette façon :
~/.msmtprc
account default tls on host smtp.gmail.com port 587 from nom_user@gmail.com auth on user nom_user password password_user tls_starttls on tls_certcheck on tls_trust_file /etc/ssl/certs/ca-certificates.crt
La dernière ligne est spécifique aux systèmes basés sur debian. Elle pointe vers le fichier où sont stockés l'ensemble des certificats racine de conficance du système (cf : manuel)
gmail - non sécurisé
Il est aussi tout simplement possible de ne pas vérifier le certificat serveur est désactivant tls_certcheck. Ceci est non-recommandé car sensible à une attaque de type MiM
~/.msmtprc
account default tls on host smtp.gmail.com port 587 from nom_user@gmail.com auth on user nom_user password password_user tls_starttls off tls_certcheck off
Orange sécurisé
L'opérateur historique Orange fonctionne avec TLS de la façon suivante (20/11/2015):
~/.msmtprc
account default host smtp.orange.fr protocol smtp auth login tls on tls_starttls off tls_certcheck on tls_trust_file /etc/ssl/certs/ca-certificates.crt from mon-adresse@orange.fr maildomain orange.fr port 465 user mon-adresse password mon-motdepasse
gandi.net
Paramétrage pour l’utilisation de l'adresse fournie avec les noms de domaines achetés avec gandi.net
~/.msmtprc
account default host mail.gandi.net from <adresse de l'émetteur> tls on tls_certcheck off tls_starttls off auth on user <adresse Gandi/nom d'utilisateur utilisé pour se connecter à la boîte aux lettres électronique Gandi> password <mot de passe boîte aux lettres électronique>
Free
Paramétrage utilisé pour la messagerie Free (testé février 2023 sur Ubuntu Server 22.04)
~/.msmtprc
account default host smtp.free.fr from <adressemail>@free.fr auto_from off add_missing_from_header on auth on port 587 user <adressemail>@free.fr password <mot_de_passe> tls on tls_starttls on tls_trust_file /etc/ssl/certs/ca-certificates.crt
Références
- Le site officiel de msmtp : http://msmtp.sourceforge.net/
Contributeurs : kerkael création de la page le 21/08/2009, simtris MAJ de la configuration de Gmail le 17/05/2010