script de création de user - Linux et OS Alternatifs
Marsh Posté le 12-08-2002 à 19:01:43
tous les utilisateurs iront ds le groupe maildrop
sans shell
Marsh Posté le 12-08-2002 à 19:02:42
on va supposer qu'ils sont dans le groupe groupie
# $1 sera le nom et $2 le pass
adduser -g groupie -s /bin/false -p `perl -e 'crypt($2,'AB''` $1
par contre c'est pas une super idée de faire un script qui va ajouter des entrées dans /etc/password. Il faudrait le setuid (chmod +s `which useradd` ) et n'importe quel user pourra creer d'autres users ou alors avec sudo mais je connais pas bien la facon de le configurer
Marsh Posté le 12-08-2002 à 19:04:10
perl -e tralala car il faut fournir un pass crypté . Je me suis inspiré de ce topic :
http://forum.hardware.fr/forum2.ph [...] h=&subcat=
Marsh Posté le 12-08-2002 à 19:04:32
superX a écrit a écrit : on va supposer qu'ils sont dans le groupe groupie # $1 sera le nom et $2 le pass adduser -g groupie -s /bin/false -p `perl -e 'crypt($2,'AB''` $1 par contre c'est pas une super idée de faire un script qui va ajouter des entrées dans /etc/password. Il faudrait le setuid (chmod +s `which useradd` ) et n'importe quel user pourra creer d'autres users ou alors avec sudo mais je connais pas bien la facon de le configurer |
ouais mais la mon user apache non privilégié aura pas le droit de l'executer ce script nan ? (adduser --> faut etre en root nan ? )
Marsh Posté le 12-08-2002 à 19:05:59
ou tu setuid useradd , ou t'utilises sudo. je vois pas d'autres solutions
Marsh Posté le 12-08-2002 à 19:06:35
superX a écrit a écrit : relis ma derniere phrase |
ouip...je vais explorer la voie de sudo
merci
si d'autres ont des idées ?
(j'ai installé sudo mais y me demande un mot de passe pour l'utiliser et c'est pas le mdp root )
Marsh Posté le 12-08-2002 à 19:07:09
superX a écrit a écrit : ou tu setuid useradd , ou t'utilises sudo. je vois pas d'autres solutions |
ca me tente bien setuid useradd
ca marche comment ?
je rentre chez moi, je check les réponses ds 20 minutes
Marsh Posté le 12-08-2002 à 19:09:44
chmod +s `which useradd` (c'est des backquotes , pas des guillemets)
Marsh Posté le 12-08-2002 à 19:28:09
avec sudo , dans /etc/sudoers , tu met ça
Code :
|
nobody , de la machine <ton hostname> , peut executer en root useradd et userdel et uniquement eux et sans demander de mot de passe
mais pourquoi tu veux lancer ça depuis nobody (ce qui est une tres mauvaise idée) ?
Marsh Posté le 12-08-2002 à 19:35:16
ensuite tu lances un
sudo /usr/sbin/useradd -g etc...etc.....
Marsh Posté le 12-08-2002 à 20:02:23
bon , tu me tiendras au courant
la solution a tes exigences serait :
- modifier /etc/sudoers comme expliqué plus haut
- le script :
useradd.sh
#!/bin/sh
sudo /usr/sbin/useradd -g maildrop -s /bin/false -p `perl -e 'crypt($2,'AB'' ` $1
et tu l'appelles comme suit :
./useradd.sh toto lepassatoto
attention aux backquotes (`) et aux apostrophes (' . Perl est encadré par des backquotes mais le crypt par des guillemets.
La dessus , ca devrait tourner comme sur des roulettes
Marsh Posté le 13-08-2002 à 12:42:43
superX a écrit a écrit : avec sudo , dans /etc/sudoers , tu met ça
|
beh parce que apache est membre du groupe nobody...et quand un gars s'inscrit sur le site, je lui crée son carnet d'adresses, son planning etc...et sa mailbox...et pour ca j'ai besoin, pour que ca tourne avec postfix, de l'ajouter ds le groupe maildrop.
je sais que c'est pas une bonne idée mais j'aurai le temps, plus tard, de trouver une meilleure solution
Marsh Posté le 13-08-2002 à 17:53:24
superX a écrit a écrit : bon , tu me tiendras au courant la solution a tes exigences serait : - modifier /etc/sudoers comme expliqué plus haut - le script : useradd.sh #!/bin/sh sudo /usr/sbin/useradd -g maildrop -s /bin/false -p `perl -e 'crypt($2,'AB'' ` $1 et tu l'appelles comme suit : ./useradd.sh toto lepassatoto attention aux backquotes (`) et aux apostrophes (' . Perl est encadré par des backquotes mais le crypt par des guillemets. La dessus , ca devrait tourner comme sur des roulettes |
mon user houga membre du groupe nobody ne peut pas executer le script (permission denied) alors que nobody est le proprietaire du repertoire
comment que j'fais ?
Marsh Posté le 13-08-2002 à 18:07:56
j'capte plus la
mon script :
Code :
|
si qqun capte...
Code :
|
Marsh Posté le 13-08-2002 à 18:31:33
ah oui.....j'ai pas la commande useradd
par contre j'ai adduser
mais je peux visiblement pas lui passer de mot de passe
Marsh Posté le 13-08-2002 à 18:59:50
adduser , useradd , c'est kifkif pareil.
t'as mis quoi dans ton /etc/sudoers ?
Marsh Posté le 13-08-2002 à 19:02:02
et t'as pas utilisé sudo ?
et root.wheel n'a surement pas les meme privileges que root.root
Marsh Posté le 13-08-2002 à 20:27:35
pourkoi tu gere pas t user qui utilise le mail avec un annuaire de style ldap
et avec courrier-imap qui gere le ldap
ce qui te permettrais d ajouter des user facilement via php
Marsh Posté le 14-08-2002 à 09:27:17
asphro a écrit a écrit : pourkoi tu gere pas t user qui utilise le mail avec un annuaire de style ldap et avec courrier-imap qui gere le ldap ce qui te permettrais d ajouter des user facilement via php |
j'peux installer un Ldap avec uw-imapd ?
Marsh Posté le 14-08-2002 à 10:24:58
bon l'execution de scripts marche toot nikel
meme sous nobody
et le systeme essaie d'ajouter le user
Code :
|
grosso modo ma commande ne veut pas de parametre password....ptain...comment que je peux faire soit pour qu'elle en prenne un (de password - quitte a changer la commande) soit pour pouvoir en rajouter un ultérieurement (méthode que je préfère puisque ca me permettra plus tard de mettre en place pour les users la possibilité de changer leur mot de passe (mdp boite mail y compris))
une idée ?
edit : la commande adduser me demande un mot de passe...je peux faire un script qui va lui passer quand y va detecter le prompt de demande de passsword ?
Marsh Posté le 14-08-2002 à 13:01:03
zul a écrit a écrit : j'peux installer un Ldap avec uw-imapd ? |
rien vu a propos de ldap avec uw-imapd
mais avec modules pam et ldap ca doit etre possible
Marsh Posté le 14-08-2002 à 14:54:30
bon j'ai résolu le problemme...meme si foncierement c'est pas sécurisé au niveau du script, si le serveur l'est correctement et que je fais les checks necessaires en php ca devrait pas poser de probleme :
Code :
|
Marsh Posté le 12-08-2002 à 18:44:56
b'jour les gens...
j'suis une grosse tanche en scripts et je dois faire rapidement (pour mercredi) un script qui va :
prendre login + mot de passe en parametres
va créer le user correspondant et lui attribuer le mot de passe
et tout ceci a partir d'un compte non privilégié (apache --> nobody)
pour l'instant je m'en foos de la sécurité --> serveur de developpement, j'aurais le temps, + tard, de chercher une meilleure solution.
si qqul pouvait m'aider
merci d'avance