NAME

maps.conf - associates one email address with another


SYNOPSIS

/opt/pmx6/etc/maps.conf


DESCRIPTION

Address maps associate one email address with another, either to redirect notifications generated by PureMessage (such as Quarantine Digests), or for assigning one user's email preferences to other accounts for End User Web Interface usage. Address maps are processed from top to bottom. Within a map, if two mappings apply to a single address, the first mapping is used.

The default address maps (the Notifications Address Map and the Recipient Aliases Map) are implemented automatically; they are not explicitly implemented in the policy script.

The Notifications Address Map redirects PureMessage notifications (such as quarantine digests and virus notices) from the original message recipient to the recipient specified in the map. This map is accessible by editing the notifications file, located in the etc directory.

The Recipient Aliases Map replaces the original message recipient with another recipient for the purpose of applying user preferences (such as per-user whitelists and blacklists). This map is accessible by editing the recipient-aliases file, located in the etc directory. The recipient to whom the original message recipient's preferences have been assigned will also be able to view the original message recipient's email messages in the End User Web Interface (EUWI).

<map map_name>
The maps.conf configuration file describes the available predefined named maps to the PureMessage system. The file contains zero or more named map sections.
name
The map name.

description
Description of the map.

source
The source is prefixed by a URI-style scheme that selects what kind of source this is. The source can be one of the following:
file:
The items are read from the indicated file.

If the source field does not begin with a scheme part, it is treated as if it was prefixed with 'file:'.

dbi:
Look up matches from a SQL database.

perl:
Let a custom Perl module do the matching.

match_type
The following match types are supported:
is
Exact match.

contains
Substring match.

matches
Glob style matching that might be modified by a comparator. The wildcards are '*' (which matches any sequence of characters) and '?' (which matches a single character). A literal '*', '?' or '\' might be matched by escaping them with a backslash.

nmatches
Same as match, but map entries starting with '!' are treated as a negative rule. During matching, each string to be matched is considered separately. If it matches at least one of the positive rules, but none of the negative rules, then it is a match.

re
The entries of the map are Perl5 regular expressions. If the map entry starts with '!', then it is negated as for nmatches.

domain
Glob style domain and IPv4 address matching. Matching is always case insensitive.

If the list entry starts with a decimal number followed by '.' or '/', then it is considered an IP4 address with an optional mask. The format for an entry of this type is:

   <inet4>  = <ip> [ "/" <mask> ]
   <ip>     = <digits> "." <digits> "." <digits> "." <digits>
   <mask>   = <ip> | <bits>
   <digits> = integer in the range 0 .. 255
   <bits>   = integer in the range 0 .. 32

If the map entry does not start with a number, it is parsed as a glob style string that is matched against a domain name. The supported wildcards are:

   ?   match a single char, but not '.'
   *   match a sequence of chars, but not '.'.
   **  match a sequence of chars, including '.'

Matches are automatically anchored to the end of the string. A leading '@' can be used to force anchor to the beginning as well. If the map item starts with '!', then it is negated as for nmatches.

Some examples:

   127.0.0.1

Matches against the exact IP address.

   10.10.10.10/24

Matches IPs in the 10.10.10.0 range.

   example.com

This matches any hostname in the example.com domain as well as 'example.com' itself. It does not match 'notexample.com' or 'example.com.org'.

   **.example.com

Matches the same hostnames as above, but not 'example.com' itself.

   .example.com

Matches the same hostnames as above.

   *.example.com

Matches hosts like 'foo.example.com', but not multilevel names like 'foo.bar.example.com'.

   @example.com

Only matches the host 'example.com' and not any subdomains.

mail
Glob style email address matching. The wildcards are the same as for domain, but '@' is prevented from matching on '*' and '?'. Also, if the map entry ends with '@' then the match is no longer anchored at the end.

Some examples:

   example.com

Matches all addresses ending with a domain name of 'example.com' such as 'foo@example.com', 'foo@foo.example.com'.

   @example.com

Matches all addresses with 'example.com' as the exact domain part.

   dev-**@

Matches all addresses starting with the string 'dev-'.

   foo@perl.*

Matches all addresses with 'foo' as the local part and a two level domain name with 'perl' as the first level, like 'foo@perl.com' and 'foo@perl.org'.

   foo@perl.**

Matches all addresses with 'foo' as the local part and at least a two level domain name with 'perl' as the first level, like 'foo@perl.com' and 'foo@perl.domain.com'.

</map>


COPYRIGHT

Copyright (C) 2000-2008 Sophos Group. All rights reserved. Sophos and PureMessage are trademarks of Sophos Plc and Sophos Group.