On Fri, Oct 08, 2010 at 11:15:46AM -0400, Wietse Venema wrote:

> > > /etc/postfix/main.cf:
> > >      transport_maps = mapping from example.com to smtp:mailhub.example.com
> > >      relay_domains = example.com
> > >      virtual_alias_maps =
> > >   mappings from external-u...@example.com to internal-user(s)@example.com
> > >
> > > Unless I am missing something obvious (in which case Victor will
> > > helpfully point out what's missing).
> 
> The only problem I see is that this would accept mail for non-existent
> recipients, so you still need to specify relay_recipient_maps but the
> table can be empty. The recipient address validation is then done by
> virtual_alias_maps.
> 
> /etc/postfix/main.cf:
>      transport_maps = mapping from example.com to smtp:mailhub.example.com
>      relay_domains = example.com
>      relay_recipient_maps = 
>       some table that can be empty.
>      virtual_alias_maps =
>       mappings from external-u...@example.com to internal-user(s)@example.com

I avoid the need for such empty relay tables, by making all my
externally-facing domains (the domains in which users get their
primary email addresses) be virtual alias domains. All internal
delivery is to "mailbox" domains that are the result of virtual
alias rewrites:

    main.cf:
        virtual_alias_domains = example.com

        indexed = ${default_database_type}:${config_directory}/
        virtual_alias_maps = ${indexed}virtual
        transport_maps = ${indexed}transport

    virtual:
        u...@example.com        u...@mbox-domain.example.com

    transport:
        # Mbox domain has MX hosts:
        mbox-domain.example.com         mbox-domain.example.com

        # Mbox domain has a gateway:
        # mbox-domain.example.com       [mbox-domain.example.com]

-- 
        Viktor.

Reply via email to