I have multiple domains hosted on Alabanza.com-hosted servers (I'm a reseller)
and their control
panel system doesn't seem to offer a way to produce normal "Unknown user"
bounces when someone
sends mail to an undefined (no POP or alias) address. The options they provide
are to define a
"catch all" address in the "Mail Manager" section of their "Control Panel" or
to "Bounce Default
Email," but their idea of "bouncing" is to have procmail tell sendmail the
following (I've replace
the actual domain name):
* $RECIP ?? ^^(_dot_)*(_at_)$DOMAIN
{
:0h
* !^FROM_DAEMON
* !^X-Loop: default(_at_)domainname(_dot_)ext
|(formail -rtk -A"X-Loop: default(_at_)domainname(_dot_)ext"
-A"Precedence: junk"; \
echo "This is an autoresponder. I'll never see your message." ) |
$SENDMAIL -f$RECIP -t
}
So, if someone sends a message to <badaddress(_at_)domainname(_dot_)ext>, their
system responds with something
like this:
From: badaddress(_at_)domainname(_dot_)ext
To: (address-who-sent-the-message-to "badaddress")
Subject: Re: the original subject
This is an autoresponder. I'll never see your message.
----------
The only customization offered in the Control Panel is to customize the text of
the body of the
autoresponse. I've *never* seen a system that responds in this manner and I
don't like it. So,
after looking around a bit, I found this recipe:
:0
* $RECIP ?? ^^(_dot_)*(_at_)$DOMAIN
{
EXITCODE = 67
HOST
}
I can replace their "bounce" recipe in the "~/domainname-mail/.procmailrc" file
with that one and
then the system sends out an actual "505 Unknown user" message from the
MAILER-DAEMON of the host
server. I realize this also isn't ideal (especially when it responds to spam),
but it's FAR more
standard than their solution. HOWEVER, the customized procmail recipe can't be
made to "stick" in
the ".procmailrc" file because each time a new mail address/alias/list, etc. is
created, deleted,
or modified using the Control Panel, the system recreates the ".procmailrc"
file using the values
from the Control Panel, putting their silly bounce recipe back at the end of
the file.
They offer another possible solution...an "INCLUDE" call to an external config
file named
".rc.local.init" -- it appears at the top of the ".procmailrc" file like this:
DOMAIN=(domainname.ext)
INCLUDERC=.rc.local.init
But if I put the recipe above (the one with the EXITCODE) into that file, it
gets seen before all
the other recipies and it bounces ALL addresses as "unknown." There's another
".procmailrc" file in
the primary login directory for the domain, with contents like this:
RECIP=$1
MAILDIR=$HOME/domainname-mail
INCLUDERC=.procmailrc
I can edit that file, and the "$HOME/domainname-mail/.rc.local.init" file and
my changes won't get
blown away, but I have no idea how to set things up so that procmail will route
messages to valid
addresses, and bounce all other addresses, given this setup...perhaps it's not
possible. The tech
support personnel of my hosting provider are stumped....they suggest that I use
another option that
will send all default mail to "/dev/null" but the sites involved would prefer
to bounce incorrect
addresses, so that senders who make a simple typo will know that their messages
have not been
received. I'm aware that using a LDA like procmail to do the bouncing is too
late in the process,
but am doubtful that given that we're on a Linux/Apache virtual hosting box
with automated hosting
software, that there will be any options available to me to have the bad
addresses bounces during
the SMTP sessions.
Any suggestions? (other than "find a new host") :-)
Peace,
David Topping
procmail(_at_)choralnet(_dot_)org
(using my "catch all" to receive at that address...)
_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail