Hallo zusammen,
das ist mein erster Beitrag in diesem Forum. Ich möchte euch beschreiben wie ich den Standardmailer von confixx durch den roundcube-0.8rc ausgetauscht habe.
Zuerst hatte ich den roundcube wie unter http://rootserver-blog.de/linux-webserver-hilfe/roundcube-webmail-und-confixx/ (http://rootserver-blog.de/linux-webserver-hilfe/roundcube-webmail-und-confixx/) beschrieben eingerichtet. Danach wurde der User nach der confixx Anmeldung auf die Loginseite von roundcube weitergeleitet. Dies ist natürlich nicht sehr schön und muss geändert werden. Ebenfalls soll der User nach der Abmeldung wieder auf die confixx Loginseite geleitet werden.
Zunächst muss man die Datei autologon_confixx.tgz im plugins Verzeichnis von roundcube entpacken. Dies übernimmt die Anmeldedaten für roundcube aus den Sessiondaten von confixx. Da das Skript direkt auf die Datenbank von confixx zugegreift benötigen wir noch zusätzlich Berechtigungen an der Datenbank.
GRANT SELECT ON confixx.sessions TO roundcube;
GRANT DELETE ON confixx.sessions TO roundcube;
Es ist wichtig dass die Sessiondaten von confixx direkt gelöscht werden. Ansonsten gibt es Probleme wenn man sich bei roundcube abmeldet und erneut anmelden möchte.
Für die Umleitung nach dem Logout benötigen wir ebenfalls ein plugin. Ladet euch dazu das Plugin-Package unter http://mail4us.net/myroundcube/ (http://mail4us.net/myroundcube/) herunter. Entpackt es und kopiert den Ordner 'logout_redirect' in den plugins Ordner von roundcube. Benennt die Datei 'config.inc.php.dist' in 'config.inc.php' um und ediert diese wie folgt:
<?php
/* lougout_redirect plugin */
/*
There are three modes:
#1 - Ajax login
See example in ajax_login folder.
Set login / logout to false.
It will detect if you logged in
from an outside form and the force
the redirect to the given URL.
Login and logout page are accessible.
#2 - Lock login page
Set login to true.
It will redirect the login page
to the given URL in any case.
#3 - Lock logout page
Set logout to true.
It will redirect the logout page
to the given URL in any case.
*/
/*
e.g. http://mail4us.net/logout.php?domain=%d&user=%n
the following two placeholders will be replaced in the redirect_url
%d ~ users domain part
%n ~ name part
*/
$rcmail_config['logout_redirect_url'] = 'http://mydomain.tld';
/* HTTP Referer
null -> no check
Url -> check */
$rcmail_config['logout_redirect_referer'] = null;//'http://mydomain.tld/webmail';
/* lock default login page */
$rcmail_config['logout_redirect_lock_default_login'] = true;
/* lock default logout page */
$rcmail_config['logout_redirect_lock_default_logout'] = true;
?>
Beide Plugins müssen noch in der 'config/main.inc.php' eingetragen werden:
// List of active plugins (in plugins/ directory)
$rcmail_config['plugins'] = array( 'authenticate_by_confixx_email', 'autologon_confixx', 'logout_redirect' );
Zuletzt muss die Datei 'poplogin/index.php' von confixx ebenfalls angepasst werden. Ansonten greift der autologin Mechanismus nicht.
<?php
header('location: http://mydomain.tld/roundcube/?_autologin=1');
exit;
?>
Danach sollte die Anmeldung wie gewünscht funktionieren.
Sollten es hier ein paar Programmierer lesen, bitte schaut doch auch mal den Code von autologon_confixx.php an ob es evtl. eine Sicherheitslücke darstellt.
Viel Spaß und so,
rc27
Danke! Gute Anleitung!
btw:
QuoteWarning: this topic has not been posted in for at least 120 days.
Unless you're sure you want to reply, please consider starting a new topic.
naund!