Next Previous Contents

2. Junk mail controls

Header checks

The "Header checks" option restricts what may appear in message headers. This requires that POSIX or PCRE regular expression support is built-in. Specify "/^header-name: stuff you do not want/ REJECT" in the pattern file. Patterns are case-insensitive by default. Note: specify only patterns ending in REJECT. Patterns ending in OK are mostly a waste of cycles. This option sets the "header_checks" postfix variable.

Body checks

The "Body checks" option specifies an optional table with patterns that each physical non-header line is matched against (including MIME headers inside the message body). Lines are matched one at a time. Long lines are matched in chunks of at most $line_length_limit characters. Patterns are matched in the specified order, and the search stops upon the first match. When a pattern matches, and the associated action is REJECT, the entire message is rejected. This option sets the "body_checks" postfix variable.


The "Networks" option specifies the list of networks that are local to this machine. The list is used by the anti-UCE software to distinguish local clients from strangers. See permit_mynetworks and smtpd_recipient_restrictions in the file file.

The default is a list of all networks attached to the machine: a complete class A network (X.0.0.0/8), a complete class B network (X.X.0.0/16), and so on. If you want stricter control, specify a list of network/mask patterns, where the mask specifies the number of bits in the network part of a host address. You can also specify the absolute pathname of a pattern file instead of listing the patterns here. This option sets the "mynetworks" postfix variable.

Next Previous Contents