nc -Uv sala.online.lt /var/cyrus/socket/lmtp shows no errors.

This does not seem to be a LMTP or Cyrus fault: Thunderbird, Pegasus Mail, POP 
Peeper, Nextcloud Mail (Horde) read old and new email smoothly, but Cyrus gets 
emails sent to the sole address user@domain, no alias (root, postmaster, info, 
etc.):

> mda delivery evpid=… from=<noreply-dm...@zoho.com> to=<dm...@on.lt> 
> rcpt=<dm...@on.lt> user=uolys delay=… result=TempFail stat=Error 
(temporary failure: "")
> mda delivery evpid=… from=<vla...@on.lt> to=<postmas...@on.lt> 
> rcpt=<postmas...@on.lt> user=uolys delay=… result=TempFail stat=Error 
(temporary failure: "")
> mda delivery evpid=… from=<r...@sala.online.lt> to=<r...@sala.online.lt> 
> rcpt=<r...@sala.online.lt> user=uolys delay=… 
result=TempFail stat=Error (temporary failure: "")

Sala.online.lt is a real hostname here for my SMTP and IMAP. Where On.lt 
and some other domains (virtual hosts) are hosted. Uolys is my username 
here, and Vladas is my real name. OpenSMTPd accepts incoming mail and 
sends it to remote MX servers properly, in the right order (smtp to mda 
or smtp to mta). 
 
Why local aliases do not work? And how does MDA of OpenSMTPd decide to 
deliver email to my real name, which is disabled from Sendmail alias 
list (to avoid routing loop)?

> root: uolys 
> postmaster: uolys 
> dmarc: uolys 
> info: uolys 
> … 
> vladas: uolys 
> # uolys: vla...@on.lt

Interestingly, MDA reads the alias table and picks the recipient 
correctly (user=uolys). 
 
I had found a seemingly logical way to expand alias before LMTP passes 
email to the Cyrus dispatcher: 
 
> match for rcpt-to <aliases> action "cyrus" 

“Configuration OK”, but email is not delivered by any of these options: 
 
> action "cyrus" lmtp "/var/cyrus/socket/lmtp" 
> action "cyrus" lmtp "/var/cyrus/socket/lmtp" virtual <virtuals> 
> action "cyrus" lmtp "/var/cyrus/socket/lmtp" rcpt-to virtual <virtuals> 
> action "cyrus" lmtp "/var/cyrus/socket/lmtp" rcpt-to alias <aliases> 
> action "cyrus" lmtp "/var/cyrus/socket/lmtp" alias <aliases>

Where <virtuals> are just a list of a few real user: name@domain 
(disabled in alias table).

The configuration (smtpd.conf 
<https://man.freebsd.org/cgi/man.cgi?query=smtpd.conf&sektion=5>) of the 
current semi-functional mail 
server is as follows: 
 
> listen on 0.0.0.0 
> listen on :: 
>  
> pki sala key "*/usr/home/vlap/*.acme.sh/sala.online.lt/sala.key" 
> pki sala cert "*/usr/home/vlap/*.acme.sh/sala.online.lt/sala.cert" 
> ca zero cert "*/usr/home/vlap/*.acme.sh/sala.online.lt/ca-zero.cert" 
>  
> table aliases file:/etc/mail/aliases
> table virtuals file:/etc/mail/virtusername
> table domains file:/etc/mail/local-host-names
> table mxa file:/etc/mail/mailname
> table ip file:/etc/mail/relay-ip
>  
> action "relay" relay
> action "cyrus" lmtp "/var/cyrus/socket/lmtp" rcpt-to alias <aliases> 
> 
> match from local !for local action "relay" 
> match from src <ip> !for domain <domains> action "relay" 
> match !from src <ip> mail-from "@on.lt" for any reject
> match !from local !for domain <domains> reject
> match !from local for domain <domains> action "cyrus" 
> match from local for local action "cyrus" 

Where to find a configuration example for the most widely applicable 
best-of-breed SMTP with IMAP servers (OpenSMTPd with Cyrus)? 
 
It is a pity to leave such a slim and clean OpenSMTPd, even though I 
have thoroughly read all the manuals several times and tried various 
options many times. Excluding "reject" and "relay" actions, and even 
disabling the general PF direwall. The snag should be in some overlooked 
little thing. 
 
-- 
Vladas Palubinskas 
vla...@on.lt 
https://vladas.palubinskas.lt/
------------------------------------------
Cyrus: Info
Permalink: 
https://cyrus.topicbox.com/groups/info/T2b653f470e334203-M2929eddb8af181e43eb85361
Delivery options: https://cyrus.topicbox.com/groups/info/subscription

Reply via email to