Greetings,
I am running OpenBSD 6.6 GENERIC#3 amd64 and getting an
inexplicable 421 4.3.0 Temporary Error when using
sendmail with opensmtpd.
Here is my current mail setup:
Inside bnc3.ircnow.org, I have /etc/mail/smtpd.conf:
table aliases file:/etc/mail/aliases
table secrets file:/etc/mail/secrets
listen on lo0
action "local_mail" mbox alias
action "outbound" relay host smtp+tls://supp...@ircnow.org:587 \
auth
match for local action "local_mail"
match for any action "outbound"
Inside /etc/mail/secrets:
support supp...@ircnow.org:PASSWORD
I am using ircnow.org as a mail relay. Here is its
/etc/mail/smtpd.conf:
pki mail.ircnow.org cert "/etc/ssl/ircnow.org.fullchain.pem"
pki mail.ircnow.org key "/etc/ssl/private/ircnow.org.key"
# tables setup
table aliases file:/etc/mail/aliases
table domains file:/etc/mail/domains
table passwd passwd:/etc/mail/passwd
table virtuals file:/etc/mail/virtuals
table hosts file:/etc/mail/hosts
listen on lo0 mask-src
listen on lo0 port 10028 tag DKIM mask-src
listen on egress port 25 tls pki mail.ircnow.org mask-src
listen on egress port 587 tls-require pki mail.ircnow.org auth
mask-src
action "lmtp" lmtp "/var/dovecot/lmtp" rcpt-to virtual
action "relay" relay
action "relay_dkim" relay host smtp://127.0.0.1:10027
match from any for domain action "lmtp"
match tag DKIM for any action "relay"
match from src for any action "relay_dkim"
match auth from any for any action "relay_dkim"
On bnc3.ircnow.org, I run this command:
$ /usr/sbin/sendmail -tv -F support -f support < samplemail
samplemail contains this message:
From: support
To: u...@example.com
Subject: Welcome to IRCNow!
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Welcome to IRCNow!
When running the above command, I get this output:
<<< 220 bnc3.ircnow.org ESMTP OpenSMTPD
>>> EHLO localhost
<<< 250-bnc3.ircnow.org Hello localhost [local], pleased to meet you
<<< 250-8BITMIME
<<< 250-ENHANCEDSTATUSCODES
<<< 250-SIZE 36700160
<<< 250 HELP
>>> MAIL FROM:
<<< 421 4.3.0 Temporary Error
sendmail: command failed: 421 4.3.0 Temporary Error
On bnc3.ircnow.org, I see this in /var/log/maillog:
Jan 3 08:26:27 bnc3 smtpd[]: smtp disconnected reason=quit
Jan 3 08:38:36 bnc3 smtpd[]: smtp connected address=local host=bnc3.ircnow.org
Jan 3 08:38:36 bnc3 smtpd[]: smtp failed-command command="MAIL
FROM: " result="421 4.3.0 Temporary Error"
Jan 3 08:38:36 bnc3 smtpd[]: smtp disconnected reason=quit
The mail relay (ircnow.org) never even sees the email, since
bnc3.ircnow.org is not sending it. Instead, the mail is discarded.
I then tried running $ nc localhost 25:
220 bnc3.ircnow.org ESMTP OpenSMTPD
ehlo bnc3
250-bnc3.ircnow.org Hello bnc3 [127.0.0.1], pleased to meet you
250-8BITMIME
250-ENHANCEDSTATUSCODES
250-SIZE 36700160
250-DSN
250 HELP
mail from:
421 4.3.0 Temporary Error
About 50-70% of the time, I get the above message. Could opensmtpd
be greylisting sendmail from localhost?
I tried enabling debugging:
# smtpd -dv
Then, I attempt to use sendmail:
$ /usr/sbin/sendmail -tv -F support -f support < samplemail
mta delivery evpid= from= to=
rcpt=<-> source="209.141.50.204" relay="209.141.46.110 (mail.ircnow.org)"
delay=0s result="Ok" stat="250
2.0.0 Message accepted for delivery"
debug: mta: : no task for relay
[relay:ircnow.org,port=587,smtp+tls,auth=secrets:support,mx]
mta: debug: last connection: hanging on for 10s
debug: mta: flush for (-> u...@example.com)
debug: mta: ... timeout for
[relay:ircnow.org,port=587,smtp+tls,auth=secrets:support,mx]
debug: mta: draining
[relay:ircnow.org,port=587,smtp+tls,auth=secrets:support,mx] refcount=2,
ntask=0, nconnector=1, nconn=1
debug: mta: all done for
[relay:ircnow.org,port=587,smtp+tls,auth=secrets:support,mx]
smtp connected address=local host=bnc3.ircnow.org smtp failed-command
command="MAIL FROM: " result="421 4.3.0 Temporary
Error"
smtp disconnected reason=quit
debug: control -> client: pipe closed
debug: clearing p=client, fd=11, pid=0
mta: timeout for session hangon
I tried adding tracing:
# smtpd -dv -T all
Then calling:
$ /usr/sbin/sendmail -tv -F support -f support < samplemail
mproc: lka -> pony: enabled
debug: smtpd: scanning offline queue...
debug: smtpd: offli