Beim Versuch, Shell-Skripte auszuführen, die Sudo-Berechtigungen von PHP aus erfordern, stoßen Benutzer oft auf das Problem, dass sie zur Eingabe eines Passworts aufgefordert werden das Fehlen einer Befehlszeilenaufforderung wie bei der manuellen Ausführung von sudo. Dieser Artikel befasst sich mit dieser Herausforderung, indem er eine Lösung untersucht, die eine passwortlose Sudo-Ausführung in PHP ermöglicht.
Um dieses Problem zu beheben, können wir die Sudoers-Datei mit dem Visudo-Editor ändern . Die folgenden Schritte beschreiben den Prozess:
sudo visudo
Fügen Sie im Editor eine Regel zur Datei hinzu, die es dem Webserverbenutzer ermöglicht, das Skript ohne Passwortabfrage auszuführen. Die Regel sollte das folgende Format haben:
www-data ALL=NOPASSWD: /path/to/script
In dieser Regel stellt „www-data“ den Webserverbenutzer dar, „ALL“ ermöglicht dem Benutzer die Ausführung eines beliebigen Befehls, „NOPASSWD“ macht dies überflüssig ein Passwort, und „/path/to/script“ gibt das Skript an, das ohne Passwort ausgeführt werden kann.
Durch das Hinzufügen dieser Regel zur sudoers-Datei erhält der Webserver-Benutzer die notwendigen Berechtigungen zum Ausführen des sudo-geschütztes Shell-Skript von PHP ohne Eingabe eines Passworts.
Das obige ist der detaillierte Inhalt vonWie kann ich Sudo-geschützte Shell-Skripte von PHP aus ohne Passwortabfrage ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!