| (Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI... |
Diskussion: Apache2+PHP5.1 : vhost+disable_functions funktioniert nicht im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Ich wollt grad mal ein kleines shellscript über meinen Webserver ausführen: Code: Warning: shell_exec() has been disabled for security ...
![]() |
| | #1 (permalink) |
![]() Registriert seit: 06.01.07 ![]() Likes: 0 | Anzeige Ich wollt grad mal ein kleines shellscript über meinen Webserver ausführen: Code: Warning: shell_exec() has been disabled for security reasons in /servers/clients/...php on line 24 Code: ServerName blablubb.*
ServerAlias blablubb.*
ServerAdmin bla@blubb.org
DocumentRoot "/servers/clients/.../"
<Directory /servers/clients/.../>
Options ALL
AllowOverride ALL
Order ALLOW,DENY
ALLOW from all
</Directory>
[...]
php_admin_value disable_functions none Code: Warning: shell_exec() has been disabled for security reasons in /servers/clients/...php on line 24 in der php.ini shell_exec aus disable_functions entfernt, und siehe da er führt das Script aus... Das kann natürlich nicht so bleiben, wieder ab in die Apache-config und bei allen andern vHosts die ganzen deaktivierten Funktionen mit Code: php_admin_value disable_functions func1,func2,...,funcn Apache neu gestartet... Zum Test auch bei dem Host der das Script ausführen soll, und komischerweise führt er das Script jetzt immernoch aus... Es sieht ganz danach aus alsob er entweder das disable_functions in der apache-config garnet frisst, oder alsob irgendwas dies wieder überschreibt... Weis heir jemand an was das liegen könnte? |
| | |
| | #2 (permalink) |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 442 | Wenn es ein Apache2 direkt von Debian ist, dann hat PHP dort mehrere Config-Dateien. Da exec()-Funktionen grundsätzlich eine Shell aufrufen, solltest du auch die CLI-Konfiguration für PHP entsprechend anpassen.
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
![]() Registriert seit: 06.01.07 ![]() Likes: 0 | und wie kann ich diese für jeden vHost seperat bestimmen? natoll, jetzt hab ich solang dran rumgefummelt bis inzwischen trotz disable_functions = exec,shell_exec,... in allen configs trotzdem jeder diese befehle ausführen darf... Ich will einfach nur erreichen dass ich festlegen kann welcher vHost in die shell darf... Ich benötige nämlich für ein Admin-Interface einige shellscripte auf dem server, allerdings soll auch net grad jeder andere auf dem Server irgendwelche Scripte ausführen können... Kann mir hir irgendwer erklären wie ich das anstellen kann? |
| | |
| | #4 (permalink) |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 442 | Damit das funktioniert, müßte PHP als CGI laufen und nicht als mod_php. Mit einem Default-Server von Debian dürfte das schwierig werden. Die einzige Möglichkeit, die ich da sehe ist die Änderung der PHP-Einstellungen über die htaccess. Und das könnte dann (logischerweise) jedes VHost. Mein Rat: Installiere für dein Webadmin-Interface einen extra Webserver, den du auf einen anderen Port setzt. Damit kannst du den "User-Server" restrikten und den "Admin-Server" mit erweiterten Rechten versehen. Zum manuellen Einrichten eines Apache aus dem Source schau dir einfach mal LAMP-Einrichtung an. Ein zweiter Server für das Admin-Interface wäre auf jeden Fall die sauberste Lösung, da du dort schon beim Kompilieren dafür sorgen kannst, daß er eine komplett andere php.ini nutzt als der normale Webserver.
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ |
| | |
| | #5 (permalink) |
![]() Registriert seit: 06.01.07 ![]() Likes: 0 | ok... der zweite server läuft übrigens... Doch meine Vermutung hat sich bestätigt: Code: php_admin_value disable_functions function_1,function_2,function_n Ich hab jetzt nochmal testweise in der PHP.ini alle Funktionen erlaubt Code: disable_functions = Code: ; disable_functions = Code: php_admin_value disable_functions ini_set Code: disable_functions ini_set no value PHP-Code: Das heist er hat diesen Wert "log_errors Off" von ini_set() übernommen, obwohl ini_set laut disable_funktions deaktiviert ist... --- phpinfo() zeigt immerdie korrekten Werte an, die Scripte werden allerdings nicht anch diesen vorgaben geparst... An was kann das liegen? Ist dies ein Bug in PHP5.1 oder liegt es an der x86_64 Architektur des Servers?! Hat PHP damit Probleme? Ich bin hier echt am verzweifeln... PS: Dieser Fehler tritt sowohl bei dem selbstkompilierten, als auch bei dem aus dem Paket installieren (apt-get) Apache auf... Der Apache ist übrigens auch auf dem neuesten Stand (2.2) |
| | |
| | #6 (permalink) |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 442 | Der Fehler ist allerdings seltsam. Hast du irgendwelche Warnungen in den Apache-Logs (access.log, error.log) beim Starten des Webservers oder beim Aufruf einer Seite? Bist du sicher, daß er diese php.ini auch verwendet und nicht an einem komplett anderen Ort sucht? Für mich klingt der Fehler nämlich so, als würde er die php.ini einfach mißachten.
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ |
| | |
| | #7 (permalink) |
![]() Registriert seit: 06.01.07 ![]() Likes: 0 | Das komisch ist ja das er den Rest richtig übernimmt: Code: NameVirtualHost *
<VirtualHost *>
ServerName blablubb.*
ServerAlias blablubb.*
ServerAdmin bla@blubb.org
DocumentRoot "/servers/clients/blablubb/web/"
<Directory /servers/clients/blablubb/web/>
Options NONE
AllowOverride ALL
Order ALLOW,DENY
ALLOW from ALL
</Directory>
php_admin_value open_basedir "/servers/clients/blablubb:/usr/share/"
php_admin_value upload_tmp_dir "/servers/clients/blablubb/res/upload_tmp/"
php_admin_value session.save_path "/servers/clients/blablubb/res/sessions/"
php_admin_value error_log "/servers/clients/blablubb/res/error.log"
php_admin_value disable_functions "ini_set"
</VirtualHost> ich hab übrigens folgende Versionen ausprobiert: Code: php_admin_value disable_functions "exec,shell_exec,ini_set,..." php_admin_value disable_functions "exec, shell_exec, ini_set, ..." php_admin_value disable_functions "exec shell_exec ini_set ..." php_admin_value disable_functions exec,shell_exec,ini_set,... php_admin_value disable_functions exec, shell_exec, ini_set, ... php_admin_value disable_functions exec shell_exec ini_set ... In der Error/Accesslog steht nichts was hierfür relevant wäre... Code: [Fri Apr 06 17:08:07 2007] [notice] Apache/2.2.4 (Unix) mod_ssl/2.2.4 OpenSSL/0.9.8a DAV/2 PHP/5.2.1 configured -- resuming normal operations [...] |
| | |
| | #8 (permalink) |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 442 | Bei disable_functions müssen die Funktionen mit Semikolon getrennt werden und die Liste muss in doppelten Anführungszeichen stehen. Code: php_admin_value disable_functions "ini_set;exec;system;shell_exec"
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ |
| | |
| | #9 (permalink) |
![]() Registriert seit: 06.01.07 ![]() Likes: 0 | er übernimmt es trotzdem nicht... ![]() Code: php_admin_value disable_functions "ini_set;exec;shell_exec;..." bzw php_admin_value disable_functions "ini_set; exec; shell_exec; ..." Jedoch konnte ich bis jetzt nicht herausfinden ob es in PHP5 nun implementiert wurde... [ EDIT: ] funktioniert es denn bei dir? Wenn ja schreib' mit mal bitte deine PHP-version dann teste ich es nochmal... |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| apache2.2.8 + php5.2.6 gibt seiten nicht sauber aus! | easteregg | Internet Allgemein | 0 | 06.06.08 22:48 |
| PHP5 als CGI... | keksinat0r | (Web-) Design und webbasierte Sprachen | 8 | 08.08.07 21:45 |
| Debian/Apache2+PHP4: Php-Skripte werden nicht mehr ausgeführt... | CentralWay | Linux/UNIX | 4 | 19.07.07 14:02 |
| post_vars() bei PHP5? | NMK | (Web-) Design und webbasierte Sprachen | 30 | 06.07.06 21:03 |
| Shell mit vhost (gratis *G*) | gmw | Internet Allgemein | 2 | 28.07.04 12:54 |