Moved to:
https://sites.google.com/a/explanatorygap.net/siradmin/
Edit: Version 0.86b2 now available. (22/03/2007)
I initially wrote SirAdmin as a diagnostic tool, so that when users reported problems with certain mailboxes, my IT support staff who were not comfortable with the command line interface of cyradm could assign themselves an ACL to view such mailboxes in their own email client in order to quickly diagnose whether the reported problem was server-side or client-side.
However, it quickly became apparent that the usefuleness of this app extended beyond that, in that it allows non-admin users to share mailboxes with one another.
If you’re not familiar with cyradm, it is a command line tool that ships with the Cyrus IMAP server. You can see the man page for it here at developer.apple.com, and O’Reilly have published Chapter 9: Cyrus System Administration for free from their book Managing IMAP.
So my app SirAdmin is essentially a GUI replacement for cyradm, in that it allows you to locally or remotely administer your Cyrus IMAP server. I’ve tested it against the Cyrus server from Mac OS X Server 10.3 and 10.4, as well as Cyrus running on RedHat. It isn’t merely a wrapper around the cyradm code by the way. All the bugs are my own… :)
It does require OS X 10.4 on the client, where you are running the application, although you can talk to 10.3 IMAP servers
It allows you to create, rename, delete and reconstruct mailboxes, and also allows you to set Access Control Lists for IMAP mailboxes. This is perhaps the most useful function, in that as an admin you can create globally shared mailboxes, or as a user you can choose to share out parts of your IMAP mailbox hierarchy with other users. It also gives you an easy interface to be able to configure “plus addressing”, where you can send emails to postuser+aSharedMailbox@your.mail.doman and have them be delivered directly to a particular mailbox, rather than to the inbox of a particular user.
Here are some screenshots to illustrate what you can do:




It’s still a work in development, the obviously missing features are:
- Kerberos support
- The ability to specify particular mail partitions for particular mailboxes
- Untested behind a SOCKS proxy (would love feedback on this…)
- Mac Help for SirAdmin isn’t finished
- I’m also working on more diagnostic info, like number of messages in a mailbox, last message received, view message excerpts, etc.
but it currently does some nifty stuff like:
- Keychain Support.
- SSL support.
- CRAM-MD5 support, with an attempted fallback to plain-text
- Create, Delete, Rename, Reconstruct Mailboxes.
- Create, Delete Access Control Lists for Maiboxes.
- Auto-complete usernames for ACLs based upon global mailbox listing
- Auto-complete usernames by searching your configured Directory Access nodes, with optional min/max uid filtering
- View Quotas, Quota Root and Quota Used.
- View and Edit Mailbox Comments, Squat Indexing, and Auto-Expiry age for messages
- View Mailbox Last Updated date, size and partition
Anyway, if you’re interested in grabbing a copy, you can get version 0.86b2 here.
I’d love feedback on it, particular bug reports or suggestions for further utility. You can either email me or leave comments here.
Edit: I’m particularly keen on suggestions for the docs. Some comments below have illustrated that I need to explain Cyrus ACLs better. Thanks for that.
Thanks go out to:
- Mark Daniel for designing the icon
- Dustin Voss for his most excellent AsyncSocket class
- Adam Gerson for his useful AGKeychain class
- Dave Dribin for his Base64 encoding/decoding categories
[...] For setting up the ACLs, you could learn how to use cyradm commands. Or you could download SirAdmin and have a nice graphical interface. SirAdmin comes with a how-to file on how to set up the cyrus admin account and usage is pretty straight forward. [...]
SirAdmin … a GUI replacement for cyradm, version 0.85…
- Keychain Support
- SSL support
- CRAM-MD5 support, with an attempted fallback to plain-text
- Create, Delete, Rename, Reconstruct Mailboxes
- Create, Delete Access Control Lists for Maiboxes.
- Auto-complete usernames for ACLs based upon global mail….
This is great. All I wanted to do was to make the SpamAssassin Ham and Spam account inboxes world writeable so that any of us could move messages there from our own inboxes as needed. I have not anywhere been able to locate how to set permissions on a mailbox for “anyone” using cyradm from the command line. I still don’t know, but you have solved that problem for me most elegantly. Many thanks.
-Kanthan.
SirAdmin is a great product.
The only improvement for me would be the ability to set quotas.
Ben
I can’t seem to delete a mailbox in Leopard Server 10.5.1. I can log in and see all the mailboxes. But I get a permission denied error. This using Version 0.86b2.
Thanks for this tool! I was trying hard to move a mailbox to another user on my Tiger Server and could not figure out that while the “rename” command in cyradm did work, the new user could not access the folders. Now I see that it also needs to adjust the ACLs. Had no idea. Hurray for GUI tools! (saved me from browsing the darn docs for hours, probably) :)
Glad to hear Thomas. :)
Maybe I should sit back down and work on this again and add quota support and refactor it so it’s not quite so hideous inside….
Two things, SirAdmin 0.86b2 doesn’t remember the password in the keychain even with remember in keychain checked. Second, creating a Cyrus admin, then logging into the server, showing mailboxes, clicking on delete and confirming does not delete the mailbox. Had to go into the Terminal to accomplish this which worked fine.
Fantastic tool!! Just one thing that’s a little missing from the documentation though… what to do in Mail to see the shared mailboxes. For some it’s not obvious.
Hi there,
I’m trying to authenticate with Cyrus over an SSH tunnel, and in the connection dialog I’m using the values
localhost
cyrus
mypassword
yet in the authentication log on the server-side, I’m seeing that the username is being presented as ‘cyrus@com’. Could you advise on how I can avoid this behaviour please? Otherwise, cracking product!
Best wishes,
Michael
Nothing much to add other than thank you for producing such a great application. There is lots I can suggest but I think you will probably have them all covered in the next version? If there is to be a next version – hopefully?
So I really haven’t even looked at this source code since I left the job that made it necessary to write it :)
I’d love it if someone ran with the idea and produced something better… :)
I haven’t been able to get SirAdmin to with in Leopard Server, 10.5.5 – has anyone succeeded here?
just reinstalled our server completely, including the update from 10.5.4 to 10.5.5 and once we edited the /etc/imapd.conf all works as before…
so far no problems with 10.5.5
10.5.5 and siradmin works fine for us… did you check your /etc/imapd.conf file?
Don’t forget, many of these random shared mailboxes are created from config problems. Use SirAdmin to create an ACL for your cyrus admin user that has all rights to the shared mailbox, then delete it — the permission denied error will go away.