Ajout d'un user sans useradd
Résolu/Fermé
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
-
2 avril 2008 à 15:54
mamiemando Messages postés 33372 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 22 novembre 2024 - 16 avril 2008 à 10:09
mamiemando Messages postés 33372 Date d'inscription jeudi 12 mai 2005 Statut Modérateur Dernière intervention 22 novembre 2024 - 16 avril 2008 à 10:09
A voir également:
- Ajout d'un user sans useradd
- Ajout rapide snap - Forum Snapchat
- Ajout snap sans rien - Forum Snapchat
- Ajout rapide snap - Forum Snapchat
- Ajouter un profil netflix payant - Accueil - Guide streaming
- Comment enlever la limite d'ajout sur snapchat - Forum Snapchat
21 réponses
dubcek
Messages postés
18755
Date d'inscription
lundi 15 janvier 2007
Statut
Contributeur
Dernière intervention
14 novembre 2024
5 621
2 avril 2008 à 16:44
2 avril 2008 à 16:44
hello
le 1 ne me semble pas possible
le 2 est très dangereux
le 3 avec des ACLs me semble la meilleure solution : http://www.commentcamarche.net/faq/sujet 3773 securite les access control lists acls
le 1 ne me semble pas possible
le 2 est très dangereux
le 3 avec des ACLs me semble la meilleure solution : http://www.commentcamarche.net/faq/sujet 3773 securite les access control lists acls
mamiemando
Messages postés
33372
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 novembre 2024
7 802
2 avril 2008 à 16:52
2 avril 2008 à 16:52
En fait tout dépend du genre d'utilisateur que tu veux créer. Si c'est vraiment un utilisateur sur la machine il faudra au choix :
1- lancer la création de l'utilisateur en tant que root (le script php utilisant la commande sudo + ajouter l'utilisateur internet comme "sudoer") (pas terrible)
2- lancer un script avec un bit suid (dangereux)
3- changer les droits sur /etc/passwd (à éviter à tout prix !!)
S'il s'agit de créer des comptes utilisateurs pour des internautesce qui me paraît plus logique c'est d'utiliser des htaccess (il suffit que ton script php crée les bons .htaccess dans chaque répertoires utilisateurs et utilise la commande htpasswd) :
http://www.infres.enst.fr/~danzart/frames/htaccess.html
S'il s'agit de comptes utilisateurs sur la machine les htaccess ne te seront d'aucune aide, la méthode (1). Sachant que c'est pas super car un utilisateur malveillant pourra créer plein de comptes...
Bonne chance
1- lancer la création de l'utilisateur en tant que root (le script php utilisant la commande sudo + ajouter l'utilisateur internet comme "sudoer") (pas terrible)
2- lancer un script avec un bit suid (dangereux)
3- changer les droits sur /etc/passwd (à éviter à tout prix !!)
S'il s'agit de créer des comptes utilisateurs pour des internautesce qui me paraît plus logique c'est d'utiliser des htaccess (il suffit que ton script php crée les bons .htaccess dans chaque répertoires utilisateurs et utilise la commande htpasswd) :
http://www.infres.enst.fr/~danzart/frames/htaccess.html
S'il s'agit de comptes utilisateurs sur la machine les htaccess ne te seront d'aucune aide, la méthode (1). Sachant que c'est pas super car un utilisateur malveillant pourra créer plein de comptes...
Bonne chance
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
5
2 avril 2008 à 17:09
2 avril 2008 à 17:09
Oui, ce que je veux, c'est créer des comptes utilisateurs sur la machine.
Je pense pouvoir utiliser un des répertoires utilisateurs avec des .htaccess, il me suffirait, de créer un répertoire à la base de mon site et de créer des sous répertoires avec le nom de l'utilisateur.
Je vois que d'autres solutions s'offrent à moi.
Je vais lire plus en détail l'article sur les ACL, merci Dubcek.
Et merci mamiemando, car je pense que je peux aussi adopter cette solution.
Si quelqu'un veut proposer une solution, je suis toute ouïe!!
et merci encore!
Je pense pouvoir utiliser un des répertoires utilisateurs avec des .htaccess, il me suffirait, de créer un répertoire à la base de mon site et de créer des sous répertoires avec le nom de l'utilisateur.
Je vois que d'autres solutions s'offrent à moi.
Je vais lire plus en détail l'article sur les ACL, merci Dubcek.
Et merci mamiemando, car je pense que je peux aussi adopter cette solution.
Si quelqu'un veut proposer une solution, je suis toute ouïe!!
et merci encore!
mamiemando
Messages postés
33372
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 novembre 2024
7 802
2 avril 2008 à 17:16
2 avril 2008 à 17:16
Attention les htaccess n'ont un sens que pour des utiisateurs se connectant sur le serveur apache. Ce ne sont donc pas des utilisateurs sur la machine proprement dit. S'il s'agit bien d'utilisateur sur la machine c'est sans doute la solution de dubcek qui répond le mieux à ton problème (personnellement je ne connais pas trop les ACL).
Bonne chance
Bonne chance
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
2 avril 2008 à 17:22
2 avril 2008 à 17:22
Salut Miss,
personnellement je ne connais pas trop les ACL
pourtant t'es dédans ;-))
exemple d'utilisation
personnellement je ne connais pas trop les ACL
pourtant t'es dédans ;-))
exemple d'utilisation
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
mamiemando
Messages postés
33372
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 novembre 2024
7 802
2 avril 2008 à 18:55
2 avril 2008 à 18:55
Ah mais diantre !! Tu as raison !!! :-) Je viens même de découvrir que j'étais modo et que j'avais été sollicitée par c plus electronic :p
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
5
3 avril 2008 à 09:15
3 avril 2008 à 09:15
Merci.
Finalement, j'ai vraiment besoin de créer un compte utilisateur sur la machine et non pas sur le serveur apache.
On m'a proposé une autre solution aussi, cette solution s'appelle Pam...
Je vais faire quelques recherches sur le net...
Finalement, j'ai vraiment besoin de créer un compte utilisateur sur la machine et non pas sur le serveur apache.
On m'a proposé une autre solution aussi, cette solution s'appelle Pam...
Je vais faire quelques recherches sur le net...
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
3 avril 2008 à 09:31
3 avril 2008 à 09:31
Salut,
Voilà pour PAM.
Linux-PAM est un système de bibliothèques qui gèrent les tâches d'authentification des applications (services) sur le système. Les bibliothèques fournissent une interface d'abstraction stable (Application Programming Interface - API) qui accorde les privilèges aux programmes (comme login(1) et su(1)) en ajournant la réalisation des tâches standard d'authentification
Ce n'était pas ce que tu as demandé. Tu parles des droits et pas des protocols d'authentification.
Il t'on mal conseillé ou tu as posé la mauvaise question ;-))
Voilà pour PAM.
Linux-PAM est un système de bibliothèques qui gèrent les tâches d'authentification des applications (services) sur le système. Les bibliothèques fournissent une interface d'abstraction stable (Application Programming Interface - API) qui accorde les privilèges aux programmes (comme login(1) et su(1)) en ajournant la réalisation des tâches standard d'authentification
Ce n'était pas ce que tu as demandé. Tu parles des droits et pas des protocols d'authentification.
Il t'on mal conseillé ou tu as posé la mauvaise question ;-))
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
5
3 avril 2008 à 09:42
3 avril 2008 à 09:42
Salut,
Le problème, c'est que je n'ai pas donnée assez de détails.
Je t'explique, sur le site, des utilisateurs vont pouvoir s'inscrire dans une base de données, à cette inscription, un compte utilisateur est créé sur une machine.
Donc une première question est de savoir comment automatiser cette tâche sans se connecter en root. Pour cette question je crois que c'est impossible, c'est l'administrateur qui devrai créer le compte pour lui.
Ensuite, suite à ça, les utilisateurs pourront se connecter sur le site, envoyer des données dans leur /home. Là, un logiciel s'occupe de leurs données pour en générer d'autres, qu'il pourront par la suite récupérer via un lien.
En ce qui concerne, les droits, la question ne se posent plus puisque les comptes utilisateurs seront créé par l'administrateur. un petit chmod 700 et on n'en parle plus...
Au niveau de PAM, je vois pas en quoi ce logiciel peut m'aider... Peut-être niveau sécurité a priori...
Le problème, c'est que je n'ai pas donnée assez de détails.
Je t'explique, sur le site, des utilisateurs vont pouvoir s'inscrire dans une base de données, à cette inscription, un compte utilisateur est créé sur une machine.
Donc une première question est de savoir comment automatiser cette tâche sans se connecter en root. Pour cette question je crois que c'est impossible, c'est l'administrateur qui devrai créer le compte pour lui.
Ensuite, suite à ça, les utilisateurs pourront se connecter sur le site, envoyer des données dans leur /home. Là, un logiciel s'occupe de leurs données pour en générer d'autres, qu'il pourront par la suite récupérer via un lien.
En ce qui concerne, les droits, la question ne se posent plus puisque les comptes utilisateurs seront créé par l'administrateur. un petit chmod 700 et on n'en parle plus...
Au niveau de PAM, je vois pas en quoi ce logiciel peut m'aider... Peut-être niveau sécurité a priori...
mamiemando
Messages postés
33372
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 novembre 2024
7 802
3 avril 2008 à 10:03
3 avril 2008 à 10:03
Hum si ce n'est pas indiscret, que sont sensés pouvoir faire les utilisateurs sur cette machine ?
lami20j
Messages postés
21331
Date d'inscription
jeudi 4 novembre 2004
Statut
Modérateur, Contributeur sécurité
Dernière intervention
30 octobre 2019
3 569
3 avril 2008 à 10:11
3 avril 2008 à 10:11
Salut,
vont pouvoir s'inscrire dans une base de données, à cette inscription, un compte utilisateur est créé sur une machine.
Je ne pense pas que c'est une bonne solution.
Il me semble que le nombre d'utilisateurs est limité à 60000
Je pense plutôt que tu dois créer un répertoire pour chaque utilisateur quelque part dans ton système et ensuite grâce aux ACL tu fixes les droits d'accèss
Par exemple
le répertoire père qui apartiendra à un utilisateur sur le server (pas à root) qui aura tous les droits de lecture est écriture
mdkir /home/server_user
ensuite le script de création des répertoire + attributions des droits pour chaque inscription sera exécuter sous l'identité de ce utilisateur
vont pouvoir s'inscrire dans une base de données, à cette inscription, un compte utilisateur est créé sur une machine.
Je ne pense pas que c'est une bonne solution.
Il me semble que le nombre d'utilisateurs est limité à 60000
# Min/max values for automatic uid selection in useradd # UID_MIN 1000 UID_MAX 60000
Je pense plutôt que tu dois créer un répertoire pour chaque utilisateur quelque part dans ton système et ensuite grâce aux ACL tu fixes les droits d'accèss
Par exemple
le répertoire père qui apartiendra à un utilisateur sur le server (pas à root) qui aura tous les droits de lecture est écriture
mdkir /home/server_user
ensuite le script de création des répertoire + attributions des droits pour chaque inscription sera exécuter sous l'identité de ce utilisateur
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
5
3 avril 2008 à 10:27
3 avril 2008 à 10:27
Pour répondre à mamiemando, c'est un serveur d'application.
Mais sachant qu'il y a des restrictions... Je vais devoir utiliser un gestionnaire de queue. Je ne veux pas que pleins d'utilisateurs se connectent en même temps, envoient leurs données et "squatent" la machine avec pleins de jobs de lancés... (et finisse par cramer...)
Mais sachant qu'il y a des restrictions... Je vais devoir utiliser un gestionnaire de queue. Je ne veux pas que pleins d'utilisateurs se connectent en même temps, envoient leurs données et "squatent" la machine avec pleins de jobs de lancés... (et finisse par cramer...)
mamiemando
Messages postés
33372
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 novembre 2024
7 802
3 avril 2008 à 13:35
3 avril 2008 à 13:35
Le gestionnaire de queue peut être fait au niveau php je pense (puisqu'il s'agit d'un serveur d'application). Dans ce cas, les utilisateurs n'ont pas besoin d'avoir un login sur la machine, juste sur le site. Moins tu laisses de liberté à l'utilisateur, moins il est susceptible de faire des bêtises ;-)
Bonne chance
Bonne chance
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
5
3 avril 2008 à 14:41
3 avril 2008 à 14:41
Ah bon?
tu en es certain?
La machine contient pas mal de CPU, les jobs qui seront lancé seront vérifiés avant tout, et le gestionnaire de queue va mettre des restrictions pour que les utilisateurs n'utilise pas tout.
Il peut y avoir plusieurs tâches par utilisateur mais si tout les CPU sont occupés, il va falloir placé le job de l'utilisateur dans la file d'exécution...
Faire ça au niveau PHP me parait impossible...
Niveau des comptes, le temps que ça arrive à 60.000, on a encore du temps devant nous, ne t'inquiète pas! ^^
Ce soir, je pars demandé conseil auprès de mes enseignants, plus précidément à l'administrateur réseaux, et à mon prof d'unix.
Je vous tiens au courant.
tu en es certain?
La machine contient pas mal de CPU, les jobs qui seront lancé seront vérifiés avant tout, et le gestionnaire de queue va mettre des restrictions pour que les utilisateurs n'utilise pas tout.
Il peut y avoir plusieurs tâches par utilisateur mais si tout les CPU sont occupés, il va falloir placé le job de l'utilisateur dans la file d'exécution...
Faire ça au niveau PHP me parait impossible...
Niveau des comptes, le temps que ça arrive à 60.000, on a encore du temps devant nous, ne t'inquiète pas! ^^
Ce soir, je pars demandé conseil auprès de mes enseignants, plus précidément à l'administrateur réseaux, et à mon prof d'unix.
Je vous tiens au courant.
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
5
14 avril 2008 à 14:21
14 avril 2008 à 14:21
Bon, j'ai résolu mon problème toute seule....
petite explication brève, j'ai utilisé sudo et j'ai accordé le droit d'utiliser la commande useradd à un utilisateur en modifiant le fichier /etc/sudoers.
Et voilà, problème résolu.... (décidément, je cherche toujours compliqué...)
petite explication brève, j'ai utilisé sudo et j'ai accordé le droit d'utiliser la commande useradd à un utilisateur en modifiant le fichier /etc/sudoers.
Et voilà, problème résolu.... (décidément, je cherche toujours compliqué...)
mamiemando
Messages postés
33372
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 novembre 2024
7 802
14 avril 2008 à 16:28
14 avril 2008 à 16:28
J'espère juste que n'importe qui n'est pas susceptible de créer 23000 comptes sur ta machine (et de s'y connecter ensuite en ssh ou en telnet)
Bonne chance
Bonne chance
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
5
14 avril 2008 à 16:40
14 avril 2008 à 16:40
Ne t'inquiète pas, de toute façon, ce n'est plus possible.
En effet, mon script marche lorsque je le lance dans un terminal (à partir de mon nom d'utilisateur) mais ne fonctionne pas à partir d'une page PHP (en utilisant system ou exec) car l'utilisateur qui fait tourner apache n'est pas moi (d'après ce que j'ai vu) mais nobody...
Et modifier le fichier /etc/sudoers avec nobody ne fonctionne pas.
Il faudrait de plus, installer suexec...
Et là, je ne m'y connais pas assez pour modifier tout ça, j'aurais peur de créer de grosses failles de sécurité....
En effet, mon script marche lorsque je le lance dans un terminal (à partir de mon nom d'utilisateur) mais ne fonctionne pas à partir d'une page PHP (en utilisant system ou exec) car l'utilisateur qui fait tourner apache n'est pas moi (d'après ce que j'ai vu) mais nobody...
Et modifier le fichier /etc/sudoers avec nobody ne fonctionne pas.
Il faudrait de plus, installer suexec...
Et là, je ne m'y connais pas assez pour modifier tout ça, j'aurais peur de créer de grosses failles de sécurité....
mamiemando
Messages postés
33372
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 novembre 2024
7 802
14 avril 2008 à 19:48
14 avril 2008 à 19:48
Si j'ai bien compris tu auras donc besoin de lancer toi-même ce script à chaque fois à la main ?
Et là, je ne m'y connais pas assez pour modifier tout ça, j'aurais peur de créer de grosses failles de sécurité....
Effectivement il faut éviter d'intervenir dans ce genre de fichier (idéalement jamais)
Et là, je ne m'y connais pas assez pour modifier tout ça, j'aurais peur de créer de grosses failles de sécurité....
Effectivement il faut éviter d'intervenir dans ce genre de fichier (idéalement jamais)
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
5
15 avril 2008 à 09:40
15 avril 2008 à 09:40
Oui, je devrais lancer le script à la main, dommage... ^^
mamiemando
Messages postés
33372
Date d'inscription
jeudi 12 mai 2005
Statut
Modérateur
Dernière intervention
22 novembre 2024
7 802
15 avril 2008 à 19:12
15 avril 2008 à 19:12
Du coup je ne vois pas trop l'avantage comparé à adduser mais bon :-)
gazelle8
Messages postés
82
Date d'inscription
vendredi 16 novembre 2007
Statut
Membre
Dernière intervention
31 décembre 2009
5
16 avril 2008 à 09:59
16 avril 2008 à 09:59
Mon script devait ajouter un utilisateur sans passer par les droits root à l'origine. Et ce script, je le lançais dans une de mes page web lorsqu'un utilisateur s'enregistrait (pour lui créer un compte sur la machine).
Comme ce n'est pas possible, les comptes seront créés préalablement par un script lancer qu'une seule fois en mode root. Ensuite, il suffira d'attribuer le dernier compte libre de la machine au prochain utilisateur qui s'enregistre.
Voilà! :)
Comme ce n'est pas possible, les comptes seront créés préalablement par un script lancer qu'une seule fois en mode root. Ensuite, il suffira d'attribuer le dernier compte libre de la machine au prochain utilisateur qui s'enregistre.
Voilà! :)