> Welcome! Please update anything in the wiki that appeared to be
> inaccurate, and add any helpful information you learned along the way. It
> is greatly appreciated!
>
> On Fri, 9 Oct 2009 21:15:10 +0200 (CEST), Rene Bartsch <[email protected]>
> wrote:
>> Hi,
>>
>> having a lot of trouble with getting Postfix, MySQL and DBMail running I
>> had a little chit-chat
>> with Brian Evans and Wietse Venema on the Postfix-ML.
>
> What kind of trouble?

Postfix didn't relay mails TO the internet anymore.
("550 5.1.1 $recipient: Recipient address rejected: User unknown in virtual 
mailbox table")

>> "mailbox_transport" and "local_recipient_maps" belong to the local
> domain
>> class which is only for
>> delivering to local UNIX accounts! Using them for external MDAs can have
>> unpredictable
>> side-effects!
>
> What kind of side effects?

It seems to use other queues. So mail can be stuck, rejected or maybe loop?
Just ask Wietse Venema about the depths of Postfix. ;)

>> Instead, use the virtual mailbox domain class!
>>
>> example:
>>
>> ## Virtual mailbox domain class: DBmail MDA
>> virtual_transport       = dbmail-lmtp:<hostname/ip>:<port>
>> virtual_mailbox_domains =
> mysql:/etc/postfix/sql-virtual_mailbox_domains.cf
>> virtual_mailbox_maps    = mysql:/etc/postfix/sql-virtual_mailbox_maps.cf
>
> Huh, ok. I'm also using the local variation. I'll try these virtual
> options on my system.

I used it for years, too. But after changing the machine/distro it didn't work 
any more ...

>> Additionally, the SQL-queries MUST NOT return any value from the
> database.
>> When
>> "mysql:/etc/postfix/sql-virtual_mailbox_domains.cf" returns one domain
> or
>> the list of domains,
>> Postfix cannot relay mail to the internet anymore! Instead return "1" if
> a
>> value exists in the
>> database or a empty set if it doesn't exists!
>
> Where does it say this in the postfix docs?

http://www.postfix.org/DATABASE_README.html#lists

and

http://www.postfix.org/mysql_table.5.html (see "List Membership")

>> examples:
>>
>> /etc/postfix/sql-virtual_mailbox_maps.cf:
>>
>> user     = <MySQL-username>
>> password = <MySQL-password>
>> hosts    = <MySQL-host>
>> dbname   = <MySQL-database>
>> query    = SELECT 1 FROM dbmail_aliases WHERE alias='%s';
>>
>>
>> sql-virtual_mailbox_domains.cf:
>>
>> user     = <MySQL-username>
>> password = <MySQL-password>
>> hosts    = <MySQL-host>
>> dbname   = <MySQL-database>
>> query    = SELECT DISTINCT 1 FROM dbmail_aliases WHERE
>> SUBSTRING_INDEX(alias, '@', -1) = '%s';
>>
>> (If you use aliases for the email-addresses and simple usernames you do
>> not need to query
>> dbmail_users. In case you use email-addresses as usernames you need to
> add
>> dbmail_users to the
>> query.)
>
> Adding more recipes to the wiki is welcomed.

I'll do! ;)

Renne


_______________________________________________
DBmail mailing list
[email protected]
http://mailman.fastxs.nl/cgi-bin/mailman/listinfo/dbmail

Reply via email to