MS+Postfix, Selective HOLD
Hugo van der Kooij
hvdkooij at vanderkooij.org
Sun Apr 6 09:30:37 IST 2008
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi,
I have been trying to get my head around this question before. I find
that I have a scalability problem that I could resolve if I can put
messages on HOLD for MS to pickup only if it is not for a certain recipient.
There is one recipient that goes straight into a procmail parser to
extract specific information. There is no need to fire up the whole MS
circus for each message. This is an automated system that will get 1
message per monitored SMTP server per minute.
The normal config is:
# Do some header checks
# This includes setting almost anything on hold for MailScanner to
pick up
header_checks = regexp:/etc/postfix/regexp/header-checks
So I have tried a number of setups. Most of them failed miserably.
This morning I woke up whith what seems to be the answer so I gave it a
spin and here are my findings.
What does work is at the end of my smtpd checks add a table to list
explicit addresses to scan. In the main.cf it looks like:
# Access rules
smtpd_client_restrictions =
~ permit_mynetworks,
~ permit_sasl_authenticated,
....Long list removed.......
~ reject_unauth_destination,
~ check_recipient_access hash:/etc/postfix/hash/valid-recipients
And the hash tables explicit lists everyone for whome MS should be
called upon. Like:
hugo at vanderkooij.org HOLD
hvdkooij at vanderkooij.org HOLD
(I know putting email in the clear scares some people. But if you ever
see a Megalist without these two then do not buy it. ;-)
But the drawback is it only works for a simple setup at home with only a
moderate list of recipients. And where you actually know all the recipients.
But if you want to have just a few exceptions then you better use
regular expressions.
So replace:
check_recipient_access hash:/etc/postfix/hash/valid-recipients
with:
check_recipient_access regexp:/etc/postfix/regexp/MailScanner
With /etc/postfix/regexp/MailScanner looking like:
#
# header_checks - Postfix built-in header/body inspection
#
/exclusion at test\.example\.net/ OK
# Everyone else will go through MailScanner!
/.*/ HOLD
# EOF
This does the trick for me. It might work for others.
Hugo.
- --
hvdkooij at vanderkooij.org http://hugo.vanderkooij.org/
PGP/GPG? Use: http://hugo.vanderkooij.org/0x58F19981.asc
A: Yes.
>Q: Are you sure?
>>A: Because it reverses the logical flow of conversation.
>>>Q: Why is top posting frowned upon?
Bored? Click on http://spamornot.org/ and rate those images.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.7 (GNU/Linux)
iD8DBQFH+IorBvzDRVjxmYERAgMyAJ4xhxORHyI5FCR4+SmqBsHF0hEG6ACdEsxF
Rc+yfJOmfToGmB65GW0nQ1I=
=u3N0
-----END PGP SIGNATURE-----
More information about the MailScanner
mailing list