Home
pysieved: Python Managesieve Server
This is a GPL managesieve server. It uses a plug-in architecture to support different authentication, homedir lookup, and storage back-ends.
Originally written by Neale Pickett for use with avelsieve (SquirrelMail), Postfix and Dovecot. It should work with other managesieve clients too. Please share with us your successes and failures.
Plugin architecture
The server ships with the following plug-ins:
Authentication:
- Dovecot
- /etc/passwd, /etc/shadow (dev branch)
- PAM
- SASL
- LDAP (dev branch)
- MySQL
- Courier (dev branch)
Homedir lookup & session initiation:
- Dovecot
- /etc/passwd
- LDAP
- MySQL
- simple virtual hosting (eg. /var/lib/virtual/username)
Storage:
- Dovecot (.dovecot.sieve)
- Exim (.forward)
- MySQL (dev branch)
- lmtpd (dev branch)
Consumer (dev branch):
- Dovecot
- Exim
- lmtpd (dev branch)
Additional back-ends are easy to write, just copy one of the existing back-ends and start hacking. No modifications are needed to any existing code, so you don’t have to worry about things like the managesieve protocol or forking.
Download
Version 1.1 was released on March 7, 2010, rolling the long-pending support for Exim into an official release.
You can get the latest version as a tarball, or with git:
git clone git://gitorious.org/pysieved/pysieved.git
A web view of revisions is also available for those without git.
If you like being on the bleeding edge, try the dev branch
Installation
Put all the files somewhere, for instance /usr/local/lib/pysieved. Copy pysieved.ini into /usr/local/etc/, and edit to taste. It’s commented.
To run from inetd, add the following line to /etc/inetd.conf:
sieve stream tcp nowait root /usr/bin/python python /usr/local/lib/pysieved/pysieved.py --inetd
To run as a daemon, just run
python pysieved.py
Troubleshooting
If you encounter problems, try the tips in the TROUBLESHOOTING document.
Mail list / IRC channel
If you use pysieved, please join the pysieved mail list by emailing pysieved-subscribe@woozle.org or visiting the subscription page.
To talk about pysieved on IRC, join us in #pysieved on irc.oftc.net.
Neale Pickett neale@woozle.org and Philippe Levan levan@epix.net

