5

I am using Postfix and when I try to send an email to a virtual address ([email protected]), it is not able to find the user:

Aug  7 11:55:32 example postfix/local[24435]: AE54C808E546: to=<[email protected]>, relay=local, delay=6.6, delays=4.8/0.47/0/1.4, dsn=5.1.1, status=bounced (unknown user: "paradise")

I am using the following virtual map:

[email protected] horus
@example.org horus

Where horus is my (non-root) Unix user. If I try to verify the virtual addres by doing:

postmap -q [email protected] hash:/etc/postfix/virtual

It returns my current user:

horus

Because of that, I am not sure why is not able to find [email protected] or paradise.

alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
append_dot_mydomain = no
biff = no
config_directory = /etc/postfix
home_mailbox = Maildir/
inet_interfaces = all
inet_protocols = ipv4
mailbox_size_limit = 0
milter_default_action = accept
milter_protocol = 2
mydestination = example.org,localhost
myhostname = example.org
mynetworks = 127.0.0.0/8 [::ffff:127.0.0.0]/104 [::1]/128
myorigin = example.org
readme_directory = no
receive_override_options = no_address_mappings
recipient_delimiter = +
relayhost =
virtual_alias_maps = hash:/etc/postfix/virtual

And my /etc/aliases (but as far as I know, it is used only for local delivery) is:

...
www:            webmaster
webmaster:      root
noc:            root
security:       root
hostmaster:     root
info:           postmaster
marketing:      postmaster
sales:          postmaster
support:        postmaster


# trap decode to catch security attacks
decode:         root

# Person who should get root's mail
root:           horus

The database seems to be okay:

db_dump /etc/postfix/virtual.db -p

VERSION=3
format=print
type=hash
h_nelem=4098
db_pagesize=4096
HEADER=END
[email protected]\00
horus\00
@example.org\00
horus\00
DATA=END

What is wrong with the configuration?

2 Answers 2

4

If you want to use virtual_alias_maps to deliver mail, you must also tell Postfix which domains it should consult the map for, with the virtual_alias_domains directive. This can be a plain list of domains, or it can also be one of the map types Postfix supports.

virtual_alias_domains = example.org

will get you going, and you can put in a map or whatever you want later.

See also the Postfix documentation on virtual hosting.

2

Did you run:

postmap /etc/postfix/virtual
postfix reload
1
  • Yes, and /etc/postfix/virtual.db exists.
    – Cod1ngFree
    Aug 7, 2018 at 11:14

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .