Précédent   Forum des professionnels en informatique > Systèmes > Autres systèmes > Unix
Unix Forum d'entraide sur les systèmes Unix et dérivés (*BSD, AIX, etc.). Avant de poster ->F.A.Q BSD F.A.Q. Aix
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
Vieux 28/08/2009, 17h25   #1
Nouveau Membre du Club
 
David
Inscription : avril 2009
Messages : 26
Détails du profil
Informations personnelles :
Nom : David
Âge : 40

Informations forums :
Inscription : avril 2009
Messages : 26
Points : 27
Points : 27
Par défaut Modification à distance du mot de passe root sous Unix HP

Bonjour,

J'aimerai centraliser le changement du mot de passe root sur des machines Unix HP (version des l'OS HP-UX B.11.11 et B.11.31).
Les mots de passe différent selon les machines.
Pour cela, j'ai besoin d'une commande équivalente à la commande "setpwd" sous AIX.

Merci d'avance pour l'aide que vous m'apporterai , Syjis.
syjis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2009, 14h34   #2
Membre Expert
 
Homme Alexis
Intégrateur d'Exploitation
Inscription : février 2003
Messages : 856
Détails du profil
Informations personnelles :
Nom : Homme Alexis
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Intégrateur d'Exploitation
Secteur : Biens de consommation

Informations forums :
Inscription : février 2003
Messages : 856
Points : 1 616
Points : 1 616
Envoyer un message via ICQ à Alek-C Envoyer un message via Skype™ à Alek-C
c'est quoi la différence entre setpwd et passwd ?
Alek-C est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 31/08/2009, 15h03   #3
Nouveau Membre du Club
 
David
Inscription : avril 2009
Messages : 26
Détails du profil
Informations personnelles :
Nom : David
Âge : 40

Informations forums :
Inscription : avril 2009
Messages : 26
Points : 27
Points : 27
La différence entre passwd et setpwd est que la deuxième ne demande pas l'intéraction, et donc scriptable.
Cordialement, Syjis.
syjis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 31/08/2009, 15h15   #4
Membre Expert
 
Homme Alexis
Intégrateur d'Exploitation
Inscription : février 2003
Messages : 856
Détails du profil
Informations personnelles :
Nom : Homme Alexis
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Intégrateur d'Exploitation
Secteur : Biens de consommation

Informations forums :
Inscription : février 2003
Messages : 856
Points : 1 616
Points : 1 616
Envoyer un message via ICQ à Alek-C Envoyer un message via Skype™ à Alek-C
Ok, désolé, je ne connaissais pas...

Personnellement, je ne connais pas d'équivalent à part peut-être en utilisant expect ?
Alek-C est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 31/08/2009, 18h50   #5
Nouveau Membre du Club
 
David
Inscription : avril 2009
Messages : 26
Détails du profil
Informations personnelles :
Nom : David
Âge : 40

Informations forums :
Inscription : avril 2009
Messages : 26
Points : 27
Points : 27
La commande expect n'est pas présent sur nos machines HP.
Merci pour ton aide, cordialement, Syjis.
syjis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2009, 18h05   #6
Membre Expert
 
Homme Alexis
Intégrateur d'Exploitation
Inscription : février 2003
Messages : 856
Détails du profil
Informations personnelles :
Nom : Homme Alexis
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Intégrateur d'Exploitation
Secteur : Biens de consommation

Informations forums :
Inscription : février 2003
Messages : 856
Points : 1 616
Points : 1 616
Envoyer un message via ICQ à Alek-C Envoyer un message via Skype™ à Alek-C
J'aurais bien envie de te dire de l'installer, mais j'imagine que ce n'est pas possible...

Si tu te sens, tu peux essayer monsieur Bill Thompson qui semble avoir trouvé une méthode.

Sinon, peut-être avec un script Perl et le module SSH et les handler ? Mais je n'ai jamais réussi à le faire marcher pour passwd ce handler

Bon courage, et je suis preneur d'une éventuelle solution

Edit: j'ai aussi une autre proposition, tu peux écrire un script qui va directement modifier le fichier /etc/passwd ou /etc/shadow.
Le cryptage du mot de passe est assez simple à mettre en place en perl par exemple, j'avais fait un truc comme ça un jour, je vais voir si je remets la main dessus.

Dernière modification par Alek-C ; 01/09/2009 à 18h28.
Alek-C est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 01/09/2009, 18h28   #7
Membre Expert
 
Homme Alexis
Intégrateur d'Exploitation
Inscription : février 2003
Messages : 856
Détails du profil
Informations personnelles :
Nom : Homme Alexis
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Intégrateur d'Exploitation
Secteur : Biens de consommation

Informations forums :
Inscription : février 2003
Messages : 856
Points : 1 616
Points : 1 616
Envoyer un message via ICQ à Alek-C Envoyer un message via Skype™ à Alek-C
A TESTER AVANT D'UTILISER =)

Voilà le script que j'avais mis en place (j'avais trouvé des parties sur internet)
Code :
perl -e 'srand(time()^($$+($$<<15))); while (<>) {if (/^(.*)$/) {chomp; print; while (! ($salt =~ /^\w\w$/)) { $char = chr(int(rand 255)); $salt = $salt.$char if ($char =~ /^\w$/); } print ";",crypt($1, $salt.$1),"\n"; } $salt=""; } ' < users.lst
Le Fichier comporte une liste de login:
Code :
1
2
3
login1
login2
login3
et j'ai en sortie un fichier de ce type (login;passwd)
Code :
1
2
3
login1;snKvqZTvwensY
login2;3byBD8b/nrJig
login3;QjpLerfCxwPGE
Si c'est la bonne version, le mot de passe du fichier de sortie correspond au login et peut être directement intégré dans un fichier /etc/passwd (voir /etc/shadow, c'est ce que j'avais fait en fait apparemment) avec awk par exemple.

