no way to compare when less than two revisions
Différences
Ci-dessous, les différences entre deux révisions de la page.
— | logiciel:systeme:msmtp:start [2022/11/08 19:28] (Version actuelle) – créée admin | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | {{tag> | ||
+ | ====== Msmtp : envoyer un courriel par smtp en ligne de commande ====== | ||
+ | |||
+ | Le fonctionnement du courrier électronique est basé sur l’utilisation d’une boîte à lettres électronique. | ||
+ | |||
+ | Lors de l’envoi d’un email, le message est acheminé de serveur en serveur jusqu’au serveur de messagerie du destinataire. | ||
+ | |||
+ | Le message est envoyé au serveur de courrier électronique chargé du transport (nommé MTA pour Mail Transport Agent), jusqu’au MTA du destinataire. | ||
+ | |||
+ | Sur le web, les MTA communiquent entre-eux grâce au protocole SMTP et sont appelés serveurs SMTP (mais aussi serveur de courrier sortant). | ||
+ | {{ logiciel: | ||
+ | |||
+ | La relève du courrier se fait grâce à un logiciel appelé MUA (Mail User Agent). On parle de client de messagerie (par exemple Mozilla Thunderbird, | ||
+ | |||
+ | ===== Pré-requis ===== | ||
+ | |||
+ | ===== Installation ===== | ||
+ | <WRAP list-deep> | ||
+ | |||
+ | - **Installez [[apt> | ||
+ | - **Vérifiez que sendmail est présent** sur votre système :< | ||
+ | sendmail: / | ||
+ | - **Vérifiez que sendmail est lié à msmtp** :< | ||
+ | lrwxrwxrwx 1 root root 12 oct. 11 2019 / | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ===== Configuration ===== | ||
+ | |||
+ | Le paramétrage des options se fait dans le fichier **/ | ||
+ | |||
+ | **[[logiciel: | ||
+ | |||
+ | **Exemple de fichier msmtprc** :<code yaml / | ||
+ | # Valeurs par défaut pour tous les comptes. | ||
+ | defaults | ||
+ | auth on | ||
+ | tls on | ||
+ | tls_starttls | ||
+ | tls_trust_file / | ||
+ | logfile | ||
+ | |||
+ | # Exemple pour un compte Gmail | ||
+ | account | ||
+ | auth plain | ||
+ | host | ||
+ | port 587 | ||
+ | from | ||
+ | user | ||
+ | password | ||
+ | |||
+ | # Exemple pour un compte GMX | ||
+ | account | ||
+ | host | ||
+ | port 587 | ||
+ | from | ||
+ | user | ||
+ | password | ||
+ | tls_nocertcheck | ||
+ | |||
+ | # Exemple pour un compte OVH | ||
+ | account | ||
+ | host | ||
+ | port 465 | ||
+ | from | ||
+ | user | ||
+ | password | ||
+ | |||
+ | # Exemple pour un compte Infomaniak | ||
+ | account | ||
+ | host | ||
+ | port 587 | ||
+ | from | ||
+ | user | ||
+ | password | ||
+ | |||
+ | # Exemple pour un serveur de test MailHog | ||
+ | account | ||
+ | auth off | ||
+ | tls off | ||
+ | tls_starttls | ||
+ | host | ||
+ | port 1024 | ||
+ | from | ||
+ | |||
+ | # Définir le compte par défaut | ||
+ | account default : gmail | ||
+ | </ | ||
+ | |||
+ | Modèle exemple de fichier :<code yaml / | ||
+ | # nom du compte (le fichier de configuration accepte plusieurs configurations de serveurs SMTP) | ||
+ | account default | ||
+ | # | ||
+ | host smtp.monfai.fr | ||
+ | # | ||
+ | from prenom.nom@monfai.fr | ||
+ | # si pas d' | ||
+ | auth off | ||
+ | # si authentification | ||
+ | #auth on | ||
+ | # | ||
+ | #user prenom.nom@fai.fr | ||
+ | # mot de passe en clair dans le fichier de configuration | ||
+ | password ************** | ||
+ | </ | ||
+ | |||
+ | ==== Exemple pour gmail ==== | ||
+ | |||
+ | Exemple de fichier de configuration utilisateur ~/.msmtprc | ||
+ | |||
+ | Ce fichier se concentre sur le protocole TLS et l' | ||
+ | |||
+ | Les fonctionnalités non utilisées ici incluent la journalisation, | ||
+ | |||
+ | * **Adresse du serveur SMTP Gmail** : smtp.gmail.com. | ||
+ | * **Nom SMTP Gmail** : Votre nom complet. | ||
+ | * **Identifiant SMTP Gmail** : votre adresse Gmail complète (par exemple vous@gmail.com) | ||
+ | * **Mot de passe SMTP Gmail** : le mot de passe que vous utilisez pour vous connecter à Gmail. | ||
+ | * **Port SMTP Gmail (TLS)** : 587. | ||
+ | * **Port SMTP Gmail (SSL)** : 465. | ||
+ | |||
+ | <code yaml ~/ | ||
+ | # Valeurs par défaut pour tous les comptes suivants. | ||
+ | defaults | ||
+ | |||
+ | # Utiliser le port 587 au lieu du port SMTP 25. | ||
+ | port 587 | ||
+ | |||
+ | # Toujours utiliser TLS. | ||
+ | tls on | ||
+ | |||
+ | # Définir une liste d' | ||
+ | tls_certcheck on | ||
+ | tls_trust_file / | ||
+ | |||
+ | # Service Gmail | ||
+ | ############### | ||
+ | account gmail | ||
+ | |||
+ | # Serveur SMTP | ||
+ | host smtp.gmail.com | ||
+ | |||
+ | # Adresse de l' | ||
+ | from ***********@gmail.com | ||
+ | |||
+ | # Authentification. Le mot de passe est donné en utilisant l'une des cinq méthodes, voir ci-dessous. | ||
+ | auth on | ||
+ | user ********@gmail.com | ||
+ | |||
+ | # Mot de passe, enregistré directement dans ce fichier. | ||
+ | # Assurez-vous que ce fichier ne peut être lu que par vous-même. | ||
+ | password ************** | ||
+ | |||
+ | # Fichier journal | ||
+ | logfile / | ||
+ | |||
+ | # Compte par défaut | ||
+ | account default : gmail (10) | ||
+ | </ | ||
+ | |||
+ | ; defaults | ||
+ | : Valeurs par défaut pour tous les comptes qui suivent. | ||
+ | ; port 587 | ||
+ | : port d’envoi pour les mails : utiliser le port 587 au lieu du port SMTP 25. | ||
+ | ; tls on | ||
+ | ; tls_starttls on | ||
+ | : Toujours utiliser TLS (Connexion chiffrée) | ||
+ | :: La connexion entre votre ordinateur et le serveur distant est chiffrée, ce qui signifie que si une personne arrive à intercepter les données, elles seront illisibles, car elles nécessitent une sorte de “mot de passe” connu de votre ordinateur et du serveur pour être lues. | ||
+ | ; tls_certcheck on | ||
+ | ; tls_trust_file / | ||
+ | : permettent d’indiquer ou sont situés les certificats par défaut de votre OS, ici c’est le chemin par défaut sous Debian, donc compatible Ubuntu. | ||
+ | :: Définit une liste d' | ||
+ | :: Par défaut, on utilise les paramètres système, mais vous pouvez sélectionner votre propre fichier.< | ||
+ | :: Si vous sélectionnez votre propre fichier, vous devez également utiliser la commande **tls_crl_file** pour vérifier les certificats révoqués, mais malheureusement, | ||
+ | |||
+ | ; account gmail | ||
+ | : Compte Gmail que vous utiliserez pour envoyer vos mails. Le fichier de configuration accepte plusieurs configurations de serveurs SMTP. | ||
+ | ; host smtp.gmail.com | ||
+ | : Nom d' | ||
+ | ; Au lieu de tls_trust_file/ | ||
+ | : vous pouvez utiliser tls_fingerprint pour épingler un seul certificat. | ||
+ | :: Vous devez mettre à jour l' | ||
+ | :: Obtenez l' | ||
+ | # | ||
+ | ; from prenom.nom@gmail.com | ||
+ | : origine du message, adresse de l' | ||
+ | |||
+ | Authentification | ||
+ | ; auth on | ||
+ | ; user prenom.nom@gmail.com | ||
+ | : ces 2 paramètres activent l’authentification de l’expéditeur du mail. Absolument nécessaire pour sécuriser l’envoi de mails. | ||
+ | |||
+ | Le mot de passe est fourni en utilisant l'une de ces cinq méthodes : | ||
+ | - Ajoutez le mot de passe au trousseau de clés du système et laissez msmtp l' | ||
+ | # host smtp.freemail.example \ | ||
+ | # service smtp \ | ||
+ | # user joe.smith</ | ||
+ | - Stockez le mot de passe dans un fichier chiffré et indiquez à msmtp la commande à utiliser pour le déchiffrer. Ceci se fait généralement avec GnuPG, comme dans cet exemple. Habituellement, | ||
+ | - Stocker le mot de passe directement dans ce fichier. En général, ce n'est pas une bonne idée de stocker les mots de passe dans des fichiers texte. Si vous le faites quand même, assurez-vous au moins que ce fichier ne peut être lu que par vous-même.< | ||
+ | - Stocker le mot de passe dans ~/.netrc. Cette méthode n'est sans doute plus d' | ||
+ | - Ne pas spécifier de mot de passe. Msmtp vous le demandera alors. Cela signifie que vous devez pouvoir taper dans un terminal lorsque msmtp s' | ||
+ | |||
+ | Pour ce tutoriel, j’ai choisi la plus facile mais la moins sécurisée, | ||
+ | |||
+ | ; password %%**************%% | ||
+ | : méthode 3 : mot de passe en clair dans le fichier de configuration | ||
+ | ; logfile / | ||
+ | : Fichier journal. Cette ligne permet de créer un fichier de log spécifique pour l’application msmtp. | ||
+ | ; account default : gmail | ||
+ | : Définir un compte par défaut | ||
+ | :: msmtp permet d’utiliser plusieurs comptes smtp. Vous devez en choisir un par défaut. | ||
+ | |||
+ | <WRAP center round tip 60%> | ||
+ | Si vous voulez configurer l’envoi de courriels au niveau d’un utilisateur seulement, créez le fichier **~/ | ||
+ | </ | ||
+ | |||
+ | * **exemple pour smtp.free.fr** :<code - ~/ | ||
+ | # exemple de compte avec free | ||
+ | account free | ||
+ | |||
+ | host smtp.free.fr | ||
+ | |||
+ | from prenom.nom@monfai.fr | ||
+ | |||
+ | auth off | ||
+ | |||
+ | user prenom.nom | ||
+ | </ | ||
+ | |||
+ | ==== Configurations particulières ==== | ||
+ | |||
+ | - **gmail** : gmail impose l' | ||
+ | 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 / | ||
+ | - **gmail non sécurisé**, | ||
+ | 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é**, | ||
+ | account default | ||
+ | host smtp.orange.fr | ||
+ | protocol smtp | ||
+ | auth login | ||
+ | tls on | ||
+ | tls_starttls off | ||
+ | tls_certcheck on | ||
+ | tls_trust_file / | ||
+ | from mon-adresse@orange.fr | ||
+ | maildomain orange.fr | ||
+ | port 465 | ||
+ | user mon-adresse | ||
+ | password mon-motdepasse</ | ||
+ | - **gandi.net** (nom de domaine acheté) :<code - > | ||
+ | account default | ||
+ | host mail.gandi.net | ||
+ | from <adresse de l' | ||
+ | tls on | ||
+ | tls_certcheck off | ||
+ | tls_starttls off | ||
+ | auth on | ||
+ | user <adresse Gandi/nom d' | ||
+ | password <mot de passe boîte aux lettres électronique></ | ||
+ | |||
+ | ===== Utilisation ===== | ||
+ | |||
+ | - **Test de fonctionnement** : Pour valider le bon fonctionnement de votre configuration, | ||
+ | * __en mode interactif__ :< | ||
+ | Subject: ...... | ||
+ | .... (corps du message) | ||
+ | a moi | ||
+ | . (un point suivi de < | ||
+ | Cc: | ||
+ | </ | ||
+ | * __ou en mode non interactif__ :< | ||
+ | - **envoyer le contenu d'un fichier texte** :< | ||
+ | - **envoyer un fichier** binaire ou compressé en pièce jointe :< | ||
+ | * le sujet du mail est une ligne en tête de message : | ||
+ | <WRAP center round important 60%> | ||
+ | Attention: il faut alors un saut de ligne : utilisez printf plutôt que echo. Exemple:< | ||
+ | </ | ||
+ | |||
+ | Vérifier que les mails sont bien partis en regardant le contenu de la file d' | ||
+ | |||
+ | ??? message d' | ||
+ | !!! le fichier est à renommer et à créer avec les droits pertinents : modifier dans .msmtprc la ligne :<code - >logfile / | ||
+ | il est nécessaire de créer le fichier de log , accessible par msmtp :<cli prompt=' | ||
+ | ...@...:/ | ||
+ | ...@...:/ | ||
+ | ...@...:/ | ||
+ | </ | ||
+ | ===== Désinstallation ===== | ||
+ | |||
+ | ===== Voir aussi ===== | ||
+ | |||
+ | * **(fr)** [[https:// | ||
+ | * **(fr)** [[https:// | ||
+ | * **(fr)** [[https:// | ||
+ | * **(en)** [[http:// | ||
+ | * **(en)** [[https:// | ||
+ | * **(fr)** [[http:// | ||
+ | |||
+ | ---- | ||
+ | //Basé sur << [[https:// |