Hi,

I am currently slightly confused by the interaction between
recipient_delimiter and virtual_alias_maps. I have a test setup with

recipient_delimiter = +
virtual_alias_maps = hash:/etc/postfix/virtual
virtual_transport = lmtp:unix:private/dovecot-lmtp

a virtual domain "domain" and an alias

alias@domain real@domain

and I reject_unverified_recipients

The strange thing is:

If postfix receives a mail for real@domain, it delivers it to dovecot
user real@domain.
If postfix receives a mail for real+foo@domain, it delivers it to
dovecot user real@domain.
If postfix receives a mail for alias@domain, it delivers it to dovecot
user real@domain.
If postfix receives a mail for alias+foo@domain, recipient verification
fails with: [private/dovecot-lmtp] said: 550 5.1.1 <alias+foo@domain>
User doesn't exist: alias@domain (in reply to RCPT TO command).

Is the last one expected behavior?

This is with the debian buster version 3.4.14-0+deb10u1 of postfix.

Regard, Florian.

# postconf -n # sorry for stupid thunderbird linebreaks
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
delay_warning_time = 2h
inet_interfaces = all
inet_protocols = all
luser_relay = florian
mailbox_size_limit = 0
message_size_limit = 50000000
milter_connect_macros = j {daemon_name} v {if_name} _
mydestination = mail, mail.domain, localhost
myhostname = mail.domain
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = /etc/mailname
readme_directory = no
recipient_delimiter = +
relayhost =
smtp_address_preference = ipv4
smtp_body_checks = pcre:/etc/postfix/smtp_body_checks
smtp_sasl_type = dovecot
smtp_tls_CApath = /etc/ssl/certs
smtp_tls_cert_file = /etc/ssl/certs/server.pem
smtp_tls_key_file = /etc/ssl/private/server.key
smtp_tls_loglevel = 2
smtp_tls_security_level = encrypt
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks, reject_invalid_helo_hostname
smtpd_milters = unix:spamass/spamass.sock
smtpd_recipient_restrictions = permit_mynetworks,
permit_sasl_authenticated, reject_unauth_destination,
reject_unknown_helo_hostname, reject_unknown_reverse_client_hostname,
reject_unknown_sender_domain, reject_rbl_client zen.spamhaus.org,
reject_rhsbl_reverse_client dbl.spamhaus.org, reject_rhsbl_helo
dbl.spamhaus.org, reject_rhsbl_sender dbl.spamhaus.org,
reject_unverified_recipient
smtpd_relay_restrictions = permit_mynetworks, permit_sasl_authenticated,
reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = private/auth
smtpd_sender_restrictions = permit_mynetworks, reject_non_fqdn_sender
smtpd_tls_CApath = /etc/ssl/certs
smtpd_tls_cert_file = /etc/ssl/certs/server.pem
smtpd_tls_key_file = /etc/ssl/private/server.key
smtpd_tls_loglevel = 2
smtpd_tls_security_level = may
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtpd_use_tls = yes
virtual_alias_maps = hash:/etc/postfix/virtual
virtual_mailbox_domains = domain domain2
virtual_mailbox_limit = 0
virtual_transport = lmtp:unix:private/dovecot-lmtp

Reply via email to