Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.
Sign up
Cannot retrieve the latest commit at this time.
| Failed to load latest commit information. | |||
|
|
bin | ||
|
|
common | ||
|
|
control | ||
|
|
lists | ||
|
|
postfix | ||
|
|
scripts | ||
|
|
sendmail | ||
|
|
server | ||
|
|
test | ||
|
|
.exclude | ||
|
|
BUGS | ||
|
|
CHANGES | ||
|
|
COMMANDS | ||
|
|
FAQ | ||
|
|
INSTALL | ||
|
|
LICENSE | ||
|
|
Makefile | ||
|
|
README | ||
|
|
RUNNING | ||
|
|
TODO | ||
|
|
conf.h | ||
|
|
notes | ||
README
X-Grey: The Greylist Daemon. This implements greylisting, as described in http://projects.puremagic.com/greylisting/ This is an anti-spam measure and has been shown to reduce the amount of spam by 90% (at least, on the systems I've installed this program on). This program is different than most greylist implementations in that it keeps everything in memory, and supports more than one MTA. Features: * Fast. It can handle around 6,000 sustained requests per second on a 2.6GHz machine. When tested on a 120MHz 486, it peaked out to 380 requests per second. It's fast because everything about the server is stored in memory. * Configurable. You can have everything greylisted, or only mail from one particular server, from a particular sender to a particular recipient. Or anything in between. Email can be accepted, rejected or greylisted based upon the IP address, sender email or recipient email. * Dependable. Configuration changes can be made while the server is running, so you never have to shut it down. If the program ever crashes, it will restart itself, picking up where it left off. * Flexible. It currently supports Sendmail and Postfix, and extending it to support other MTAs is not hard. * Networkable. Have more than one email server? It can support multiple MTAs (even different types) across a network (although it can work over the Internet, it's best to keep an instance of the Greylist Daemon on a local segment). * Boundable. It consumes a predictable amount of memory and disk space. Expired tuples are automatically purged from the system. Note: If you pulled the source code from Github, you'll need to run "scripts/post-commit" to generate the version.h file. You can, of course, add this script to the ".git/hooks" directory to re-generate this file on each commit. Acknowledgements: I would like to thank Pick Internet <http://www.pickint.net/> and Harmony Logic for funding the development of this program and for alpha testing this program. I would also like to thank Gladesoft <http://gladesoft.com/> for feedback and keeping me honest in coding the program, and for running a beta test version of this program.