Passwd, modifier passwd via script shell
Résolu/Fermé
Wssef
Messages postés
2
Date d'inscription
jeudi 5 octobre 2006
Statut
Membre
Dernière intervention
6 octobre 2006
-
5 oct. 2006 à 17:15
Greg - 5 juin 2013 à 16:29
Greg - 5 juin 2013 à 16:29
Bonjour,
En utilisant les droits root, je cherche un moyen pour modifier un mot de passe d'une manière automatique en utilisant un script shell
Merci pour votre aide
En utilisant les droits root, je cherche un moyen pour modifier un mot de passe d'une manière automatique en utilisant un script shell
Merci pour votre aide
A voir également:
- Bash passwd
- Bingo bash free - Télécharger - Divers Jeux
- Bash addition ✓ - Forum Shell
- Minimal bash-like line editing is supported ✓ - Forum Linux / Unix
- Bash pause ✓ - Forum Shell
- Bash-3.2 - Forum MacOS
7 réponses
La commande suivante fonctionne sur AIX5.3 :
echo "$USERNAME:$USERNAME"|/usr/bin/chpasswd
L'utilisateur doit changer son password à la 1ere connexion. Pour contourner cela utiliser chpasswd -f NOCHECK
echo "$USERNAME:$USERNAME"|/usr/bin/chpasswd
L'utilisateur doit changer son password à la 1ere connexion. Pour contourner cela utiliser chpasswd -f NOCHECK
Pour remplacer le mot de passe de l'utilisateur toto via un script on peut utiliser çà aussi
echo 'echo "toto:monMotDePasse" | chpasswd
echo 'echo "toto:monMotDePasse" | chpasswd
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
5 oct. 2006 à 17:27
5 oct. 2006 à 17:27
Salut,
En utilisant l'option "--stdin" de "passwd", tu peux changer le mot de passe de tes users de la façon suivante (on attribue le mot de passe "tata" à l'utilisateur toto) :
En utilisant l'option "--stdin" de "passwd", tu peux changer le mot de passe de tes users de la façon suivante (on attribue le mot de passe "tata" à l'utilisateur toto) :
echo -e "tata\ntata" | (passwd --stdin toto)En espérant que ce soit ce que tu voulais ;-))
Merci pour votre réponse,
J'ai testé votre commande sur un environement LINUX, la commande s'execute avec succès mais je n'arrive pas a me connecter avec le mot de passe attribué à l'utilisateur "toto", ni par le nouveau mot de passe ni par l'ancien. Sur un environement AIX (5.4), la commande ne passe pas, je reçois l'erreur suivante :
dev1:/ >echo -e "tata\ntata" | (passwd --stdin toto)
passwd: Option non reconnue : -
Syntaxe : passwd [-R module_chargement] [ -f | -s | -a ] [nom_utilisateur]
o¨ :
-f modifie les informations finger
-s modifie le shell de connexion.
-a modifie le mot de passe dans tous les modules.
J'ai testé votre commande sur un environement LINUX, la commande s'execute avec succès mais je n'arrive pas a me connecter avec le mot de passe attribué à l'utilisateur "toto", ni par le nouveau mot de passe ni par l'ancien. Sur un environement AIX (5.4), la commande ne passe pas, je reçois l'erreur suivante :
dev1:/ >echo -e "tata\ntata" | (passwd --stdin toto)
passwd: Option non reconnue : -
Syntaxe : passwd [-R module_chargement] [ -f | -s | -a ] [nom_utilisateur]
o¨ :
-f modifie les informations finger
-s modifie le shell de connexion.
-a modifie le mot de passe dans tous les modules.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
jipicy
Messages postés
40842
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 897
6 oct. 2006 à 11:55
6 oct. 2006 à 11:55
Re-
Bon alors 2 ou 3 choses...
D'abord, est-ce que l'$USER toto existe ? (question c*n, mais c'est toujours les choses les plus évidentes qui fichent le boxon ;-)) )
Ensuite en ce qui concerne la commande "echo", couplée avec le paramètre "-e" c'est la commande externe (qui se trouve dans "/bin/echo") et non la commande interne du "bash" (echo).
Il se peut que sous AIX cette commande (/bin/echo) n'existe pas, d'où le message d'erreur.
Pour finir chez moi, le test avec l'$USER "toto" et le changement de mot de passe s'est effectué sans soucis ;-))
Test sur Mandriva 2006.
Bon alors 2 ou 3 choses...
D'abord, est-ce que l'$USER toto existe ? (question c*n, mais c'est toujours les choses les plus évidentes qui fichent le boxon ;-)) )
Ensuite en ce qui concerne la commande "echo", couplée avec le paramètre "-e" c'est la commande externe (qui se trouve dans "/bin/echo") et non la commande interne du "bash" (echo).
Il se peut que sous AIX cette commande (/bin/echo) n'existe pas, d'où le message d'erreur.
Pour finir chez moi, le test avec l'$USER "toto" et le changement de mot de passe s'est effectué sans soucis ;-))
Test sur Mandriva 2006.
Wssef
Messages postés
2
Date d'inscription
jeudi 5 octobre 2006
Statut
Membre
Dernière intervention
6 octobre 2006
6 oct. 2006 à 13:40
6 oct. 2006 à 13:40
j'ai trouvé une méthode plus simple :
contenu script test:
********** test.sh *********
#! bin/sh
echo "toto:tata" > ./pass.tmp
echo `cat ./pass.tmp | chpasswd`
echo `pwdadm -f NOCHECK $login`
*****************************
l'utilisateur toto va avoir tata comme mot de passe et n'aura pas besoin de re-saisir un nouveau mot de passe au moment de sa nouvelle connexion :)
contenu script test:
********** test.sh *********
#! bin/sh
echo "toto:tata" > ./pass.tmp
echo `cat ./pass.tmp | chpasswd`
echo `pwdadm -f NOCHECK $login`
*****************************
l'utilisateur toto va avoir tata comme mot de passe et n'aura pas besoin de re-saisir un nouveau mot de passe au moment de sa nouvelle connexion :)
Bonjour,
Je débute sous unix, je cherche un script qui permet de changer le mot de passe de root sur plusieurs serveurs via une connexion ssh.
type de script :
1 - Saissir l'utilisateur qui doit changer de mot de passe
2 - Saissir son mot de passe
3 - changement du mot de passe de l'utilisateur (point N°1) sur le serveur N°1
4 - changement du mot de passe de l'utilisateur (point N°1) sur le serveur N°2
5 - changement du mot de passe de l'utilisateur (point N°1) sur le serveur N°3
6 - changement du mot de passe de l'utilisateur (point N°1) sur le serveur N°4
Merci d'avance de vos conseils et de vos réponses.
Je débute sous unix, je cherche un script qui permet de changer le mot de passe de root sur plusieurs serveurs via une connexion ssh.
type de script :
1 - Saissir l'utilisateur qui doit changer de mot de passe
2 - Saissir son mot de passe
3 - changement du mot de passe de l'utilisateur (point N°1) sur le serveur N°1
4 - changement du mot de passe de l'utilisateur (point N°1) sur le serveur N°2
5 - changement du mot de passe de l'utilisateur (point N°1) sur le serveur N°3
6 - changement du mot de passe de l'utilisateur (point N°1) sur le serveur N°4
Merci d'avance de vos conseils et de vos réponses.
24 juin 2010 à 14:58