Posez votre question Signaler

Problème utilisateur [Résolu]

flo74700 1850Messages postés 9 décembre 2006Date d'inscription 7 juin 2011Dernière intervention - Dernière réponse le 19 déc. 2006 à 19:12
bonjours je vous ecrit parceque j'ai un probleme de gestion d'utilisateur . j'ai monté un serveur web avec xampp , et enfaite mon problème c 'est qu'il faut le demarrer a chak fois ! mais je ne veux pa le demarrer sous le compter root , pour des resons de securité , je penser donc crée un utilisateur qui aura des droit de lancement d'apllication . comment puis je faire?
Lire la suite 

Problème utilisateur »

25 réponses
Réponse
+0
moins plus
Salut,

affiche le résultat de la commande
ps aux | grep 'httpd|apache'
et
grep -iE '(user|group) ' /chemin/vers/httpd.conf
flo74700 - 16 déc. 2006 à 09:50
voila la resultat :

admin@GRR:~$ ps aux | grep 'httpd|apache'
admin 2280 0.0 0.3 3316 704 pts/0 S+ 10:48 0:00 grep httpd|apache


admin@GRR:~$ grep -iE '(user|group) ' /opt/lampp/etc/httpd.conf
# If you wish httpd to run as a different user or group, you must run
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
User nobody
Group nogroup
# User home directories
admin@GRR:~$
Ajouter un commentaire
Réponse
+0
moins plus
La prémière commande montre que ton serveur n'est pas démarré ou qu'il a un autre nom

essaie
ps aux | grep 'htt'
En revanche dans ton fichier de configuration je vois que tu as nobody et nogroup

Tu n'as qu'à créer un group webgroup et un user webuser et écrire dans ton fichier de config
User webuser
Group webgroup
flo74700 - 16 déc. 2006 à 10:22
j'ai tapper ta commande et j'obtien cela :

GRR:~# ps aux |grep 'htt'
root 2365 0.1 7.9 27632 15252 ? Ss 11:16 0:00 /opt/lampp/bin/httpd -k start -DSSL -DPHP5
nobody 2371 0.0 5.6 24272 10792 ? S 11:16 0:00 /opt/lampp/bin/httpd -k start -DSSL -DPHP5
nobody 2379 0.0 6.4 27632 12364 ? S 11:16 0:00 /opt/lampp/bin/httpd -k start -DSSL -DPHP5
nobody 2380 0.0 6.4 27632 12348 ? S 11:16 0:00 /opt/lampp/bin/httpd -k start -DSSL -DPHP5
nobody 2381 0.0 6.4 27632 12348 ? S 11:16 0:00 /opt/lampp/bin/httpd -k start -DSSL -DPHP5
nobody 2382 0.0 6.4 27632 12348 ? S 11:16 0:00 /opt/lampp/bin/httpd -k start -DSSL -DPHP5
nobody 2383 0.0 6.4 27632 12348 ? S 11:16 0:00 /opt/lampp/bin/httpd -k start -DSSL -DPHP5
root 2484 0.0 0.3 3320 704 pts/0 R+ 11:22 0:00 grep htt
Ajouter un commentaire
Réponse
+0
moins plus
Par exemple chez moi ps aux | grep httpd m'affiche

root      4969  0.0  3.0 14120 7956 ?        Ss   08:42   0:00 /usr/local/httpd/bin/httpd -k start
daemon    4983  0.0  2.7 14120 7128 ?        S    08:42   0:00 /usr/local/httpd/bin/httpd -k start
daemon    4984  0.0  2.7 14120 7128 ?        S    08:42   0:00 /usr/local/httpd/bin/httpd -k start
daemon    4985  0.0  2.7 14120 7128 ?        S    08:42   0:00 /usr/local/httpd/bin/httpd -k start
daemon    4986  0.0  2.7 14120 7128 ?        S    08:42   0:00 /usr/local/httpd/bin/httpd -k start
daemon    4987  0.0  2.7 14120 7128 ?        S    08:42   0:00 /usr/local/httpd/bin/httpd -k start


