====== Postfix avec SMTP GMail ====== ===== Installation ===== Nous allons installer les paquets suivants : apt-get install postfix mailutils libsasl2-2 ca-certificates libsasl2-modules mailutils est un client console pour envoyer les mails, libsasl2-2, ca-certificates, libsasl2-modules pour les certificats SSL. Lors de l’installation, **il faut choisir "Site Internet**" et ensuite laissez le hostname par défaut. On active le démarrage de postfix au lancement du système: systemctl enable postfix ===== Paramétrage ===== Dans l'état on ne peut rien envoyer! Donc passons au paramétrage. Maintenant que Gmail nécessaire une double authentification MFA/2FA, il faut qu'on "bypass" ça en autorisant directement dans les paramètres de sécurité de notre compte via "[[https://support.google.com/mail/answer/185833?hl=fr|mot de passe d'application]]" (pas d'acces depuis [[https://myaccount.google.com/security|https://myaccount.google.com/security]]) C'est très bien caché! il faut aller ici :[[https://myaccount.google.com/apppasswords|https://myaccount.google.com/apppasswords]] Une foix le code généré il faut le mettre dans: vi /etc/postfix/sasl_passwd il faut enlever les espaces du code affiché. [smtp.gmail.com]:587 USERNAME@gmail.com:xxxxxxxxxxxxxxxx Comme c'est quand meme votre code d'acces faut le sécuriser en n'autorisant que root chmod 400 /etc/postfix/sasl_passwd Et pour que Postfix puisse l'utiliser il faut en faire un hash postmap /etc/postfix/sasl_passwd Maintenant on ce qu'il faut on configure Postfix vi /etc/postfix/main.cf modifiez le relayhost en relayhost = [smtp.gmail.com]:587 et ajouter à la fin du fichier smtp_sasl_auth_enable = yes smtp_sasl_password_maps = hash:/etc/postfix/sasl_passwd smtp_sasl_security_options = noanonymous smtp_tls_CAfile = /etc/postfix/cacert.pem smtp_use_tls = yes Et voilà on redémarre Postfix systemctl reload postfix ===== Test ===== Pour tester on utilise mail echo "test"|mail -s "test" mail_destinataire en cas de pb de récpetion consultez les logs cat /var/mail/root pour vider les mails non distribués > /var/spool/mail/root ===== Bonus ===== Automatisation :\\ Trigger pour automatiser: https://wasteofserver.com/permanently-delete-unwanted-emails-from-gmail-out-of-sight-out-of-mind/ [[https://script.google.com|https://script.google.com]] function emptyTrash() { var gmailSearchString = `in:trash` var threads = GmailApp.search(gmailSearchString); const n = threads.length; if (n <= 0) { Logger.log("No threads matching search string \"%s\"", gmailSearchString); return } else { Logger.log("%s threads matching action **%s**", n, gmailSearchString); } for (var i = 0; i function toTrash() { var gmailSearchString = `to:me` var threads = GmailApp.search(gmailSearchString); const n = threads.length; if (n <= 0) { Logger.log("No threads matching search string \"%s\"", gmailSearchString); return } else { Logger.log("%s threads matching action **%s**", n, gmailSearchString); } for (var i = 0; i