On Fri, Jan 08, 2010 at 02:33:37PM -0500, Christopher Hackman wrote:
> Is it possible to customize the following error message?
>
> MAIL FROM: <[email protected]>
> 250 2.1.0 Ok
> RCPT TO: <[email protected]>
> 550 5.1.1 <[email protected]>: Recipient address
> rejected: virtualdomain.com
>
> In this sanitized example, "virtualdomain.com" is just that, as is
> "invalidaccount". I see "unknown_virtual_mailbox_reject_code" will
> let me change the response code, but not the text.
Right. A fairly straightforward (not simple, but doable) workaround
is to implement a check_recipient_access lookup against your list of
valid addresses. Your virtual_mailbox_maps query will not work as is,
but a little bit of SQL/LDAP magic or a simple policy service could
do it. Pseudocode:
if domain matches virtual_mailbox_domains:
if u...@domain is found in virtual_mailbox_maps: return DUNNO
else: return 550 5.1.1 <u...@domain> Your-custom-reject-text
endif
endif
(repeat for other address classes in use)
Perhaps one of the existing publically available policy servers can
already do this, I don't know. Is this really worth the trouble? I
would think not, but if you still want to do it, check out these
references:
Access controls:
http://www.postfix.org/SMTPD_ACCESS_README.html
http://www.postfix.org/access.5.html
SQL or LDAP interaction:
http://www.postfix.org/MYSQL_README.html
http://www.postfix.org/mysql_table.5.html
http://www.postfix.org/PGSQL_README.html
http://www.postfix.org/pgsql_table.5.html
http://www.postfix.org/LDAP_README.html
http://www.postfix.org/ldap_table.5.html
Policy service protocol:
http://www.postfix.org/SMTPD_POLICY_README.html
and see this for links to existing policy server projects:
http://www.postfix.org/addon.html#policy
--
Offlist mail to this address is discarded unless
"/dev/rob0" or "not-spam" is in Subject: header