i think this is finally in a useful stage. it’s a replacement for the domino blacklist code
The current domino blacklist code restricts you to having either reject or tag lists only but not both at the same time and there is no whitelist functionality.
This add-in allows you to enable up to 50 dns servers of each type (accept/reject/tag) and for those admins that don’t have a dns server to host their own lists, you can create an unlimited* number of ip addresses/ranges and set each one to it’s appropriate type, so you can create the equivalent to a local dns server in the configuration database.
The add-in checks the incoming address against the addresses and dns servers in the configuration database for a match and if found either accepts, rejects or tags the message and then possibly intercepts it (moving it to a storage database).
all of the add-ins modes are user configarable.
all the files (including source) can be found here
(sorry not available - link removed)
unlimited in this case means whatever the domino limit is for documents in a view
Raymond. Can it be true? Have I read this correctly. I get the impression that you can now hook the SMTP listener and actually control SMTP protocol connections.
Is this so?
If it is, well done for fixing the feature that IBM/Lotus so very nearly got right and I am really looking forward to having a play with this.
Some suggestions if you have not already thought of them:
custom 554 responses for each type of block - “554 - we do not accept mail from dynamically assigned addresses” - that sort of thing
is it possible to do anything about bogus HELO phrases?
yep, in 6 you always could, that is hook in just before domino accepts an smtp connection, thats where i run the connect mode part of the addin, all it can do is reject the connection there but thats all i needed for the reject lists (no more wasted bandwidth), thats why the addin has three modes (connect, accept and mailbox), it hooks in at three different places to cover the full white/accept, black/reject and grey/tag list functionality.
your helo/ehlo problem i can’t fix at connect time as the hook into there only gives the revese dns lookup (if found), but i could fix it at the accept stage as the mime stream has been itemized and i’d have a received field to decode the helo’d hostname and ip address from, which is what my code does now and it’s what i check against.
the addin config database can contains a list of ip addresses set as accept/reject/tag that i use to check the ip address against, if i do the same thing for hostnames (as well as doing dns lookups on them) you could accept/reject/tag based on those as well, actually i wouldn’t do accept for these, they’re easily forged, but reject and tag would work. gimme a week to update the code and i’ll repost it.