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édentesRévision précédente
Prochaine révision
Révision précédente
pratique:informatique:mail:mail_relai [06/06/2025 13:40] – [Déléguer l'envoi des mails depuis un serveur] Zatalyzpratique:informatique:mail:mail_relai [13/10/2025 18:52] (Version actuelle) – [Paramétrage des DNS] Zatalyz
Ligne 39: Ligne 39:
 user           user@nomdomaine.com user           user@nomdomaine.com
 password       (mettezlevotre) password       (mettezlevotre)
-logfile        /var/log/.msmtp.log+syslog         LOG_MAIL
 aliases        /etc/aliases aliases        /etc/aliases
 # Définir le compte par défaut # Définir le compte par défaut
Ligne 45: Ligne 45:
  
 </code> </code>
 +
 +<WRAP center round tip 60%>
 +Il est possible que Apparmor fasse des siennes et empêche d'écrire dans le fichier de log (cf [[https://askubuntu.com/questions/878288/msmtp-cannot-write-to-var-log-msmtp-msmtp-log|ici]]).
 +
 +Solution simple et efficace : enlever la ligne ''logfile        /var/log/.msmtp.log'' et mettre ''syslog LOG_MAIL'' dans ''/etc/msmtprc''.
 +
 +Les logs seront gérés par syslog, et nous aurons dans /var/log un "mail.log" qui bénéficiera de la logique de logrotate.
 +
 +</WRAP>
  
 Tester l'envoi d'un mail : Tester l'envoi d'un mail :
Ligne 94: Ligne 103:
   echo "Test" | mail -s "Test " root   echo "Test" | mail -s "Test " root
  
-<WRAP center round tip 60%> +==== Vérifier la sécurité ==== 
-Il est possible que Apparmor fasse des siennes et empêche d'écrire dans le fichier de log (cf [[https://askubuntu.com/questions/878288/msmtp-cannot-write-to-var-log-msmtp-msmtp-log|ici]]). +Pour éviter que le mot de passe du mail soit visible par toute personne connectée au serveur, on peut améliorer un peu les choses.
- +
-Solution simple et efficace : enlever la ligne ''logfile        /var/log/.msmtp.log'' et mettre ''syslog LOG_MAIL'' dans ''/etc/msmtprc''.+
  
 +<WRAP center round help 60%>
 +Il y a des méthodes diverses pour stocker le mot de passe mais la plupart me semblent compliquées à concilier avec un usage serveur : on ne peux pas entrer le mot de passe manuellement quand un courrier veut être envoyé. Si vous voyez comment faire mieux, je prends. 
 </WRAP> </WRAP>
 +
 +On peut stocker le mot de passe dans un fichier séparé en ayant cette ligne à la place de ''password''
 +  passwordeval   "cat /etc/secret/msmtp"
 +
 +(ou tout autre chemin). Cependant je ne suis pas sûre de voir l'intérêt d'un autre fichier, si son accès dépend des mêmes contraintes que ''/etc/msmtprc''
 +
 +On va créer un group qui aura le droit d'envoyer les mails (mais pas de modifier la configuration, réservée à root), y mettre des utilisateurs systèmes, et renforcer les droits sur le fichier de msmtp : la lecture sera interdite à tout le monde sauf le nouveau groupe, et la modification réservée à root.
 +
 +<code>
 +sudo groupadd smtpusers
 +sudo usermod -aG smtpusers backup
 +sudo usermod -aG smtpusers mail
 +sudo usermod -aG smtpusers www-data
 +sudo chown root:smtpusers /etc/msmtprc
 +sudo chmod 640 /etc/msmtprc
 +</code>
 +
 +=> J'ai par défaut ajouté les users systèmes "backup, mail, www-data" au groupe, car ils ont parfois besoin d'envoyer des mails. On peut aussi ajouter son/ses utilisateurs personnels, mais ça n'a pas grand intérêt sur un serveur. Suivant ce qu'on installe comme logiciel, il faut veiller à ce qu'ils puissent envoyer des mails si besoin en faisant partie de ce groupe.
 +
 +
  
 ==== Avec Scaleway ==== ==== Avec Scaleway ====
Ligne 150: Ligne 179:
   service apache2 restart   service apache2 restart
 ==== Problème de port ? ==== ==== Problème de port ? ====
-Vérifiez que les règles "output" sur le [[pratique:informatique:parefeu:nftables#sur_hyperviseur_expose_sur_internet|pare-feu]] permettent à msmtp d'envoyer un mail ! Les ports 25, 465 et 587 sont concernés, uniquement en output.+Vérifiez que les règles "output" sur le [[pratique:informatique:parefeu:nftables#sur_hyperviseur_expose_sur_internet|pare-feu]] permettent à msmtp d'envoyer un mail ! Les ports 465 et 587 sont concernés, uniquement en **output**.
  
  
Ligne 156: Ligne 185:
   * https://doc.ubuntu-fr.org/msmtp   * https://doc.ubuntu-fr.org/msmtp
   * https://doc.ubuntu-fr.org/tutoriel/comment_envoyer_un_mail_par_smtp_en_ligne_de_commande   * https://doc.ubuntu-fr.org/tutoriel/comment_envoyer_un_mail_par_smtp_en_ligne_de_commande
 +  * https://marlam.de/msmtp/msmtp.html
  
 ===== Paramétrage des DNS ===== ===== Paramétrage des DNS =====
 Pour améliorer la délivrabilité des mails, il faut configurer les DNS afin que tout soit propre. Au programme, SPF, DKIM, DMARC. Pour améliorer la délivrabilité des mails, il faut configurer les DNS afin que tout soit propre. Au programme, SPF, DKIM, DMARC.
  
-==== SPF ==== +Et ça se passe sur la [[pratique:informatique:mail:mail_dns|page suivante]]
-Sur OVH, par défaut  +
-  "v=spf1 include:mx.ovh.com ~all"+
  
-Sur Gandi :  +{{tag>Mail Relai MSMTP}}
-  "v=spf1 include:_mailcust.gandi.net ?all" +
- +
-Cela va autoriser tout ce qui passera par la gestion mail de ovh.  +
- +
-C'est suffisant pour tout les mails envoyé par le premier niveau (mondomain.com). Par contre il faut ajouter des options si on utilise un sous-domaine d'un serveur spécifique (moi.mondomain.com) ou des services tiers (autremail.com) : +
-  "v=spf1 include:_mailcust.gandi.net a:moi.mondomain.com include:autremail.com ?all" +
- +
-<WRAP center round tip 60%> +
-Si usage de https://sg-autorepondeur.com/ il faut probablement accepter leur domaine ? À vérifier... +
-</WRAP> +
- +
-Voir aussi [[https://support.google.com/a/answer/10685031|Doc Google : Définir votre enregistrement SPF (configuration de base)]] qui détaille bien les options. +
- +
-==== DKIM ==== +
-Chez Gandi c'est tout automatique, suffit de cliquer sur le bon bouton : [[https://news.gandi.net/fr/2021/05/protegez-la-reputation-de-votre-nom-de-domaine-avec-dkim/|Protégez la réputation de votre nom de domaine avec DKIM]]. +
- +
-Chez OVH, ils conseillent de génerer le DKIM via http://dkimcore.org/tools/keys.html et débrouille-toi ma poule. Demande de plus de détails sur https://community.ovh.com/t/parametrage-de-dkim-quels-options-renseigner/48740 +
- +
-  * [[https://support.google.com/a/topic/2752442|Doc Google : Authentifier les e-mails avec DKIM]] +
- +
-==== DMARC ==== +
-Attention ! DMARC doit être activé uniquement si DKIM et SPF sont fonctionnels, sinon ça ne marchera pas ! +
- +
-Gandi (modifier mail@mondomain.com) : +
-  "v=DMARC1; p=reject; rua=mailto:mail@mondomain.com" +
- +
-==== Sources ==== +
-  * [[https://support.google.com/mail/answer/81126|Empêcher le blocage ou le placement dans le dossier "Spam" des messages envoyés aux utilisateurs Gmail]] : la doc de google est étonnamment bien. +
-  * Google :  +
-    * [[https://toolbox.googleapps.com/apps/checkmx/]] : test du nom de domaine par Google +
-    * [[https://transparencyreport.google.com/safe-browsing/overview]] : État des soucis sur le nom de domaine répertorié par Google (la réputation de notre nom de domaine chez eux) +
-  * [[https://www.mail-tester.com/]] : envoyer un email à une adresse qui va vérifier sa conformité face à plein de paramètres +
-  * https://mxtoolbox.com : divers outils de vérification de la qualité du mail+
  
-==== Spécificités GAFAM ==== +[[https://creativecommons.org/publicdomain/zero/1.0/deed.fr|{{ https://liev.re/imagesweb/licences/cc-zero.png?100 | Ce texte est placé sous licence CC0}}]]
-=== Google === +
-Google utilise un outil ([[https://postmaster.google.com]]) qui va offrir des rapports sur la façon dont nos mails sont géré par euxAu passage, les petits sagouins en profitent pour ajouter une validation, ils donnent un champ TXT à ajouter dans le DNS pour valider que le domaine est à nous+
  
-Nul doute que ce genre de détail aide aussi à la délivrance des mails. 
  
pratique/informatique/mail/mail_relai.1749210012.txt.gz · Dernière modification : 06/06/2025 13:40 de Zatalyz