Posté(e) le 11 avril 200619 a Bonjour à tous, je viens de finaliser un petit script d'ajout utilisateur puis paramétrage de postfix (fetchmail et table virtual) pour nos admins non linuxien Je me trouve confronté a un petit soucis avec le password de l'utilsateur: echo "saisissez le nom de l'utilisateur a ajouter" read vnom echo "saisissez le mot de passe de l'utilisateur" read pass useradd -p $pass $vnom .......... donc la variable -p $pass ne passe pas et je suis obligé de modifier le mot de passa à la mano...Surement du au crypatge mais y a t'il une possibilité de passer outre?? Par avance merci, je continue mes recherches.... ++ Modifié le 11 avril 200619 a par BoobZ
Posté(e) le 11 avril 200619 a Bonjour à tous, je viens de finaliser un petit script d'ajout utilisateur puis paramétrage de postfix (fetchmail et table virtual) pour nos admins non linuxien Je me trouve confronté a un petit soucis avec le password de l'utilsateur: echo "saisissez le nom de l'utilisateur a ajouter" read vnom echo "saisissez le mot de passe de l'utilisateur" read pass useradd -p $pass $vnom .......... donc la variable -p $pass ne passe pas et je suis obligé de modifier le mot de passa à la mano...Surement du au crypatge mais y a t'il une possibilité de passer outre?? Par avance merci, je continue mes recherches.... ++ Le mot de passe doit etre dans sa forme cryptée. passwd = $(openssl passwd -1 $pass) useradd -p $passwd $vnom -1 = mot de passe au format shadow -crypt = mot de passe sans shadow Tuxbubling
Posté(e) le 11 avril 200619 a Auteur Re, merci pour cette reponse mais ca ne passe pas passwd : Utilisateur = inconnu dans ce script: echo "saisissez le nom de l'utilisateur a ajouter" read vnom echo "saisissez le mot de passe de l'utilisateur" read pass #echo "l'utilsateur $nom a comme mot de passe $pass" echo "saisisez son adresse mail" read mail passwd = $(openssl passwd -1 $pass) useradd -p $pass $vnom surement une erreur ou une variable mal placé, je cherche...si quelqu'un voit la soluc' ++
Posté(e) le 11 avril 200619 a Re, merci pour cette reponse mais ca ne passe pas passwd : Utilisateur = inconnu dans ce script: echo "saisissez le nom de l'utilisateur a ajouter" read vnom echo "saisissez le mot de passe de l'utilisateur" read pass #echo "l'utilsateur $nom a comme mot de passe $pass" echo "saisisez son adresse mail" read mail passwd = $(openssl passwd -1 $pass) useradd -p $pass $vnom surement une erreur ou une variable mal placé, je cherche...si quelqu'un voit la soluc' ++ PASSWD=$(openssl passwd -1 $pass) useradd -p $PASSWD $vnom il t'as lancé la commande 'passwd' en fait ^^ (les espaces en trop :)) variante: pass=$(openssl passwd -1 $pass) useradd -p $pass $vnom
Posté(e) le 11 avril 200619 a Auteur pffff en effet ca marche mieux (parfaitement serait plus adequat)... Mon mal de crane a raison de ma patience...Merci d'utiliser la tienne a bon essien... ++
Posté(e) le 11 avril 200619 a D'après le "man useradd" le paramètre -p password ne peut qu'utiliser le mot de passe de type crypt. Donc un passwd = $(openssl passwd -crypt $pass) useradd -p $passwd $vnom semble être la seule possibilité ! Mais pourquoi pas faire en 2 étapes si ça ne marche pas... Le useradd et ensuite un passwd. echo "saisissez le nom de l'utilisateur a ajouter" read vnom echo "saisisez son adresse mail" read mail useradd $vnom passwd $vnom de plus, tu pourras avoir les options de passwd (expiration du compte -n et -x, expiration du mot de passe -i) NOTE: Il est possible de capter ton mot de passe avec un read également, mais il faute que tu ajoutes un "Enter" après passwd $vnom et je ne me rappelle plus de comment l'écrire et je n'ai pas mes notes.
Posté(e) le 11 avril 200619 a Auteur Ca ne me derangeait pas de le faire en plusieurs etapes, le seul soucis en faisant un passwd $vnom c'etait de pseudo taper 2 fois le mot de passe et de le valider autant de fois.... Je pensais bien que la variable -p du useradd devait m'aider mais qu'une astuce etait necessaire..... Maintenant tout est ok, et fonctionnel ++
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.