#1 Le 17/04/2023, à 23:25
- sputnick
[RÉSOLU]:comment recevoir les mais de cron via msmtp
Salut,
j'utilise cron:
ii cron 3.0pl1-137ubuntu3 amd64 process scheduling daemon
Est-ce que quelqu'un a une conf msmtp qui fonctionne avec les mails cron?
J'ai renseigné dans
crontab -e
# m h dom mon dow command
SHELL=/bin/bash
CRONARGS=-m/usr/bin/msmtp
MAILTO=moi@mondomaine.tld
PATH=/home/moi/bin:/usr/local/bin:/usr/bin:/bin:/bin
Mais je ne reçoit pas de mails de cron. Une idée? J'avoue, il m'arrive de faire la feignasse.
Edit: bien sur, les commandes msmtp, mail, s-nail fonctionnent en interactif
$ systemctl status msmtp*
● msmtpd.service - msmtp daemon
Loaded: loaded (/lib/systemd/system/msmtpd.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-04-18 00:07:48 CEST; 33min ago
Docs: man:msmtpd(1)
Main PID: 155343 (msmtpd)
Tasks: 1 (limit: 26125)
Memory: 204.0K
CPU: 30ms
CGroup: /system.slice/msmtpd.service
└─155343 /usr/bin/msmtpd --interface=127.0.0.1 --port=25
avril 18 00:07:48 ultrabook systemd[1]: Started msmtp daemon.
$ cat /etc/mail.rc
set mta=/usr/bin/msmtp
$ cat /etc/aliases
moi: root
postmaster: root
root: moi@domaine.tld
# less /var/log/syslog
Apr 18 01:00:08 monordi cron[174388]: sendmail: the server did not accept the mail
Apr 18 01:00:08 monordi cron[174388]: sendmail: server message: 550 5.7.1 Rejected due to unmatching envelope and header sender.
Apr 18 01:00:08 monordi cron[174388]: sendmail: could not send mail (account default from /etc/msmtprc)
Apr 18 01:00:08 monordi CRON[174382]: (stardust) MAIL (mailed 2941 bytes of output but got status 0x0045 from MTA#012)
Ma conf par défaut est RiseUp
Edit:
Je pense que RiseUp sait filtrer les messages provenant de localhost. Un peu tard ce soir pour comparer une requête légitime et une non autorisée avec Wireshark.
A suivre, peut-être pourrais-je mettre à jour le wiki ubuntu-fr quand ça marchera...
Dernière modification par sputnick (Le 19/04/2023, à 17:47)
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#2 Le 18/04/2023, à 16:49
- lann
Re : [RÉSOLU]:comment recevoir les mais de cron via msmtp
Dans le fichier /etc/crontab c'est pas MAIL mais MAILTO
et j'ai pas la ligne
CRONARGS=-m/usr/bin/msmtp
et ça fonctionne très bien
Dernière modification par lann (Le 18/04/2023, à 16:50)
<Modéré>
Hors ligne
#3 Le 18/04/2023, à 16:54
- sputnick
Re : [RÉSOLU]:comment recevoir les mais de cron via msmtp
Merci lann, essayé plusieurs combinaisons, mais j'ai toujours:
sendmail: server message: 550 5.7.1 Rejected due to unmatching envelope and header sender.
Tu a quel fournisseur de mail?
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne
#4 Le 18/04/2023, à 18:48
- lann
Re : [RÉSOLU]:comment recevoir les mais de cron via msmtp
Je passe par le serveur smtp de free (free.fr)
<Modéré>
Hors ligne
#5 Le 19/04/2023, à 14:58
- LeoMajor
Re : [RÉSOLU]:comment recevoir les mais de cron via msmtp
salut,
sendmail: server message: 550 5.7.1 Rejected due to unmatching envelope and header sender.
Le message est mal forgé; problème de "mail from" (le véritable expéditeur vu par le MTA ...) ; souvent symbolisé dans les options des commandes par -f
ex: php... mail('nobody@example.com', 'the subject', 'the message', null, '-fwebmaster@example.com');
sendmail ... -ffoo@bar
A vérifier le spf (-all), et dmarc, pas vraiment enclin à faire du relais / relais par dessus, mais du simple relais.
--> oblige un minimum d'alignement mail from=return-path=header.from + option MTA (authentification oblige l'alignement du mail from) .
test partiel avec swaks type
swaks --server mail.riseup.net:587 --tls --ehlo abc.com -a LOGIN --to user@riseup.net --from user@riseup.net --auth-user user@riseup.net --auth-password secret --quit-after AUTH
Fais un test telnet/openssl s_client, (accès, latence, authentification, mail from, rcpt to, data etc ....).
openssl s_client -crlf -CApath /etc/ssl/certs -connect mail.riseup.net:587 -starttls smtp
Hors ligne
#6 Le 19/04/2023, à 17:01
- sputnick
Re : [RÉSOLU]:comment recevoir les mais de cron via msmtp
Salut,
bien vu LeoMajor, GG!
J'ai simplement ajouté
SHELL=/bin/bash
CRONARGS=-m/usr/bin/msmtp
MAILTO=wam@wam.fr
MAILFROM=wam@riseup.net # <----------------------------------- NEW
PATH=/home/wam/bin:/usr/local/bin:/usr/bin:/bin:/bin
Et ça passe nickel. Merci pour le boulevard. (Quand c'est plus gros qu'une piste).
https://doc.ubuntu-fr.org/msmtp#usage_en_crontab mis à jour pour crontab.
Dernière modification par sputnick (Le 19/04/2023, à 19:02)
On ne peut pas mettre d'array dans un string!
https://sputnick.fr/
Hors ligne