|MAKEMAP(8)||System Manager's Manual||MAKEMAP(8)|
makemapitself creates the database maps used by keyed map lookups specified in smtpd.conf(5).
makemap reads input from
file and writes data to a file whose name is made by
adding a “.db” suffix to file. The
current line can be extended over multiple lines using a backslash
(‘\’). Comments can be put anywhere in the file using a hash
mark (‘#’), and extend to the end of the current line. Care
should be taken when commenting out multi-line text: the comment is
effective until the end of the entire block. In all cases,
makemap reads lines consisting of words separated by
whitespace. The first word of a line is the database key; the remainder
represents the mapped value. The database key and value may optionally be
separated by the colon character.
The options are as follows:
In addition to adding an entry to the primary domain map, one must add a filter rule that accepts mail for the domain map, for example:
table domains db:/etc/mail/domains.db action "local" mbox match for domain <domains> action "local"
Virtual domains expect a mapping of virtual users to real users in order to determine if a recipient is accepted or not. The mapping format is an extension to aliases(5), which allows the use of “firstname.lastname@example.org” to accept user only on the specified domain, “user” to accept the user for any of the virtual domains, “@domain.tld” to provide a catch-all for the specified domain and “@” to provide a global catch-all for all domains. smtpd(8) will perform the lookups in that specific order.
To create single virtual address, add “email@example.com user” to the users map. To handle all mail destined to any user at example.com, add “@example.com user” to the virtual map.
In addition to adding an entry to the virtual map, one must add a filter rule that accepts mail for virtual domains, for example:
table vdomains db:/etc/mail/vdomains.db table vusers db:/etc/mail/users.db action "local" mbox virtual <vusers> match for domain <vdomains> action "local" match for domain "example.org" action "local"
makemaputility exits 0 on success, and >0 if an error occurs.
makemapcommand first appeared in OpenBSD 4.6 as a replacement for the equivalent command shipped with sendmail.
|November 25, 2018||OpenBSD-current|