Accorder permission root a www-data
Résolu/Fermé
helmii
Messages postés
28
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
8 juillet 2013
-
28 juin 2013 à 16:17
[Dal] Messages postés 6202 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 14 janvier 2025 - 1 juil. 2013 à 18:28
[Dal] Messages postés 6202 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 14 janvier 2025 - 1 juil. 2013 à 18:28
A voir également:
- Www-data to root
- App data - Guide
- Qwerty to azerty - Guide
- Kingo root - Télécharger - Divers Utilitaires
- Www waptrik.com - Télécharger - Divers TV & Vidéo
- Welcome to nginx! ✓ - Forum Applis & Sites
7 réponses
gohlink
Messages postés
50
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
16 décembre 2015
12
28 juin 2013 à 16:22
28 juin 2013 à 16:22
Bonjour,
Il n'est pas nécessaire de donner un accès root à www-data, il suffit que www-data puisse écrire dans les bons fichiers uniquement.
Deux manières :
- Indiquer www-data comme propriétaire du fichier avec la commande chown
- Indiquer les fichiers et/ou dossier comme appartenant au groupe www-data (chown) et donner la permission d'écriture au groupe (chmod g+w)
Il n'est pas nécessaire de donner un accès root à www-data, il suffit que www-data puisse écrire dans les bons fichiers uniquement.
Deux manières :
- Indiquer www-data comme propriétaire du fichier avec la commande chown
- Indiquer les fichiers et/ou dossier comme appartenant au groupe www-data (chown) et donner la permission d'écriture au groupe (chmod g+w)
helmii
Messages postés
28
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
8 juillet 2013
28 juin 2013 à 16:27
28 juin 2013 à 16:27
merci pour ta reponse :)
je vois que ce n 'est pas necessaire de donner un accès root a www-data d'après ce que t as dit mais c'est faisable je pense nn?ce que je comprend pas c'est ou est la faute dans mon code :/
je vois que ce n 'est pas necessaire de donner un accès root a www-data d'après ce que t as dit mais c'est faisable je pense nn?ce que je comprend pas c'est ou est la faute dans mon code :/
gohlink
Messages postés
50
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
16 décembre 2015
12
28 juin 2013 à 16:47
28 juin 2013 à 16:47
Désolé, j'ai juste rectifié ton titre sans même porter attention à ton problème réel :)
D'ailleurs, ce que j'ai dit plus haut est faux. Avec l'erreur Insecure $ENV{PATH}, Perl indique soit que ton PATH n'est pas initialisé, soit qu'un des dossiers du PATH n'est pas protégé en écriture (d'où l'idée qu'il ne faut pas suivre ce que je décrits plus haut).
Tu peux essayer :
$ENV{PATH} = "/dossier/ou/se/trouve/hostapd/"
exec 'hostapd', '/etc/hostapd-1.0/hostapd/hostapd.conf';
Je ne suis pas expert PERL, j'ai juste suivi la doc : http://www.washington.edu/perl5man/pod/perlsec.html
D'ailleurs, ce que j'ai dit plus haut est faux. Avec l'erreur Insecure $ENV{PATH}, Perl indique soit que ton PATH n'est pas initialisé, soit qu'un des dossiers du PATH n'est pas protégé en écriture (d'où l'idée qu'il ne faut pas suivre ce que je décrits plus haut).
Tu peux essayer :
$ENV{PATH} = "/dossier/ou/se/trouve/hostapd/"
exec 'hostapd', '/etc/hostapd-1.0/hostapd/hostapd.conf';
Je ne suis pas expert PERL, j'ai juste suivi la doc : http://www.washington.edu/perl5man/pod/perlsec.html
helmii
Messages postés
28
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
8 juillet 2013
28 juin 2013 à 17:04
28 juin 2013 à 17:04
je vais l essayer maintenant :) merci bcp
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
helmii
Messages postés
28
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
8 juillet 2013
1 juil. 2013 à 12:51
1 juil. 2013 à 12:51
salut :)) merci beacoup pour ton aide sa a marché!!je voulais savoir est t-il de meme pour executer la commande:
sudo ifdown wlan1
si oui quel est le chemin du program ifdown j ai cherché mais en vain!!!merci pour l'aide :))
sudo ifdown wlan1
si oui quel est le chemin du program ifdown j ai cherché mais en vain!!!merci pour l'aide :))
gohlink
Messages postés
50
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
16 décembre 2015
12
1 juil. 2013 à 13:24
1 juil. 2013 à 13:24
Salut,
Tu peux te servir de la commande whereis pour trouver un exécutable
Tu peux te servir de la commande whereis pour trouver un exécutable
$ whereis ifdown ifdown: /sbin/ifdown /usr/share/man/man8/ifdown.8.gz
helmii
Messages postés
28
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
8 juillet 2013
1 juil. 2013 à 14:28
1 juil. 2013 à 14:28
pour la commande de hostapd j ai saisi les lignes suivantes :
$ENV{PATH} = "/etc/hostapd-1.0/hostapd/";
exec 'hostapd', '/etc/hostapd-1.0/hostapd/hostapd.conf';
et sa marche très bien.
Pour la commande ifdown j ai saisi:
$ENV{PATH} = "/sbin/";
exec 'ifdown', 'wlan1';
Mais sa ne marche pas :/
$ENV{PATH} = "/etc/hostapd-1.0/hostapd/";
exec 'hostapd', '/etc/hostapd-1.0/hostapd/hostapd.conf';
et sa marche très bien.
Pour la commande ifdown j ai saisi:
$ENV{PATH} = "/sbin/";
exec 'ifdown', 'wlan1';
Mais sa ne marche pas :/
[Dal]
Messages postés
6202
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
14 janvier 2025
1 097
Modifié par [Dal] le 1/07/2013 à 14:54
Modifié par [Dal] le 1/07/2013 à 14:54
Salut helmii,
En faisant :
Tu écrases la valeur de la variable d'environnement "PATH", dont tu perds le contenu, alors que les emplacements énumérés dans cette variable sont nécessaires au bon fonctionnement du système (ce qui explique sans doutes que ifdown ne fonctionne pas).
Dans la variable PATH, les répertoires sont séparés par des ":". Si tu dois ajouter temporairement un répertoire à la variable PATH, tu peux le faire en ajoutant une nouvelle entrée séparée par ":", précédant le contenu déjà existant, ou ajoutée à la suite. Par exemple, pour l'ajouter à la suite, tu fais comme cela :
Ton PATH devrait déjà contenir /sbin/, sous Linux, et il ne devrait pas être nécessaire de l'ajouter au PATH.
Pour le vérifier, fais cela dans ton terminal:
Dal
En faisant :
$ENV{PATH} = "/etc/hostapd-1.0/hostapd/";
Tu écrases la valeur de la variable d'environnement "PATH", dont tu perds le contenu, alors que les emplacements énumérés dans cette variable sont nécessaires au bon fonctionnement du système (ce qui explique sans doutes que ifdown ne fonctionne pas).
Dans la variable PATH, les répertoires sont séparés par des ":". Si tu dois ajouter temporairement un répertoire à la variable PATH, tu peux le faire en ajoutant une nouvelle entrée séparée par ":", précédant le contenu déjà existant, ou ajoutée à la suite. Par exemple, pour l'ajouter à la suite, tu fais comme cela :
$ENV{PATH} .= ":/etc/hostapd-1.0/hostapd/";
Ton PATH devrait déjà contenir /sbin/, sous Linux, et il ne devrait pas être nécessaire de l'ajouter au PATH.
Pour le vérifier, fais cela dans ton terminal:
me@mymachine:~$ echo $PATH
Dal
helmii
Messages postés
28
Date d'inscription
mercredi 19 juin 2013
Statut
Membre
Dernière intervention
8 juillet 2013
1 juil. 2013 à 15:27
1 juil. 2013 à 15:27
salut Dal,
t'as raison a propos sbin il existe deja dans $PATH.
quand j ai mis $ENV{PATH} .= ":/etc/hostapd-1.0/hostapd/";
comme tu me l'as dit meme le hostapd ne veut plus fonctionner!! :/ je remet
$ENV{PATH} = "/etc/hostapd-1.0/hostapd/"; il fonctionne très bien et reste le problème de :
exec 'ifdown' , 'wlan1';
exec 'ifup' , 'wlan1';
t'as raison a propos sbin il existe deja dans $PATH.
quand j ai mis $ENV{PATH} .= ":/etc/hostapd-1.0/hostapd/";
comme tu me l'as dit meme le hostapd ne veut plus fonctionner!! :/ je remet
$ENV{PATH} = "/etc/hostapd-1.0/hostapd/"; il fonctionne très bien et reste le problème de :
exec 'ifdown' , 'wlan1';
exec 'ifup' , 'wlan1';
[Dal]
Messages postés
6202
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
14 janvier 2025
1 097
1 juil. 2013 à 18:28
1 juil. 2013 à 18:28
Je ne comprend pas bien pourquoi veux changer la variable d'environnement juste pour exécuter "hostapd". ne peux-tu pas simplement le lancer en indiquant le chemin de l'exécutable dans l'appel à exec lui-même.
Par ailleurs, dans ton message d'origine tu dis que tu utilises "system", puis subitement, tu parles après de "exec". Tu dois avoir tes raisons pour utiliser "exec", qui n'est absolument pas équivalent de "system" :
https://perldoc.perl.org/functions/exec
The exec function executes a system command and never returns; use system instead of exec if you want it to return.
Enfin, si tu dois vraiment modifier le PATH pour une raison qui m'échappe, et que tu as des problèmes d'exécution en postfixant ta modification, essaye en la préfixant :
Dal
exec '/etc/hostapd-1.0/hostapd/hostapd', '/etc/hostapd-1.0/hostapd/hostapd.conf';
Par ailleurs, dans ton message d'origine tu dis que tu utilises "system", puis subitement, tu parles après de "exec". Tu dois avoir tes raisons pour utiliser "exec", qui n'est absolument pas équivalent de "system" :
https://perldoc.perl.org/functions/exec
The exec function executes a system command and never returns; use system instead of exec if you want it to return.
Enfin, si tu dois vraiment modifier le PATH pour une raison qui m'échappe, et que tu as des problèmes d'exécution en postfixant ta modification, essaye en la préfixant :
$ENV{PATH} = "/etc/hostapd-1.0/hostapd/:" . $ENV{PATH};
Dal