I am using SME as a 'email proxy' -- using the delegate function, it processes mail and sends it on to my Exchange (ugghh!) server.
I have only 15 users, and that list almost never changes. I'm looking for a simple (noobie) way to reject mail early in the SMTP Conversation (not accepting it into the server) for any incoming mail that is not addressed to one of my 15 valid users.
SME 7.1 does this automatically - you don't even need to tell it about the 15 users. All you need to do is this:
- Configure the domain of the Exchange server into the SME Server
- Configure the address of the Exchange server as the "Address of the internal mail server"
- Configure the Exchange server to reject mail for unknown users
The check_smtp_forward plugin is automatically enabled when you configure an internal mail server. Here's the plugin doco:
=head1 NAME
check_smtp_forward
=head1 DESCRIPTION
This plugin checks whether SMTP forwarding would be allowed for this
recipient by connecting to the internal mail server.
If the internal mail server rejects the mail, we DENY it.
If the internal mail server would accept the mail, we DECLINE.
If the internal mail server cannot be contacted, we DENYSOFT.
=head1 CONFIG
Reads smtproutes to determine where to send mail for various domains.
Ignores any default smtproutes entries as they are for upstream mail
servers (e.g. ISP).
=head1 AUTHOR
Copyright 2006 Gordon Rowell <gordonr@gormand.com.au>
So, if the Exchange server will accept the mail, the SME Server continues with the mail processing and does things like virus and spam scanning. If the mail passes all of the tests, the SME Server will queue it and forward it to the Exchange server.
I know I wrote it, but I think this is kinda cool