A TESTER AVANT D'UTILISER =)
Alek-C est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 01/09/2009, 18h30   #8
Nouveau Membre du Club
 
David
Inscription : avril 2009
Messages : 26
Détails du profil
Informations personnelles :
Nom : David
Âge : 40

Informations forums :
Inscription : avril 2009
Messages : 26
Points : 27
Points : 27
J'ai trouvé sur internet, le code source en c de setpwd à l'adresse : http://www.mtxia.com/css/Downloads/C...setpwd_c.shtml

Je ne connais pas le c, mais je vais essayer de le décrypter, et voir si cela est possible (pb de bibliothèques, présence d'un compilateur c,...) de le reécrire pour hp.

En remerciant d'avance les personnes qui se penchent sur le programme c cité ci-dessus, cordialement, Syjis.
syjis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/09/2009, 18h36   #9
Membre Expert
 
Homme Alexis
Intégrateur d'Exploitation
Inscription : février 2003
Messages : 856
Détails du profil
Informations personnelles :
Nom : Homme Alexis
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Intégrateur d'Exploitation
Secteur : Biens de consommation

Informations forums :
Inscription : février 2003
Messages : 856
Points : 1 616
Points : 1 616
Envoyer un message via ICQ à Alek-C Envoyer un message via Skype™ à Alek-C
Explications (voir aussi la page de crypt pour info):
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#initialisation des nombres aléatoires
srand(time()^($$+($$<<15)));

#boucle sur l'entrée (en l'occurrence, le fichier des logins)
while (<>) {
#si la ligne n'est pas vide (j'ai en fait d'autres tests à l'origine, mais peu importe
  if (/^(.*)$/) {
#on vire la fin de ligne
    chomp;
#on affiche le début de la ligne
    print;
#génération de la clé: 2 caractères alpha, boucle tant qu'on ne les a pas
    while (! ($salt =~ /^\w\w$/)) {
#on génère un caractère aléatoire
      $char = chr(int(rand 255));
#on le concatène si c'est un alphanumérique
      $salt = $salt.$char if ($char =~ /^\w$/);
    }
#on ajoute au fichier le login crypté, je ne sais pas pourquoi j'ai mis $salt.$1 dans la seconde partie du crypt, c'est inutile je crois : $salt suffirait
    print ";",crypt($1, $salt.$1),"\n";
  }
#on recommence
  $salt="";
}
Alek-C est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 01/09/2009, 18h40   #10
Membre Expert
 
Homme Alexis
Intégrateur d'Exploitation
Inscription : février 2003
Messages : 856
Détails du profil
Informations personnelles :
Nom : Homme Alexis
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Intégrateur d'Exploitation
Secteur : Biens de consommation

Informations forums :
Inscription : février 2003
Messages : 856
Points : 1 616
Points : 1 616
Envoyer un message via ICQ à Alek-C Envoyer un message via Skype™ à Alek-C
Citation:
Envoyé par syjis Voir le message
J'ai trouvé sur internet, le code source en c de setpwd à l'adresse : http://www.mtxia.com/css/Downloads/C...setpwd_c.shtml

Je ne connais pas le c, mais je vais essayer de le décrypter, et voir si cela est possible (pb de bibliothèques, présence d'un compilateur c,...) de le reécrire pour hp.

En remerciant d'avance les personnes qui se penchent sur le programme c cité ci-dessus, cordialement, Syjis.
Il manque des trucs je pense...
Alek-C est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 01/09/2009, 19h40   #11
Nouveau Membre du Club
 
David
Inscription : avril 2009
Messages : 26
Détails du profil
Informations personnelles :
Nom : David
Âge : 40

Informations forums :
Inscription : avril 2009
Messages : 26
Points : 27
Points : 27
Oui, je pense que certains éléments sont manquants.
Je vais tout de même regarder cette piste ainsi que celle que tu m'a donné tout en cherchant si une commande existe déjà sur hp. Si tu en as d'autres, je suis preneur.
Cordialement, Syjis.

Dernière modification par syjis ; 01/09/2009 à 20h08.
syjis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 02/09/2009, 15h08   #12
Membre Expert
 
Homme Alexis
Intégrateur d'Exploitation
Inscription : février 2003
Messages : 856
Détails du profil
Informations personnelles :
Nom : Homme Alexis
Âge : 32
Localisation : France

Informations professionnelles :
Activité : Intégrateur d'Exploitation
Secteur : Biens de consommation

Informations forums :
Inscription : février 2003
Messages : 856
Points : 1 616
Points : 1 616
Envoyer un message via ICQ à Alek-C Envoyer un message via Skype™ à Alek-C
Non, pas d'autres idées, c'est pour ça que j'avais fait un truc en perl

Je pense que modifier directement le fichier /etc/* s'agit d'une bonne solution de contournement : le programme est suffisamment simple pour présenter peu de risques après quelques essais !
Alek-C est déconnecté   Envoyer un message privé Réponse avec citation 01
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +1. Il est actuellement 03h04.


 
 
 
 
Partenaires

Hébergement Web