Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/10/2006, à 11:32

marylf

scripter passwd

Je souhaite ajouter de nouveau utilisateur à mon système à travers un script.

Quand j'utilise adduser -p , le mot de passe doit etre crypté et je ne sais pas quelle commande utiliser. J'ai vu sur le web que makepasswd ne crypte pas de la même façon.
De plus impossible de trouver une doc sur la commande "crypt".
Alors j'ai décidé d'utiliser passwd (echo "motdepasse" | passwd --stdin login). Le pb c'est que
quand je lance cette commande, le systeme me dit que l'option "--stdin" n'est pas supporté par "passwd". alors qu'il l'est sur Mandrake.

Y a t-il une certaine version de "passwd" à récupérer pour supporter cet option?
Sinon, Comment utiliser "crypt" ou "makepasswd".


Merci.

Hors ligne

#2 Le 12/10/2006, à 22:08

snapshot

Re : scripter passwd

Quand j'utilise adduser -p , le mot de passe doit etre crypté et je ne sais pas quelle commande utiliser.

Pour des raisons de securité, debian et ubuntu fuient comme la peste les mots de passe passés en argument : ça laisse des trace dans l'historique, et ça se voit dans les la liste des processus... donc, pas de commandes directe permettant de le faire !

Alors j'ai décidé d'utiliser passwd (echo "motdepasse" | passwd --stdin login)

non.. ça ne peut pas marcher du tout ça ! passwd change le mot de passe, mais en aucun cas ne retourne une version cryptée d'un mdp...
Tu as peut-être confondu avec :

echo "motdepasse" | openssl passwd -stdin

qui retourne "motdepasse" crypté
ou bien avec :

echo "motdepasse" | sudo passwd --stdin $username

qui définit "motdepasse" comme mot de passe pour $username.

Et il y a un autre problème : le fichier /etc/passwd ne contient plus les mots de passe. Ils sont stockés dans /etc/shadow pour augmener la sécurité (et sont cryptés en sha1 je crois). Je pense qu'il est plus sage de passer par la commande passwd plutot que d'essayer de modifier manuellement les fichiers par des scripts.


Pensez à mettre [Résolu] dans le titre une fois votre problème réglé !

Hors ligne

#3 Le 13/10/2006, à 16:45

marylf

Re : scripter passwd

snapshot, Merci pour tes éclaircissements,


Effectivement, la commande:
'echo "motdepasse" | sudo passwd --stdin $username'
ne retourne pas de mot de passe crypté.

Mais je ne comptais pas l'utiliser pour recupérer un mdp et le passer à adduser.

Cependant, mon problème reste toujours le même car sous ubuntu, l'option
"--stdin", n'est pas supportée. donc chez moi la commande:

<b>Code:</b>
echo "motdepasse" | sudo passwd --stdin $username

ne fonctionne pas.


Faut-il récuperer une autre version?

Hors ligne

#4 Le 13/10/2006, à 17:44

snapshot

Re : scripter passwd

Et bien oui effectivement, cette option n'est pas reconnu malgré ce qu'annonce la page man française ! C'est un bug car la page man anglaise n'affiche pas cette option, ni même l'aide en ligne (passwd --help)

Une rapide recherche sur le net semble indiquer que cela vient de debian... Mais du coup, il n'y a pas moyen de scripter le changement de mot de passe hmm à moins d'écrire directement dans le /etc/shadow ou d'utiliser « expect »


Pensez à mettre [Résolu] dans le titre une fois votre problème réglé !

Hors ligne

#5 Le 16/10/2006, à 11:44

marylf

Re : scripter passwd

Bon!
Je crois que je vais ecrire dans le fichier /etc/shadow
ce sera plus simple.

Merci à toi.

A plus !!

Hors ligne