Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
tutoriel:comment_envoyer_un_mail_par_smtp_en_ligne_de_commande [Le 27/08/2009, 22:21]
213.95.41.13 Information sur le sujet du mail Subject:...
tutoriel:comment_envoyer_un_mail_par_smtp_en_ligne_de_commande [Le 17/02/2023, 16:15] (Version actuelle)
84.14.209.116 [Configurations particulières]
Ligne 1: Ligne 1:
-{{tag>Intrepid ​réseau internet courriel tutoriel BROUILLON}}+{{tag>Xenial ​réseau internet courriel tutoriel BROUILLON}}
  
 ---- ----
Ligne 5: Ligne 5:
 ====== Comment envoyer un courriel par smtp en ligne de commande  ====== ====== 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.   * 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]]. +  * Envoyer automatiquement des informations par courriel peut être utile, par exemple, pour récupérer l'IP externe de sa box. Voir le tuto [[tutoriel:Comment_envoyer_l_IP_de_sa_box_automatiquement_par_courriel]]. 
-===== 1. Utilisation de msmtp ===== +===== Utilisation de msmtp ===== 
-==== a. Installation ====+==== Installation ====
  
 [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt://​msmtp|msmtp]]**. [[:​tutoriel:​comment_installer_un_paquet|Installez le paquet]] **[[apt://​msmtp|msmtp]]**.
Ligne 15: Ligne 15:
 <​note>​Ce tutoriel se base sur l'​utilisation de msmtp. Il existe bien sûr d'​autres solutions pour envoyer des courriels en ligne de commande. ssmtp propose les mêmes fonctionnalités en se basant sur un fichier de configuration très semblable, par exemple.</​note>​ <​note>​Ce tutoriel se base sur l'​utilisation de msmtp. Il existe bien sûr d'​autres solutions pour envoyer des courriels en ligne de commande. ssmtp propose les mêmes fonctionnalités en se basant sur un fichier de configuration très semblable, par exemple.</​note>​
  
-==== b. Configuration ====+==== Configuration ====
  
   * [[:​tutoriel:​comment_modifier_un_fichier|Créez et ouvrez le fichier]] **~/​.msmtprc** (dans votre dossier personnel).   * [[:​tutoriel:​comment_modifier_un_fichier|Créez et ouvrez le fichier]] **~/​.msmtprc** (dans votre dossier personnel).
  
 <note important>​Ne pas utiliser de commande sudo. C'est bien l'​utilisateur qui envoie les mails.</​note>​ <note important>​Ne pas utiliser de commande sudo. C'est bien l'​utilisateur qui envoie les mails.</​note>​
-<file>nano ~/​.msmtprc</​file>+<code bash>nano ~/​.msmtprc</​code>
   account default   account default
   host smtp.monfai.fr   host smtp.monfai.fr
Ligne 33: Ligne 33:
  
   * Dissimuler ce fichier qui contient votre mot de passe en clair   * Dissimuler ce fichier qui contient votre mot de passe en clair
-<file>chmod 600 ~/​.msmtprc</​file>+<code bash>chmod 600 ~/​.msmtprc</​code>
 == Configurations spécifiques (en fin de tuto) == == Configurations spécifiques (en fin de tuto) ==
 <​note>​ <​note>​
Ligne 39: Ligne 39:
   * la configuration de msmtp peut être beaucoup plus pointue, //man// et //​documentation//​ peuvent vous aider.   * la configuration de msmtp peut être beaucoup plus pointue, //man// et //​documentation//​ peuvent vous aider.
 </​note>​ </​note>​
-  * fichier .msmtprc pour [[comment_envoyer_un_mail_par_smtp_en_ligne_de_commande#​gmail|gmail]].+  * Pour avoir plusiers comptes configurés:​ 
 +  il suffit de rajouter une ligne account //​NomDuCompte//​ suivi de la configuration propre à ce compte. 
 +  
 +__exemple__:​
  
 +<​file>​
 +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
 +</​file>​
  
-==== c. Utilisation ====+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 [[tutoriel:​comment_envoyer_un_mail_par_smtp_en_ligne_de_commande#​gmail|gmail]]. 
 + 
 +==== Utilisation ====
   * Pour envoyer le contenu d'un fichier texte comme message:   * Pour envoyer le contenu d'un fichier texte comme message:
-<file>cat readme.txt | msmtp johnny@liday.ch</​file>+<code bash>cat readme.txt | msmtp johnny@liday.ch</​code>
   * Pour envoyer un fichier binaire, ou compressé en pièce jointe :   * Pour envoyer un fichier binaire, ou compressé en pièce jointe :
-<file>​uuencode application.zip | msmtp johnny@liday.ch</​file>+<code bash>​uuencode application.zip | msmtp johnny@liday.ch</​code>
 <note tip>Pour préciser le sujet du mail, il faut utiliser Subject://​DeQuoiOnParle//​ en tête de message. <note tip>Pour préciser le sujet du mail, il faut utiliser Subject://​DeQuoiOnParle//​ en tête de message.
-Donc si on envoie un fichier readme.txt, à moins qu'il commence par Subject:... le message n'aura pas de sujet</​note>​+Donc si on envoie un fichier readme.txt, à moins qu'il commence par Subject:... le message n'aura pas de sujet
  
-==== d. Vérification ====+**Attention**:​ il faut alors un saut de ligne; une solution simple est d'​utiliser //printf// plutôt que //echo//. 
 +Exemple: <code bash>​printf "​Subject:​DeQuoiOnParle\nLeCorpsDuMessage"​ | msmtp johnny@liday.ch</​code></​note>​ 
 + 
 +<note important>​Ne pas oublier les tags ci dessous en début de votre message électronique sans quoi il ne sera pas forcement accepté par [[http://​mail.google.com|gmail]] ou autre (non respect de la RFC2822)</​note>​ 
 +   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   * Depuis votre client de messagerie, vérifiez que vous avez bien reçu le message attendu
  
  
  
-==== e. Configurations particulières ====+==== Configurations particulières ====
 === gmail === === gmail ===
-  * [[http://​mail.google.com|gmail]] impose l'​utilisation d'une couche [[http://​fr.wikipedia.org/​wiki/​Transport_Layer_Security|TLS]]. ​Il faut éditer ​le .msmtprc ​en conséquence (merci à imhotep59) ​:\\ +[[http://​mail.google.com|gmail]] impose l'​utilisation d'une couche [[wpfr>Transport_Layer_Security|TLS]]. ​La configuration doit le prendre ​en compte de cette façon ​ 
 <​file>​~/​.msmtprc</​file>​ <​file>​~/​.msmtprc</​file>​
   account default   account default
   tls on   tls on
   host smtp.gmail.com   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 : [[http://​msmtp.sourceforge.net/​doc/​msmtp.html|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 [[wpfr>​Attaque_de_l'​homme_du_milieu|MiM]]
 +
 +<​file>​~/​.msmtprc</​file>​
 +  account default
 +  tls on
 +  host smtp.gmail.com
 +  port 587
   from nom_user@gmail.com   from nom_user@gmail.com
   auth on   auth on
Ligne 68: Ligne 116:
   tls_starttls off   tls_starttls off
   tls_certcheck off   tls_certcheck off
 +  ​
 +=== Orange sécurisé ===
 +L'​opérateur historique Orange fonctionne avec [[wpfr>​Transport_Layer_Security|TLS]] de la façon suivante (20/​11/​2015):​
  
 +<​file>​~/​.msmtprc</​file>​
 +  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
 +<​file>​~/​.msmtprc</​file>​
 +  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)
 +<​file>​~/​.msmtprc</​file>​
 +  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 ===== ===== Références =====
  
Ligne 74: Ligne 169:
  
  
-== Contributeurs == +----------------- 
-[[utilisateurs:​kerkael]] création de la page le 21/08/2009+Contributeurs : ​[[:utilisateurs:​kerkael]] création de la page le 21/08/2009, simtris MAJ de la configuration de Gmail le 17/05/2010
  • tutoriel/comment_envoyer_un_mail_par_smtp_en_ligne_de_commande.1251404460.txt.gz
  • Dernière modification: Le 18/04/2011, 14:50
  • (modification externe)