Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
msmtp [Le 12/01/2020, 09:31] 82.251.241.242 [Configuration] |
msmtp [Le 22/07/2024, 15:11] (Version actuelle) 80.67.176.205 [Test de fonctionnement] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>Bionic Xenial BROUILLON}} | + | {{tag>Bionic Xenial Focal MTA }} |
- | ---- | + | |
====== MSMTP ====== | ====== MSMTP ====== | ||
+ | |||
**msmtp** est un client [[https://fr.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol|SMTP]] très simple et facile à configurer pour l'envoi de courriels. \\ | **msmtp** est un client [[https://fr.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol|SMTP]] très simple et facile à configurer pour l'envoi de courriels. \\ | ||
Son mode de fonctionnement par défaut consiste à transférer les courriels au serveur SMTP que vous aurez indiqué dans sa configuration. Ce dernier se chargera de distribuer les courriels à leurs destinataires.\\ | Son mode de fonctionnement par défaut consiste à transférer les courriels au serveur SMTP que vous aurez indiqué dans sa configuration. Ce dernier se chargera de distribuer les courriels à leurs destinataires.\\ | ||
Il est entièrement compatible avec sendmail, prend en charge le transport sécurisé TLS, les comptes multiples, diverses méthodes d’authentification et les notifications de distribution.\\ | Il est entièrement compatible avec sendmail, prend en charge le transport sécurisé TLS, les comptes multiples, diverses méthodes d’authentification et les notifications de distribution.\\ | ||
- | **msmtp** est la solution idéale si vous avez besoin que votre serveur vous envoie les courriels de notifications (taches [[cron|Programmer des tâches avec CRON]], [[logwatch|Logwatch]] ou autre) sans avoir à mettre en place une solution lourde comme [[postfix|Postfix : agent de transfert de courriel (SMTP)]].\\ | + | **msmtp** est la solution idéale si vous avez besoin que votre serveur vous envoie les courriels de notifications (taches [[cron|Programmer des tâches avec CRON]], [[logwatch|Logwatch]] ou autre) sans avoir à mettre en place une solution plus lourde comme: |
+ | * [[:postfix_systeme_satellite]] | ||
+ | * [[:exim4-satellite]] | ||
===== Pré-requis ===== | ===== Pré-requis ===== | ||
Ligne 15: | Ligne 17: | ||
===== Installation ===== | ===== Installation ===== | ||
- | Pour installer ce logiciel, il suffit d'[[:tutoriel:comment_installer_un_paquet|installer les paquets]] **[[apt>msmtp,msmtp-mta,paquet3|msmtp msmtp-mta]]**. | + | Pour installer ce logiciel, il suffit d'[[:tutoriel:comment_installer_un_paquet|installer les paquets]] **[[apt>msmtp]]** et **[[apt>msmtp-mta]]**. |
Soit en ligne de commande : | Soit en ligne de commande : | ||
<code>sudo apt install msmtp msmtp-mta</code> | <code>sudo apt install msmtp msmtp-mta</code> | ||
- | + | Valider la proposition de non-acceptation de [[https://doc.ubuntu-fr.org/apparmor|apparmor]] : | |
+ | |||
+ | {{:applications:msmtp:msmtp1.png?400|}} | ||
===== Configuration ===== | ===== Configuration ===== | ||
- | Pour configurer l'envoi de courriels au niveau du système, [[:tutoriel:comment_modifier_un_fichier|ouvrez le fichier]] **/etc/msmtprc** en modification puis renseignez les paramètres de connexion à votre compte de courriel en vous inspirant de l'exemple ci-dessous : | + | Pour configurer l'envoi de courriels au niveau du système, [[:tutoriel:comment_modifier_un_fichier|ouvrez le fichier]] **/etc/msmtprc** en modification (A créer s'il n'existe pas ) puis renseignez les paramètres de connexion à votre compte de courriel en vous inspirant de l'exemple ci-dessous : |
<file> | <file> | ||
# Valeurs par défaut pour tous les comptes. | # Valeurs par défaut pour tous les comptes. | ||
Ligne 28: | Ligne 33: | ||
auth on | auth on | ||
tls on | tls on | ||
+ | tls_starttls on | ||
tls_trust_file /etc/ssl/certs/ca-certificates.crt | tls_trust_file /etc/ssl/certs/ca-certificates.crt | ||
- | logfile /var/log/msmtp.log | + | logfile /var/log/msmtp |
# Exemple pour un compte Gmail | # Exemple pour un compte Gmail | ||
account gmail | account gmail | ||
+ | auth plain | ||
host smtp.gmail.com | host smtp.gmail.com | ||
port 587 | port 587 | ||
from username@gmail.com | from username@gmail.com | ||
user username | user username | ||
- | password plain-text-password | + | password XXXXXXXXXX |
+ | |||
+ | # Exemple pour un compte GMX | ||
+ | account gmx | ||
+ | host mail.gmx.com | ||
+ | port 587 | ||
+ | from username@gmx.com | ||
+ | user username@gmx.com | ||
+ | password XXXXXXXXXX | ||
+ | tls_nocertcheck | ||
+ | |||
+ | # Exemple pour un compte OVH MX PLAN | ||
+ | account ovh | ||
+ | auth on | ||
+ | tls on | ||
+ | tls_starttls off | ||
+ | host ssl0.ovh.net | ||
+ | port 465 | ||
+ | from username@example.com | ||
+ | user username@example.com | ||
+ | password XXXXXXXXXX | ||
+ | |||
+ | |||
+ | # Exemple pour un compte OVH E-MAIL PRO | ||
+ | account ovh | ||
+ | host proX.mail.ovh.net | ||
+ | port 587 | ||
+ | from username@example.com | ||
+ | user username@example.com | ||
+ | password XXXXXXXXXX | ||
+ | |||
+ | # Exemple pour un compte Infomaniak | ||
+ | account infomaniak | ||
+ | host mail.infomaniak.com | ||
+ | port 587 | ||
+ | from username@example.com | ||
+ | user username@example.com | ||
+ | password XXXXXXXXXX | ||
+ | |||
+ | # Exemple pour un serveur de test MailHog | ||
+ | account mailhog | ||
+ | auth off | ||
+ | tls off | ||
+ | tls_starttls off | ||
+ | host localhost | ||
+ | port 1024 | ||
+ | from username@example.com | ||
+ | |||
+ | # Exemple pour riseUP | ||
+ | account riseup | ||
+ | tls on | ||
+ | auth on | ||
+ | host smtp.riseup.net | ||
+ | port 587 | ||
+ | from me@riseup.net | ||
+ | user me@riseup.net | ||
+ | password xxx | ||
+ | |||
+ | # Exemple pour free. L'utilisation du port 25 est une liaison non sécurisée nécessitant d'installer aussi bsd-mailx | ||
+ | account free1 | ||
+ | tls off | ||
+ | auth off | ||
+ | port 25 | ||
+ | host smtp.free.fr | ||
+ | from Me1@free.fr | ||
+ | user You@free.fr | ||
+ | password Celui définit dans la messagerie free pour Me1 | ||
+ | |||
+ | account free2 | ||
+ | auth off | ||
+ | port 587 | ||
+ | host smtp.free.fr | ||
+ | from Me2@free.fr | ||
+ | user You@free.fr | ||
+ | password Celui définit dans la messagerie free pour Me2 | ||
# Définir le compte par défaut | # Définir le compte par défaut | ||
account default : gmail | account default : gmail | ||
</file> | </file> | ||
+ | |||
+ | <note tip> | ||
+ | Pour OVH dans les paramètres généraux, pensez à désactiver starttls (sauf si vous utilisez une solution E-MAIL PRO) : | ||
+ | <file> tls_starttls off </file> </note> | ||
+ | |||
Si vous voulez configurer l'envoi de courriels au niveau d'un utilisateur, créez le fichier **.msmtprc** dans le dossier personnel de l'utilisateur concerné. Ce fichier ne devra être accessible en lecture et écriture qu'à l'utilisateur : | Si vous voulez configurer l'envoi de courriels au niveau d'un utilisateur, créez le fichier **.msmtprc** dans le dossier personnel de l'utilisateur concerné. Ce fichier ne devra être accessible en lecture et écriture qu'à l'utilisateur : | ||
<code>chmod 600 .msmtprc</code> | <code>chmod 600 .msmtprc</code> | ||
+ | |||
+ | |||
<note tip> | <note tip> | ||
Ligne 55: | Ligne 143: | ||
lrwxrwxrwx 1 root root 12 nov. 28 2016 /usr/sbin/sendmail -> ../bin/msmtp | lrwxrwxrwx 1 root root 12 nov. 28 2016 /usr/sbin/sendmail -> ../bin/msmtp | ||
</code> | </code> | ||
+ | Si ce n'est pas le cas, [[:tutoriel:comment_installer_un_paquet|réinstallez le paquet]] **[[apt>msmtp-mta]]**. | ||
</note> | </note> | ||
+ | ===== Usage en crontab ===== | ||
+ | |||
+ | Certaines lignes ne sont pas obligatoires, comme **CRONARGS**, mais ça ne fait pas de mal. | ||
+ | |||
+ | <file> | ||
+ | CRONARGS=-m/usr/bin/msmtp | ||
+ | MAILTO=toi@fournisseur-de-mail.tld | ||
+ | MAILFROM=toi@fournisseur-de-mail-renseigne-dans-msmtp.tld | ||
+ | # m h dom mon dow command | ||
+ | |||
+ | 10 * * * * command_X | ||
+ | </file> | ||
===== Test de fonctionnement ===== | ===== Test de fonctionnement ===== | ||
- | |||
- | <code>echo 'message' | mail user@domain.com</code> | ||
- | Si cela ne fonctionne pas, essayer : | + | <code>printf "Subject:DeQuoiOnParle\n\nLeCorpsDuMessage" | msmtp user@domain.com</code> |
+ | **Erreur de retour possible:** "msmtp: le serveur ne supporte pas l'authentification" | ||
- | <code>echo 'message' | msmtp user@domain.com</code> | + | Si cela ne fonctionne pas, installez le paquet ** [[apt>mailutils|mailutils]]**, puis faite cette commande. |
+ | <code>printf "Subject:DeQuoiOnParle\n\nLeCorpsDuMessage" | msmtp user@domain.com</code>**Erreur de retour possible:** "mail: impossible d'expédier le message : Processus terminé avec un état de sortie non nul" | ||
Vérifier sa boîte de réception. | Vérifier sa boîte de réception. | ||
- | + | ||
+ | <note tip> | ||
+ | Si la commande ''mail'' ne fonctionne pas, [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt>bsd-mailx]]** : | ||
+ | <code>sudo apt install bsd-mailx</code> | ||
+ | </note> | ||
+ | <note tip> | ||
+ | Si vous recevez ce message d'erreur : | ||
+ | ''send-mail: impossible d'écrire dans le journal /var/log/msmtp.log : erreur d'ouverture de fichier: Permission non accordée'' peut-être avez-vous sélectionné "Oui" sur l'écran **AppArmor** ? Dans ce cas, il faut désactiver la prise en charge de msmtp en faisant : | ||
+ | <code>sudo ln -s /etc/apparmor.d/usr.bin.msmtp /etc/apparmor.d/disable/ | ||
+ | sudo apparmor_parser -R /etc/apparmor.d/usr.bin.msmtp</code> | ||
+ | Si ce n'est pas le cas, la solution est [[http://blogettrux.free.fr/index.php?2020/11/23/22/00/09-config-msmtp | résumée sur cette page en français.]] et [[https://askubuntu.com/questions/878288/msmtp-cannot-write-to-var-log-msmtp-msmtp-log| précisée sur sa source en anglais ]] | ||
+ | Testé avec succès sur Ubuntu 20.04. | ||
+ | |||
+ | Il peut aussi être utile d'ajouter l'utilisateur au groupe msmtp et reconnecter. | ||
+ | <code>sudo adduser $USER msmtp | ||
+ | exit</code> | ||
+ | </note> | ||
===== Désinstallation ===== | ===== Désinstallation ===== | ||