On voit qu'il ya une exécution sous le compte root et les autres sous le compte daemon

en fait les exécutions sous le compte daemon ce sont des instances identiques qui attends les requêtes des clients
l'instance root n'est pas à l'écoute, en revanche elle est nécessaires à cause d'ouverture d'un port inférieur 1024, en l'occurence 80
Le rôle de l'instance root c'est de surveiller l'état (occupée ou attente)
Ajouter un commentaire
Réponse
+0
moins plus
Ben crée ton group et utilisateur

groupadd webgroup
useradd -g webgroup webuser -s /bin/false


et fait les modifications dans /opt/lampp/etc/httpd.conf
User webuser
Group webgroup
ensuite rédemarre ton serveur
/opt/lamp/bin/httpd restart
ps aux |grep 'htt' 
flo74700 - 16 déc. 2006 à 10:28
jpar en rdv avec un client vite fait , jte poste le resultat ds 30-35 min !!!
lami20j - 16 déc. 2006 à 10:31
j'ai fait une erreur

au lieu de
useradd -g webgroup webuser -s /bin/false

c'est
useradd -g webgroup -s /bin/false webuser 
flo74700 - 16 déc. 2006 à 11:01
j'ai donc crée mes utilisateur et groupes comme prevu par contre je voix pa ou tu veux que je modifie le httpd.conf
Ajouter un commentaire
Réponse
+0
moins plus
Dans ton fichier httpd.conf tu as ça

# If you wish httpd to run as a different user or group, you must run
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
User nobody
Group nogroup
# User home directories 
ben, tu dois avoir ça
# If you wish httpd to run as a different user or group, you must run
# User/Group: The name (or #number) of the user/group to run httpd as.
# It is usually good practice to create a dedicated user and group for
User webuser
Group webgroup
# User home directories 
Donc avec un editeur de texte tu fais les modifications
flo74700 - 16 déc. 2006 à 11:08
j'ai fait comme tu ma dit pour créer l'utilisateur et tt ! mais je n'arrive pa a me loguer ac i me sort un message dereur comme quoi
no directory, login in with HOME =/
Ajouter un commentaire
Réponse
+0
moins plus
Mais tu n'as pas à te logguer avec cet utilisateur.

Son rôle est seulement d'instanciés les fils d'apache sous le compte de webuser

-s /bin/false dans la commande de création veut dire qu'il n'y a pas de shell de connexion
Ajouter un commentaire
Réponse
+0
moins plus
oki mais donc je fait comment pour lancer mon application (xampp) avec un utilisateur autre que root . logiqueent je tappe la commande /opt/lampp/lampp start en etant root et maintenant je veux le faire sans etre root
!
Ajouter un commentaire
Réponse
+0
moins plus
Alors tu ne lit pas ce que j'ai écrit

l'instance root n'est pas à l'écoute, en revanche elle est nécessaires à cause d'ouverture d'un port inférieur 1024, en l'occurence 80

le fait que c'est root qui démarre un service n'est pas une faille au contraire

ça sera bien que les tâches d'administration soient faites par root et pas par un autre utilisateur

Ajouter un commentaire
Réponse
+0
moins plus
si plusieurs service s'exécute sur l'identite de même utilisateurs ça peut être une faille.
si le seul service qui tourne chez toi c'est apache alors tu n'as pas vraiment besoin de changer, mais vaut mieux le faire pour prendre des bons habitudes :-))
flo74700 - 16 déc. 2006 à 11:29
et donc maintenant pour le demarrer je fiat quoi ?
sous quel utilisateur?
Ajouter un commentaire
Réponse
+0
moins plus
en root bien sûr :-))

mais tu verras que la commande ps aux | grep htt te montrera que les fils de processus sont sous l'identité de webuser

