Web based Cyrus IMAP user admin client.
IMAP::Admin-1.4.1.tar.gz or newer (used by funclib.pl version 2.4)
*NOTE* : Don't use version 1.5.1 of IMAP::Admin. There is a bug in the
getquotaroot function that causes a timeout.
perlsieve-0.4.9b.tar.gz NOTE: Adds SSL functions - fixes scripts listing
- fixed SSL connection problem
funclib.pl (version 2.4)
funclib.cyrus (version 1.1 - optional - uses Cyrus 2.x.x builtin perl modules)
IMAP::Admin and perlsieve not required if using funclib.cyrus.
NOTE: You must have the Cyrus 2.x.x perl modules installed.
websieve.pl (version 0.61)
websieve.conf ( for versions 0.57+)
auth.pl (optional - change passwords on an ldap server)
auth-pop.pl (optional - change passwords on Qualcomm poppasswd server)
allfiles.tar.gz (all the files above)
websieve-test.pl: alpha version 0.59-test of websieve
- This is an example setup of using websieve.pl in a customized frame based menu environment.
- untar,make and install the following modules (if required):
(eg. after untaring the modules change to the untarred directory, run 'perl Makefile.pl', then 'make', then 'make install' to complete the installation.)
IMAP::Admin from Eric Estabrooks (available locally or on CPAN)
IMAP::Sieve (available locally - from Alain Turbide, filename: perlsieve.x.x.tar.gz)
Note: Version 0.4x+ of websieve requires version 0.4.x+ of IMAP::Sieve.
- copy websieve.pl, websieve.conf and funclib.pl to your cgi directory
- if using ldap for password storage you can also copy auth.pl to your cgi directory and modify the parameters at the start of the module.
(Alternatively you could use your own custom auth.pl or if using the Qualcomm
poppassd daemon you can use auth-pop.pl)
- change the execute permissions and ownerships of the
scripts (eg: chmod 555 websieve.pl)
- modify websieve.conf to suit your preferences
- to use this script you must have the timsieved daemon setup as per the
install instructions in the Cyrus distribution.
Point your browser to websieve.pl eg: http://webhost/cgi-bin/websieve.pl.
You will then be greeted with a login screen. Enter your
Cyrus UID and PASS and you should see the script entry screen
as well as your current mail quota, acl's.
Please note that only plain text (LOGIN) authorization is supported at this
time. I also recommend that you run this on an SSL enabled server
to avoid sending passwords in the clear. If you need to run the script
on a separate server then the mail server, please remember that the passwords are sent in clear text. To ensure better security in such scenerio's I recommend using SSL to encrypt the session to the Imap and Sieve daemon's. I've successfully used Stunnel in these cases.
This cgi module allows full user control of sieve script creation,
as well as acl settings for mailboxes. It also displays the
current available quota. The basic setting is for easy script
creation with no scripting involved. The advanced setting allows
direct script access and editing. Please note that the "basic" mode does not
use all of Sieve's features. If you require more functionality you can use
the "advanced" mode or you can drop me an email if you would like a particular
feature added to "basic" mode.
To use the "vacation" or "reply with" features of sieve you must
be running deliver in LMTP mode otherwise you will not be able to
save scripts on the server if you try to use these features.
Please consult the Cyrus IMAP sieve docs for more info on the Sieve
language and setting up deliver for LMTP.
This is BETA software. There probably are quite a few bugs yet
to fix but it is mostly functional here.
I am not responsible for any loss or damage that can occur to your
system from the use of these scripts. It is free software and
you may do as you wish with it. If you make any modifications to it
or need changes made, let me know and I'll apply them to my source
for others to use if possible.
There is still a lot I want to do with it as well as clean up the
source (It's a bit rough at this time - still learning PERL).
If there are any questions, suggestions I can be reached via email at: