Use the Regex Policy Daemon as antispam backend
I've written a small dameon which manages lists of regular expessions an can filter content against them.
For MoinMoin it could be used for..
- Match against different lists. examples:
- ip/hostmask/name when creating accounts
- ip/hostmask/name for edits
- content matching blacklist as antispam does currently
- whitelists are also possible
- Build a Peer to Peer system where you can also distribute your lists
- Regex can have an 'atime' which is updated when the list is matched
- There is are 'expire' and 'filter' commands which let one remove rules which are not triggered for a certain time.
- Lists can be syncronized, importing new rules or only update 'atimes' of existing rules from others
- merge and filter can be used to create your personal crafted lists from different sources
What problems will be solved?
The current Antispam...
- .. does not scale.
- The blacklist is ever growing and no one knows which patterns are effectively blocking spam.
- .. is centralized.
- Thats a single point of failure.
- Adds load to the moinmaster.
- Is a single point for attack, as well as spammers could use the known patterns to circumvent the system.
- .. is a single blacklist.
- A wiki admin can't decide what to block and what not, he has only an all or nothing option.
- Only content and only page edits are processed, metadata, hostmasks etc are not checked.
Is this features useful to most users or just to specific users?
The wiki needs to be able to connect to a rxpd, preferably locally running, but a remote rxpd would work too. Since it is intended to be a peer to peer system it will benefit from more users using it.
Plan
I will modify 'antispam.py' to an 'antispam_rxpd.py' which then is an drop in replacement to use rxpd. My intention is to offer an alternative to the current antispam system, not a new replacement. I would appreciate any help for the python part. Contact me on irc.freenode.net 'cehteh'.