| 

.NET C# Java Javascript Exception

3
Hallo zusammen,

bislang habe ich den PHP-Shellzugriff über den Apachen in der php.ini unterbunden und ggf. CLI PHP genutzt.

Nun wäre es bei einer Anwendung aber wichtig, einen Zugriff auf bestimmte Shell-Befehle
(z.B. rsync) doch zu erlauben. Der Server läuft auf Linux SUSE 11.4.

Gibt es eine Möglichkeit, nur die Ausführung bestimmter Shell-Befehle zuzulassen - ähnlich wie bei einem Shell-User?

Danke!
21.07.2011
doublem 683 1 1 9
2 Antworten
2
also wenn ich das richtig verstehe, dann soll die Webanwendung Befehle auf der shell (z.b. mit shell_exec()) ausführen. Da der Apache im Allgemeinen als www-data auf das lokale System zugreift könntest du die Berechtigungen also in der Tat wie bei einem normalen Shell-User vergeben. Kann es grad nicht ausprobieren, wüsste aber nicht, was dagegen sprechen sollte.
21.07.2011
DevConfusion 149 1 3
1
Hallo,

du kannst mit der Library amon.so die Befehle, die via system() etc. aufgerufen werden können, beschränken. Ich habe es selbst noch nicht ausprobiert, aber hier ein Artikel darüber:

http://www.howtoforge.com/amon.so-highjacking-system-calls-for-hardening-php-debian-lenny-and-squeeze

Und die Webseite des Autors über Amon.so:

http://www.lucaercoli.it/en/amon.html

Vielleicht hilft dir das.
23.07.2011
PHPGangsta 797 2 4
Danke für den Tipp! Bin mir allerdings nicht sicher, ob die Library auch auf SUSE 11.4 läuft.
doublem 25.07.2011

Stelle deine Php-Frage jetzt!