Maison  >  Article  >  développement back-end  >  Comment puis-je exécuter des scripts Shell protégés par Sudo à partir de PHP sans invite de mot de passe ?

Comment puis-je exécuter des scripts Shell protégés par Sudo à partir de PHP sans invite de mot de passe ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-11-18 21:56:02729parcourir

How Can I Execute Sudo-Protected Shell Scripts from PHP Without Password Prompts?

Exécuter des scripts shell protégés par SUDO en PHP

L'intégration de scripts shell dans les applications PHP peut améliorer les fonctionnalités, mais rencontrer des problèmes d'authentification avec les scripts nécessitant SUDO les privilèges peuvent être un obstacle. Pour exécuter ces scripts de manière transparente sans invite de mot de passe, envisagez la solution suivante :

Au lieu de transmettre le mot de passe via l'appel SUDO, modifiez le fichier sudoers (/etc/sudoers) à l'aide de la commande 'visudo'. Ajoutez une règle qui autorise l'utilisateur du serveur Web (généralement « www-data ») à exécuter le script spécifique sans mot de passe :

www-data ALL=NOPASSWD: /path/to/script

Cela permet à l'utilisateur d'exécuter le script via le « shell_exec » de PHP sans le besoin de saisie manuelle du mot de passe, permettant une exécution efficace du script.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn