Nein, da seh ich kein Problem. Das IMAPd Zeugs ist so implementiert, das es komplett unabhaengig vom Sylon Mailsystem ist.
Ich will das mal aufzeigen:
Als erstes nehmen wir ein paar Zutaten:
/bin/sh, ist in jeder guten Kueche vorhanden
bincimapd, gibts in jeder Migros und auf http://www.bincimap.org
tcpsvd oder tcpserver, im Fachhandel oder auf http://smarden.org/ipsvd/(GPL) oder http://cr.yp.to/ucspi-tcp.html(eigene Lizenz)
runit oder daemontools, ebenfalls Fachhandel oder auf http://smarden.org/runit/(GPL) oder http://cr.yp.to/daemontools.html(eigene Lizenz)
Dann mischen wir das ganze gut durch, und kommen frueher oder spaeter zu folgendem Sammelsurium an Shellscripts:
Dieses File ist eigentlich nur ein Wrapper um das nachfolgende File, es wird von runit/daemontools verwendet um den Dienst zu restarten, sollte er unerwartet sterben.
Hier kommt der Part in dem tcpserver/ipsvd gestartet wird, welcher danach bincimapd ausfuehrt. Die ganze Logik steckt aber erst in folgendem File:
#!/bin/zsh
exec >&2
IFS=\0 read user passwd misc <&3
if [ x"$passwd" = x"passwd" ] ; then
umask 077
mkdir -p ./messages/db/$user/{cur,new,tmp}
cd ./messages/db/$user
export MAILDIR=./messages/db/$user
export HOME=$HOME/messages/db/$user
exec "$@"
else
exit 1
fi
Und das wars schon. Wie ihr also seht haben wir hier einen imapd, der je nach angabe des Benutzers auf einen anderen Mailspool zugreift, aber immer das gleiche Password haben will. So haben wir eine Implementation, die als reines DB Backend fungiert. Aber damit nicht genug: Das ganze System ist modular genug, um leicht ausbaubar zu sein, z.B. eine eigene Benutzerdb zu bekommen. Fuer das ganze braucht man nichtmal root.
Zum Thema eigener Server: Sylon bietet welche zum Mieten an, gehostet ebenfalls bei Pipeline. Falls ihr da technische Unterstuetztung braucht, koennt ihr euch vertrauensvoll (harr harr) an mich wenden ;)
(Ich hoffe, man kann die Scripts noch lesen. Sonst halt auf michelle einloggen, und die Files selber anschauen)
Du koenntest z.B. das auth shellscript durch ein #!/usr/bin/php script ersetzen, das gegen eine mysql db checkt. Waer alles kein Problem. Falls ihr Hilfe braucht, einfach melden ;)