ubuntuusers.de

Server absichern (MAC, SELinux, .. )

Status: Ungelöst | Ubuntu-Version: Ubuntu
Antworten |

Ragnarok

Anmeldungsdatum:
14. August 2006

Beiträge: Zähle...

Hallo,

ich stehe vor dem Problem, dass ich einen Webserver mit verschiedenen Accounts absichern will.
Der Webserver führt Scripte per fcgid/suexec aus und diese Scripte laufen somit unter dem Account.
PHP lässt sich ja über den Safemode recht einfach absichern, aber die "normalen" CGI Programme ja nicht.
Und der PHP Implementierung vertraue ich auch nicht so ganz 😉
Was ich also haben will und deshalb frage, ob es sowas gibt:
Ich möchte Benutzer nur Zugriff auf bestimmte Verzeichnisse geben, z.B. ihr home.
Sie dürfen nur darin enthaltene Programme ausführen. Wollen Sie auf andere Dateien zugreifen, z.B. /etc/passwd verbietet
das die Config.
Geht sowas mit MAC bzw. SELinux? Hat jemand einen Einstiegspunkt für mich?

Grüße

comm_a_nder

Avatar von comm_a_nder

Anmeldungsdatum:
5. Februar 2006

Beiträge: 2533

Wohnort: Dresden

Das ginge mit SELinux. Inwiefern das auf Ubuntu schon nutzbar ist weiß ich aber nicht. Für $Ottonormalverbraucher würde aber auch schon eine chroot oder vserver Umgebung langen. Wobei eine Breakout aus einem Chroot keine Herausforderung ist, wenn ich Schreib- und Ausführrechte in meiner Umgebung habe.

Ansonsten empfehle ich Dir mal die folgenden Folien: http://www.heinlein-support.de/LT/php-security/

Ragnarok

(Themenstarter)

Anmeldungsdatum:
14. August 2006

Beiträge: 10

Das ginge mit SELinux ist so ziemlich die pauchalste Antwort 😉

Hat noch niemand was mit SELinux gemacht?

damokles

Anmeldungsdatum:
20. September 2006

Beiträge: 116

Ich habe bisher noch nichts ueber SELINUX gemacht, da es doch recht aufwändig ist. Allerdings kannst Du auch mit anderen Mitteln die Sicherheit sehr hochschraben:

Vertrau nicht auf den PHP Safe Mode, das ist zwar ein guter Anfang, aber mehr auch nicht.

Du solltest

- die basedir-Einstellungen anwenden
- "gefährliche" Funktionen abschalten durch die php.ini
- dringend ein PHP-Sicherheitsmodul aktivieren (Handarbeit notwendig ... sieh Dir Suhosin an: http://www.hardened-php.net/ )
- in der Apache-Konfiguration sicherstellen, dass nur die Optionen ueberschreibbar sind, die auch ueberschreibbar sein sollen und symbolischen Links nicht gefolgt wird
- dringend das /tmp-Verzeichnis "noexec" mounten, da per PHP dort gern Programme eingeschleust und ausgeführt werden - Achtung: Kann Probleme mit Updates geben über apt bzw. Synaptec, eventuell eigene Partition fuer php-tmp-Verzeichnis
- mod_security für den Apache installieren und Anpassen

Viel Erfolg,

ccm.

Ragnarok

(Themenstarter)

Anmeldungsdatum:
14. August 2006

Beiträge: 10

Es geht ja nicht unbedingt nur um PHP. Es gibt ja mehrere Scriptsprachen, die z.B. über cgi/fastcgi laufen.
Es gilt auch die abzusichern und da gibt es z.B. keine open_basedir Einstellung.

SELinux ist anscheinend noch ein ziemlich unbekanntes Thema hier ... 😀

Antworten |