Maison > développement back-end > tutoriel php > Comment exécuter des commandes racine en PHP sur un système Linux avec l'autorité utilisateur Apache ?

Comment exécuter des commandes racine en PHP sur un système Linux avec l'autorité utilisateur Apache ?

Linda Hamilton
Libérer: 2024-11-16 18:38:03
original
485 Les gens l'ont consulté

How to Execute Root Commands in PHP on a Linux System with Apache User Authority?

Exécution des commandes racine via PHP

Problème :

Dans un système Linux avec l'autorité utilisateur Apache, comment pouvez-vous exécuter commandes shell qui nécessitent les privilèges root en utilisant PHP, sans recourir à des solutions ou sudoers dangereux règles ?

Solution 1 : Wrapper binaire (avec suid Bit)

  1. Créer un script Shell :

    • Créez un script contenant les commandes racine que vous souhaitez exécuter (par exemple, php_shell.sh).
  2. Définir les autorisations de script :

    • Définir root comme propriétaire du fichier et accorder uniquement les autorisations d'écriture pour rooter.
  3. Créer un binaire Wrapper :

    • Créez un programme C qui exécute le script shell avec des autorisations de bits suid.
  4. Compilez et définissez les autorisations :

    • Compilez le wrapper (wrapper.c) et accordez-le autorisations root, y compris le bit suid.

Alternative :

Si vous n'avez pas besoin de modifier fréquemment les commandes, vous peut les écrire directement dans le programme wrapper, éliminant ainsi le besoin d'un script externe.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal