0

I'm setting up a ubuntu VPS and have postfix partially working. I configured it to use virtual settings to that I don't need to create a new unix user for each mailbox user I want. Thunderbird can check the inbox and send mail correctly. However, when I try to send mail from an external account (e.g. mymail@gmail.com) to an account at mydomain.com, it gets bounced. I've read through the 5 or 6 other posts that saw similar behavior but couldn't find a solution. Attaching are the relevant logs. I've spent two days on this and I would appreciate all help!

mail postfix/smtpd[47880]: disconnect from mail-wm1-x32e.google.com[2a00:1450:4864:20::32e] ehlo=2 starttls=1 mail=1 rcpt=1 bdat=1 quit=1 commands=7
mail postfix/error[47881]: B38EB849B2: to=<myuser@mydomain.com>, relay=none, delay=0.12, delays=0.11/0.01/0/0.01, dsn=5.1.1, status=bounced (User unknown in virtual alias table)

main.cf

smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
biff = no
append_dot_mydomain = no
readme_directory = no
compatibility_level = 3.6
smtpd_tls_cert_file = /etc/letsencrypt/live/mydomain.com-0001/fullchain.pem
smtpd_tls_key_file = /etc/letsencrypt/live/mydomain.com-0001/privkey.pem
smtpd_tls_security_level=may
smtpd_tls_loglevel = 1
smtpd_tls_session_cache_database = btree:${data_directory}/smtpd_scache
smtp_tls_CApath=/etc/ssl/certs
smtp_tls_security_level=may
smtp_tls_session_cache_database = btree:${data_directory}/smtp_scache
smtp_tls_loglevel = 1
smtpd_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtpd_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_mandatory_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtp_tls_protocols = !SSLv2, !SSLv3, !TLSv1, !TLSv1.1
smtpd_use_tls=yes
smtpd_relay_restrictions = permit_mynetworks,permit_sasl_authenticated,defer_unauth_destination
myhostname = mail.mydomain.com
mydomain = mydomain.com
mydestination = $myhostname, localhost.$mydomain, localhost
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
relayhost = 
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128 [fe80::]/64
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
inet_protocols = all
milter_default_action = accept
milter_protocol = 2
smtpd_milters = inet:localhost:8891,local:opendmarc/opendmarc.sock
non_smtpd_milters = $smtpd_milters
policyd-spf_time_limit = 3600
mailbox_transport = lmtp:unix:private/dovecot-lmtp
smtputf8_enable = no
virtual_mailbox_domains = proxy:mysql:/etc/postfix/sql/mysql_virtual_domain_maps.cf
virtual_mailbox_maps =
  proxy:mysql:/etc/postfix/sql/mysql_virtual_mailbox_maps.cf,
  proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_mailbox_maps.cf
virtual_alias_maps =
  proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_maps.cf,
  proxy:mysql:/etc/postfix/sql/mysql_virtual_domain_maps.cf,
  proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_domain_catchall_maps.cf
virtual_transport = lmtp:unix:private/dovecot-lmtp
  # hash:/etc/postfix/virtual
 virtual_mailbox_base = /var/vmail
 virtual_minimum_uid = 2000
 virtual_uid_maps = static:2000
 virtual_gid_maps = static:2000

master.cf

smtp      inet  n       -       y       -       -       smtpd
smtpd     pass  -       -       y       -       -       smtpd
smtps     inet  n       -       y       -       -       smtpd
submission inet n       -       y       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_tls_wrappermode=no
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
  -o smtpd_recipient_restrictions=permit_mynetworks,permit_sasl_authenticated,reject
  -o smtpd_sasl_type=dovecot
  -o smtpd_sasl_path=private/auth
  -o smtpd_tls_auth_only=yes
pickup    unix  n       -       y       60      1       pickup
cleanup   unix  n       -       y       -       0       cleanup
qmgr      unix  n       -       n       300     1       qmgr
#qmgr     unix  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       y       1000?   1       tlsmgr
rewrite   unix  -       -       y       -       -       trivial-rewrite
bounce    unix  -       -       y       -       0       bounce
defer     unix  -       -       y       -       0       bounce
trace     unix  -       -       y       -       0       bounce
verify    unix  -       -       y       -       1       verify
flush     unix  n       -       y       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       y       -       -       smtp
relay     unix  -       -       y       -       -       smtp
        -o syslog_name=postfix/$service_name
showq     unix  n       -       y       -       -       showq
error     unix  -       -       y       -       -       error
retry     unix  -       -       y       -       -       error
discard   unix  -       -       y       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       y       -       -       lmtp
anvil     unix  -       -       y       -       1       anvil
scache    unix  -       -       y       -       1       scache
postlog   unix-dgram n  -       n       -       1       postlogd

uucp unix - n n - - pipe flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient) policyd-spf unix - n n - 0 spawn user=policyd-spf argv=/usr/bin/policyd-spf

also when I test with postmap it is finding the user's mailbox:

/root# postmap -q myuser@mydomain.com proxy:mysql:/etc/postfix/sql/mysql_virtual_alias_maps.cf
myuser@mydomain.com 

SOLVED: I needed to add: virtual_alias_domains = (set to nothing) in my main.cf. Hope that helps someone else.

MTW613
  • 1

0 Answers0