donc pas d'inquiètude :-))
Ajouter un commentaire
Réponse
+0
moins plus
ué nan mais moi le prob c que mon patron voulai que je le lance depuis un utilisateur !!! dc i va me prendre la tete si ca le fait pa !
si je crée un utilisateur et que je le mais ds le group webrgoup?
Ajouter un commentaire
Réponse
+0
moins plus
explique à ton patron que pour les ports inférieurs à 1024 c'est le root qui à accès

donc où tu changes le port d'écoute de ton apache et tu donnes des droits d'exécution à ton utilisateur à ton service httpd

ou tu démarre le service en root

explique lui qu'il n'y a pas de problèmes s'il fait ça (têtu ton patron :-))

je dois partir maintenant
Ajouter un commentaire
Réponse
+0
moins plus
Re,

dit à ton patron (ça j'ai oublié de te dire) que même si on accords à un utilisateur quelconque de démarrer apache (à ne pas oublier de changer le port dans le fichier de configuration, donc > 1024), il y a toujours une instance root de httpd
Ajouter un commentaire
Réponse
+0
moins plus
Sinon tu peux faire un script shell avec un bit suid qui permettra à ton utilisateur de lancer apache comme s'il était root. Attention que ce script soit uniquement accessible à cet utilisateur.

Bonne chance
Ajouter un commentaire
Réponse
+0
moins plus
Salut,

bit suid qui permettra à ton utilisateur de lancer apache comme s'il était root

Oups, j'ai omis cette possilité, puisque en fait j'ai mal compris la question :-)
Il s'agissait plutôt de démarrage de daemon et pas des processus fils de httpd

Attention que ce script soit uniquement accessible à cet utilisateur

En ce cas il me semble qu'il faut

- soit utiliser SGID pour le groupe webgroup dont le seul utilisateur est webuser

chgrp -v webgroup /opt/lampp/bin/httpd
chmod -v 2755 /opt/lampp/bin/httpd
Voir aussi les droits pour les logs

- soit utiliser SUID pour l'utilisateur webuser, mais dans ce cas il me semble qu'il faut utilser les ACL's securite les access control lists acls

1. montage de la partition avec l'option acl
2. installation de paquet acl
3. setfacl -m user:webuser:4755 /opt/lampp/bin/httpd


A ne pas oublier qu'il reste toujours le problème du port 80

avec Listen 80 ça ne marche pas malgré le SGID ou SUID


Merci de me l'avoir rappeler Miss :-)
Ajouter un commentaire
Réponse
+0
moins plus
bonjours apres un long week end de repos et une grosse maladie qui commence a coz du froid ! jai toujours pa de solution pour lancer mes programmes (xampp) en tant qu'utilisateur . la seul choz que je veux est de faire /opt/lampp/lampp start depuis un utilisateur bien definie (1 seul utilisateur peu faire cette commande) mais un utilisateur autre que root !!!
comment faut t'il que je fasse jai essayé ac sudo ca marche pa !
Ajouter un commentaire
Réponse
+0
moins plus
Enfaite j'ai trouver bocou plus simple pour demarré un programme sans me logguer il faut modifié le rc.local ets i rajouté les lignes qui m'interresse !!! et opla ca marche ppr pepouffff!!! c bo l'informatique quand ca marche par contre la c 18h j'ai tro mal o epaule a tapper sur c merde de bou de plastik ac 103 touches !!! vivement se soir le ti massage de madame !!! allé tcho et encore merci!!!
lami20j - 19 déc. 2006 à 19:12
Salut,

Si tu voulais seulement l'exécuter au démarrage il fallait peut être posé la question autrement, et t'avais déjà la réponse depuis longtemps :-)

En revanche la satisfaction et totale puisque tu as trouve par toi même.

Ajouter un commentaire
Ce document intitulé « Problème utilisateur » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook