Plesk Server Entrümpelung

tsk

Member
Hallo zusammen,

ich habe in den letzten Wochen einen neuen vServer (Ubuntu 8.0.4, Plesk 9.5.4) eingerichtet und die Zeit damit verbracht, ihn für die weitere Migrationsphase so gut als möglich abzusichern. Plesk war für mich ziemliches Neuland und ich habe immer noch eine gewisse Angst, mir durch direkte Eingriffe am Server mein Plesk zu zerschießen. Jetzt bin ich an dem Punkt angelangt, den Server für meine Anwendungen zu entschlacken.

Ich benötige ausschließlich PHP (betrieben als FastCGI über suexec) und MySQL, sowie einige PHP Erweiterungen, wie GraphicsMagick, die alle bereits zur Distribution gehörten. Im Wesentlichen wird auf dem Server TYPO3 laufen bzw. es läuft bereits. Mit der Performance bin ich eigentlich bereits jetzt zufrieden.

Nun zu meinen Fragen:
In den Plesk Domain Einstellungen sind derzeit nur PHP als FastCGI (statt Modul), CGI, Perl und FastCGI-Unterstützung (erforderlich für RoR) ausgewählt. Ich habe diese Auswahl getroffen, um in der Anfangsphase auf der sicheren Seite zu sein, habe aber das Gefühl, dass da einiges überflüssig sein könnte. Ich benötige tatsächlich ausschließlich „PHP als FastCGI“, niemals jedoch PHP als (normales) CGI und auch nie wieder PHP als Apache Modul. Ich benötige auch definitiv keine Ruby on Rails Umgebung. Hinsichtlich Perl bin ich mir noch nicht sicher – möglicherweise nutzt TYPO3 es an der einen oder anderen Stelle. Die Auswahl erscheint mir irgendwie redundant.

1)Ich brauche PHP FastCGI, aber kein CGI (kann ich CGI abwählen oder bedingt das Eine das Andere?)
2)Ich brauche PHP FastCGI, aber ich brauche kein RoR (kann ich „FastCGI-Unterstützung (erforderlich für Ruby on Rails)“ abwählen, da ich ja davor bereits „PHP Unterstützung, ausführen als FastCGI“ gewählt habe?

Unabhängig von der Auswahl, die ja pro Domain erfolgt, läd der Apache immer noch alle Module, die zur Ubuntu Distribution gehören. Also auch alles Abgewählte, wie mod_php. Ist mir auch verständlich, denn eine andere Domain könnte diese Services ja benötigen. Ich weiß jedoch, dass ich einen Großteil dieser (für mich sinnlos) mitgeladenen Dienste niemals in Anspruch nehmen werde und ich möchte nichts laden, was ich nicht auch benötige. Deshalb...

3)Kann ich die einfach mittels „a2dismod php5„ rausschmeißen und wäre dieser Rausschmiss auch rebootfest, oder bekomme ich die bei jedem Plesk Update erneut untergeschoben?
4)Benötigt Plesk ggf. irgend eine der derzeit geladenen Dienste, um mit der Domain interagieren zu können?

Wäre dies ein „einfacher“ Server, ganz ohne Plesk, so wüßte ich, was zu machen ist. Meine Unsicherheit betrifft primär Plesk – und ich wäre für Euren Input dankbar. Ein Backup existiert natürlich – aber mit Eurer Hilfe könnte ich mir ein mühsames Trial and Error ersparen.

Grüße aus den Niederlanden,

Thomas
 
Am Anfang sah ja alles geradezu vorzüglich aus. Ich habe mittels a2dismod die Module python und php5 deinstalliert, die Konfiguration neu geladen - und alles lief noch, inkl. meiner php Anwendungen. Selbst die nachfolgende Deaktivierung des proFTP hat Plesk mutmaßlich anstandslos überlebt. Bis eben:

Da habe ich Horde/Webmail aufgerufen und wurde mit dem Download vom Typ application/x-httpd-php begrüßt, statt mit einem Anmeldebildschirm. *groll*

Kann Horde nicht mit FastCGI? Eine temporäre Reaktivierung des Apache Moduls php5 brachte keine Änderung. Oder ist das eine Wirkung des Abschaltens des FTP? Oder möchte Horde nur mal wieder - z.B. weil es schon ne Woche her ist - komplett neu installiert werden? Oder braucht Horde Python?

Ich geh jetzt in mein Kissen heulen - oder mich komatös betrinken.

Glückauf
 
Du kannst den Handler für *.php entweder global oder pro vHost einstellen. Plesk macht offensichtlich ersteres, Du letzteres.
Das Eintragen eines Handlers in den Webmail-vHost (der hat den Alias webmail.*) sollte das Problem lösen.
 
Hallo Whistler,

danke für Deinen Hinweis. Bin mir noch nicht sicher, ob ich die korrekte Datei gefunden habe.

Unter "/etc/psa-webmail/horde/horde_vhost.conf" wird am Dateianfang mittels "Include /etc/psa-webmail/horde/conf.d/*" etwas Domainspezifisches inkludiert. In conf.d liegt nur eine Datei mit dem betroffenen Domainnamen mydomain.tld mit folgendem Inhalt:

Code:
ServerAlias webmail.mydomain.tld

Meinst Du diese Datei, bzw. eine Erweiterung dieser Datei um:

Code:
<Directory @WEBMAIL_DOCROOT@>
	<IfModule mod_fcgid.c>
	<Files ~ (\.php)>
		SetHandler fcgid-script
		FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .php
		Options +ExecCGI
		allow from all
	</Files>
</Directory>

Der Zusatz entspräche einer Kopie des php/fcgid Parts aus meiner vhost.conf. Wäre das so korrekt?

Was mir noch etwas Sorgen macht ist das Verhalten von Plesk bei Updates. Wird mir dies ggf. bei jeder Änderung an der Domain wieder überschrieben?

Als ich meine Domain vor kurzem auf FastCGI/suexec umgestellt habe, hat Plesk sofort eine geeignete httpd.include generiert mit entsprechender SetHandler Routine für FastCGI. Hätte Plesk bei dieser Gelegenheit nicht auch einen Handler in die horde_vhost.conf packen müssen? Aktuell stehen dort zwei Handler, einer für mod_php4 und einer für mod_php5 (beide nicht mehr im Apache aktiviert, allerdings zum Zeitpunkt der fcgid Umstellung noch aktiv).

Angenommen, ich würde als alternative Vorgehensweise Horde (nach Sicherung) deinstallieren und per autoinstaller neu aufsetzen - und es gäbe kein mod_php mehr im System (nur noch FastCGI): Würde Plesk dann auch einen geeigneten Handler für fcgid inkludieren? Wäre möglicherweise updatefester, oder?

Grüße,

Thomas

p.s. Da fällt mir noch was ein. Müssen nicht bei Horde unter FastCGI die php Files dem Suexec User gehören, um nicht eine Riesenlücke in alle geschaffene Sicherheit zu reißen? Derzeit gehört alles root - und root als Suexec User wäre, wenn es denn überhaupt ginge, sträflicher Leichtsinn. Ist es möglicherweise das kleiner Übel, mod_php5 parallel geladen zu lassen und mit nem größeren Footprint zu leben? Komplexes Thema.
 
Last edited by a moderator:
So, Versuch macht kluch

Habe gerade meine hypothetische alternative Vorgehensweise in eine praktische umgesetzt:

Keinerlei Apache mod_php aktiv (nur fcgid)
Horde, nach Sicherung von ".horde.shadow", mittels "dpkg --purge --force-depends" entsorgt,
horde Verzeichnis gelöscht
Horde mittels autoinstaller neu installiert und ".horde.shadow" zurückgespielt.
Ergebnis: Neu erstelle horde_vhost.conf, die keine Handler außer denen für mod_php4/5 enthält. Die ebenfalls (vor meinem Überkopieren) neu angelegte ".horde.shadow" hatte den www-data als Gruppe, die ebenfalls neu angelegte log Datei www-data:www-data. Das passt alles nicht zu FastCGI.

Mein Eindruck: mod_php ist zwar keine harte Dependancy für Horde (zumindest wurde kein mod_php erzwungen und es gab auch keine Mecker-Meldungen), aber Plesk konfiguriert alles so, wie es für mod_php sein sollte und ignoriert dabei, das es diese Module (auf meinem Server) gar nicht gibt. Dies kann jetzt einfach ein banales Problem des Installers sein (nennen wir's mal potentiellen Bug), es kann aber ebenfalls einen guten Grund haben, dass Plesk es nur so haben möchte. Ich hoffe doch, dass die bei Plesk deutlich mehr über das Thema wissen, als ich.

Das psa-horde.log bleibt beharrlich leer, warum auch immer. Das Horde-Project Wiki und der Bugtracker sind offline und Google erzählt mir, das offensichtlich ich alleine dieses Problem habe. Was muß ich auch an allem rumfummeln.

Zum weiterbröseln würde mich jetzt ein Statement wie:

Ja, ich habe tatsächlich nur FastCGI/suexec aktiviert, keinerlei mod_php, und bei MIR läuft Horde.

von nöten.

Zwischenzeitig bekommt mein Server zusätzlich mod_php - und alles geht wieder. Bin mit dem Thema aber noch nicht fertig.

Glückauf
 
Hallo

Den Eintrag

Code:
<IfModule mod_fcgid.c>
	<Files ~ (\.php)>
		SetHandler fcgid-script
		FCGIWrapper /var/www/cgi-bin/cgi_wrapper/cgi_wrapper .php
		Options +ExecCGI
		allow from all
	</Files>
</IfModule>

kannst du am Ende in der folgenden Datei eintragen:

/usr/local/psa/admin/conf/webmail_horde_bootstrap.conf
 
Last edited by a moderator:
Back
Top