TRIVIAL-REWRITE(8) TRIVIAL-REWRITE(8)
NAME
trivial-rewrite - Postfix address rewriting and resolving
daemon
SYNOPSIS
trivial-rewrite [generic Postfix daemon options]
DESCRIPTION
The trivial-rewrite daemon processes two types of client
service requests:
rewrite
Rewrite an address to standard form. The trivial-
rewrite daemon by default appends local domain
information to unqualified addresses, swaps bang
paths to domain form, and strips source routing
information. This process is under control of sev-
eral configuration parameters (see below).
resolve
Resolve an address to a (transport, nexthop, recip-
ient) triple. The meaning of the results is as fol-
lows:
transport
The delivery agent to use. This is the first
field of an entry in the master.cf file.
nexthop
The host to send to and optional delivery
method information.
recipient
The envelope recipient address that is
passed on to nexthop.
DEFAULT DELIVERY METHODS
By default, Postfix uses one of the following delivery
methods. This may be overruled with the optional trans-
port(5) table. The default delivery method is selected by
matching the recipient address domain against one of the
following:
$mydestination
$inet_interfaces
The transport and optional nexthop are specified
with $local_transport. The default nexthop is the
recipient domain.
$virtual_alias_domains
The recipient address is undeliverable (user
unknown). By definition, all known addresses in a
virtual alias domain are aliased to other
addresses.
$virtual_mailbox_domains
The transport and optional nexthop are specified
with $virtual_transport. The default nexthop is
the recipient domain.
$relay_domains
The transport and optional nexthop are specified
with $relay_transport. This overrides the optional
nexthop information that is specified with $relay-
host. The default nexthop is the recipient domain.
none of the above
The transport and optional nexthop are specified
with $default_transport. This overrides the
optional nexthop information that is specified with
$relayhost. The default nexthop is the recipient
domain.
SERVER PROCESS MANAGEMENT
The trivial-rewrite servers run under control by the Post-
fix master server. Each server can handle multiple simul-
taneous connections. When all servers are busy while a
client connects, the master creates a new server process,
provided that the trivial-rewrite server process limit is
not exceeded. Each trivial-rewrite server terminates
after serving at least $max_use clients of after $max_idle
seconds of idle time.
STANDARDS
None. The command does not interact with the outside
world.
SECURITY
The trivial-rewrite daemon is not security sensitive. By
default, this daemon does not talk to remote or local
users. It can run at a fixed low privilege in a chrooted
environment.
DIAGNOSTICS
Problems and transactions are logged to syslogd(8).
BUGS
CONFIGURATION PARAMETERS
The following main.cf parameters are especially relevant
to this program. See the Postfix main.cf file for syntax
details and for default values. Use the postfix reload
command after a configuration change.
Miscellaneous
empty_address_recipient
The recipient that is substituted for the null
address.
inet_interfaces
The network interfaces that this mail system
receives mail on. This information is used to
determine if user@[net.work.addr.ess] is local or
remote. Mail for local users is given to the
$local_transport.
mydestination
List of domains that are given to the $local_trans-
port.
virtual_alias_domains
List of simulated virtual domains (domains with all
recipients aliased to some other local or remote
domain).
virtual_mailbox_domains
List of domains that are given to the $vir-
tual_transport.
relay_domains
List of domains that are given to the $relay_trans-
port.
resolve_unquoted_address
When resolving an address, do not quote the address
localpart as per RFC 822, so that additional @, %
or ! characters remain visible. This is techni-
cally incorrect, but allows us to stop relay
attacks when forwarding mail to a Sendmail primary
MX host.
relocated_maps
Tables with contact information for users, hosts or
domains that no longer exist. See relocated(5).
Rewriting
myorigin
The domain that locally-posted mail appears to come
from.
allow_percent_hack
Rewrite user%domain to user@domain.
append_at_myorigin
Rewrite user to user@$myorigin.
append_dot_mydomain
Rewrite user@host to user@host.$mydomain.
swap_bangpath
Rewrite site!user to user@site.
Routing
local_transport
Where to deliver mail for destinations that match
$mydestination or $inet_interfaces. The default
transport is local:$myhostname.
Syntax is transport:nexthop; see transport(5) for
details. The :nexthop part is optional.
virtual_transport
Where to deliver mail for non-local domains that
match $virtual_mailbox_domains. The default trans-
port is virtual.
Syntax is transport:nexthop; see transport(5) for
details. The :nexthop part is optional.
relay_transport
Where to deliver mail for non-local domains that
match $relay_domains. The default transport is
relay (which normally is a clone of the smtp trans-
port).
Syntax is transport:nexthop; see transport(5) for
details. The :nexthop part is optional.
default_transport
Where to deliver all other non-local mail. The
default transport is smtp.
Syntax is transport:nexthop; see transport(5) for
details. The :nexthop part is optional.
parent_domain_matches_subdomains
List of Postfix features that use domain.tld pat-
terns to match sub.domain.tld (as opposed to
requiring .domain.tld patterns).
relayhost
The default host to send non-local mail to when no
host is specified with $relay_transport or
$default_transport, and when the recipient address
does not match the optional the transport(5) table.
transport_maps
List of tables with recipient or domain to (trans-
port, nexthop) mappings.
SEE ALSO
master(8) process manager
syslogd(8) system logging
transport(5) transport table format
relocated(5) format of the "user has moved" table
LICENSE
The Secure Mailer license must be distributed with this
software.
AUTHOR(S)
Wietse Venema
IBM T.J. Watson Research
P.O. Box 704
Yorktown Heights, NY 10598, USA
TRIVIAL-REWRITE(8)