On 3/20/2019 6:53 AM, Otto Kekäläinen wrote:
1. Try adding "unknown_address_reject_code = 553" in main.cf. This is a
wise choice in any case.
2. Use a better mail client which handles multiple recipient mail more
robustly.
Thanks for the pointers!
I added the 553 reject code, but unfortunately it does not seem to help.
My client is msmtp and the SMTP session looks like this:
cat mail.txt | msmtp -a default -X mail.log --debug -t
<-- 220 REDACTED ESMTP Postfix (Ubuntu)
--> EHLO localhost
<-- 250-REDACTED
<-- 250-PIPELINING
<-- 250-SIZE 10240000
<-- 250-VRFY
<-- 250-ETRN
<-- 250-STARTTLS
<-- 250-ENHANCEDSTATUSCODES
<-- 250-8BITMIME
<-- 250 DSN
--> MAIL FROM:<REDACTED>
--> RCPT TO:<o...@linux.com>
--> RCPT TO:<REDACTED>
--> DATA
<-- 250 2.1.0 Ok
<-- 250 2.1.5 Ok
<-- 553 5.1.2 <REDACTED>: Recipient address rejected: Domain not found
msmtp: recipient address REDACTED not accepted by the server
msmtp: server message: 553 5.1.2 <REDACTED>: Recipient address
rejected: Domain not found
msmtp: could not send mail (account default from /etc/msmtprc)
So if the blame is on the client, what replacements for msmtp do you recommend?
The few smtp command line clients I know of all fail on a rejected
recipient. This is probably appropriate for an interactive command,
to give immediate feedback. Same thing with desktop clients such as
Thunderbird. But none of them seem to have an option to ignore
errors, which is a shortcoming.
"Real" SMTP MTAs will continue with the next recipient.
Probably your best bet is to find a [perl, java, php, etc.] smtp
script and hack it to continue with the next recipient when one is
rejected, which shouldn't be too hard.
-- Noel Jones