Apache en tant que root sur ubuntu
Ok j'ai besoin pour faire fonctionner mon serveur web Apache comme racine. Pour cela, j'ai tapé whoami; dans le terminal. Il me donne de sortie: racine. Mais quand je vérifie mon serveur apache fonctionnant comme un utilisateur root ou pas par la suite de l'exécution de script php: < ?php echo whoami; ?> Il me donne de sortie: personne ne. Donc des suggestions pour exécuter/connectez-vous en tant qu'utilisateur racine dans apache??
- Pourquoi voudriez-vous faire ಠ_ಠ
- Parce que je suis en train de virtualisation xen.Je suis à l'aide de LIBVIRT-PHP pour parler avec l'hyperviseur pour commencer à créer de détruire etc etc. Pour cela, j'ai utilisé ce script php: <?php $conn=libvirt_connect("xen:///"); $nom=libvirt_domain_lookup_by_id($conn,3); $dest=libvirt_domain_destroy($nom); echo $nom; ?> Quand j'execute ce qu'il me montre: Avertissement: libvirt_domain_destroy() [function.libvirt-domaine de détruire]: opération virDomainDestroy interdit pour un accès en lecture seule dans /opt/lampp/htdocs/xampp/shutdown.php sur la ligne 5
- Je ne pense pas que vous avez besoin pour exécuter Apache/PHP en tant que root pour se connecter à libvirt. Vous avez juste besoin de fournir des informations d'identification lors de la connexion.
Vous devez vous connecter pour publier un commentaire.
Je suggère la création d'un externe fichier PHP sur votre serveur et qui serait en mesure de gérer tout ce qui est lié à cette extension. Et puis, on pourrait appeler ce script avec
shell_exec
en combinaison avecsudo
.De cette façon, vous pourriez mettre votre serveur de l'utilisateur dans votre fichier sudoers et le laisser tourner php-cli en tant que root.
Ensuite, dans votre script, vous pouvez simplement utiliser:
Ce serait un beaucoup plus sécurité de la solution que l'exécution d'Apache en tant que root, qui, à mon avis, est un très mauvaise idée, même si vous savez ce que vous faites.
Si vous savez ce que vous faites, regardez le fichier /etc/apache2/envvars :
Vous pouvez personnaliser ces variables
Je écho aux préoccupations exécutant le processus apache en tant que root. C'est juste une mauvaise idée.
C'est pourquoi j'ai récemment publié un projet qui permet à PHP d'obtenir et d'interagir avec un vrai shell Bash. Obtenez-le ici: https://github.com/merlinthemagic/MTS
Après le téléchargement, il vous suffit d'utiliser le code suivant: