Problem:

Gerade in letzter Zeit sind einige Sicherheitslücken im Webmailer Horde/SquirrelMail aufgetaucht. Da Horde als Bestandteil von Plesk mit installiert aber von SWsoft nicht ausreichend beachtet wird, ist man als guter Server-Admin gezwungen selber Hand an zu legen.

Eine Möglichkeit ist die gefärdeten Programm-Dateien (bisher waren es keine relevanten Dateien) einfach zu löschen. Dies umgeht die Sicherheitsbedenken aber ist alles in allem keine gute Lösung.

Lösung:

Der Lösungsansatz entstammt dem SWsoft-Forum.
Sie basiert darauf, daß man parallel zum Bestehenden Horde eine aktuelle Version von SquirrelMail installiert und einfach die Weiterleitung umbiegt.

Finde Deine Plesk-Horde-Installation (schau in /etc/apache2/http.include nach) und wechsel in das Verzeichnis und lade die aktuelle Version von SquirrelMail:

cd /home/httpd/vhosts/webmail/
#download
wget http://heanet.dl.sourceforge.net/sourceforge/squirrelmail/squirrelmail-1.4.10a.tar.gz
tar xzf squirrelmail-1.4.10a.tar.gz
mv squirrelmail-1.4.10a squirrelmail
#Benutzerrechte setzen:
chown -R root:root squirrelmail
cd squirrelmail/
chown -R apache:apache data
#config.php erstellen:
cd config
perl conf.pl

Damit diese Version wirklich mit Plesk funktioniert müssen ein paar kleine Änderungen vorgenommen werden:

1.) In der Datei config/config.php muß die Zeile $domain = "example.com"; wie folgt ersetzt werden:

$domain = EREGI_REPLACE("www.","",EREGI_REPLACE("webmail.","", $_SERVER['SERVER_NAME']));

2.) In functions/file_prefs.php taucht folgender Teil 3mal auf und muß jeweils wie darunter geschrieben geändert werden:

getHashedFile($username, $data_dir, "$username.pref");
getHashedFile($username, $data_dir, $username.'_'.$domain.'.pref');

3.) In jeder Funktion wo dies zu ändern war muß noch ein $domain in die global aufgenommen bzw. die ganze Zeile ergänzt werden. Z.B.:

function checkForPrefs($data_dir, $username, $filename = '') {
global $domain;

Testen:

Zum Testen kann man einfach http://webmail.DOMAIN.TLD/squirrelmail/ als URL nehmen.
Wenn alles funktioniert legen wir nun die Umleitung an. Dazu editieren wir die index.html im o.g. webmail Verzeichnis. Wo vorher /horde/ stand muß einfach auf /squirrelmail/ gewechselt werden.

Kategorien:

Stichwörter:

plesk · horde · squirrelmail · update · upgrade · webmail · webmailer · php · swsoft · forum ·