OVH Cloud OVH Cloud

faire un password unix

1 réponse
Avatar
R12y
Bonjour,

J'essaie d faire une création d'user system pour Linux avec un script
Python:

##################################################
import utils
import os, sys, string,crypt

login="toto"
clear_passwd="totopass"

def create_user(login, passwd, tld):
def command_to_launch(login, passwd):
result=["useradd"]
result+=["-p "+crypt.crypt(passwd, 'aspo')]
result+=[login]
for i in result:
print i
return result

os.execv("/usr/sbin/useradd", command_to_launch(login, passwd))

create_user(login, clear_passwd)
####################################################

La génération du password crypté n'est pas bonne.
D'une part parceque une fois l'user créé avec cette méthode je n'arrive
pas à me logger dessous, d'autre part si je génère un user avec le même
password que moi, le résultat n'est pas le même (au "salt" près), mais
même déjà la chaine de charactère générée n'est pas aussi longue que
celles que l'on retrouve dans /etc/shadow.

Comment on fait? Merci d'avance.

--
Rakotomandimby Mihamina,
http://aspo.rktmb.org/activites/infogerance
Serveurs* sous Debian, Fedora...
(*) Serveurs!?: http://fr.search.yahoo.com/search?p=serveurs+dedies

1 réponse

Avatar
Yves Lange
Bonjour,

J'essaie d faire une création d'user system pour Linux avec un script
Python:

##################################################
import utils
import os, sys, string,crypt

login="toto"
clear_passwd="totopass"

def create_user(login, passwd, tld):
def command_to_launch(login, passwd):
result=["useradd"]
result+=["-p "+crypt.crypt(passwd, 'aspo')]
result+=[login]
for i in result:
print i
return result

os.execv("/usr/sbin/useradd", command_to_launch(login, passwd))

create_user(login, clear_passwd)
####################################################

La génération du password crypté n'est pas bonne.
D'une part parceque une fois l'user créé avec cette méthode je n'arrive
pas à me logger dessous, d'autre part si je génère un user avec le même
password que moi, le résultat n'est pas le même (au "salt" près), mais
même déjà la chaine de charactère générée n'est pas aussi longue que
celles que l'on retrouve dans /etc/shadow.

Comment on fait? Merci d'avance.



Pas très bien compris, t'as eu un message d'erreur ? ou non ? Si oui
montre le nous. Ou montre nous le message affiché par unix.

result+=["-p "+crypt.crypt(passwd, 'aspo')]
Ceci est juste ! Il faut bien laisser un espace entre -p et l'argument.