Reglamento general de los foros   •   FAQ   •   Buscar en el foro •  Registrarse | Iniciar sesión 



Foros Linux » Desarrollo » Programación


Nuevo tema Responder al tema
 [ 13 mensajes ] 
Patrocinadores

Autor
Buscar:
Mensaje

Desconectado
Forista Nuevo
Forista Nuevo

Registrado: Dom Feb 20, 2011 10:06 pm
Mensajes: 4

Nota Publicado: Dom Feb 20, 2011 10:16 pm 
Arriba  
Hola escribo esto por que estoy cayendo en la desesperación, espero funcione, tengo que emular un shell para linux con shell script, este debe de poder loguear a los usuarios del sistema, pienso en pedir la contraseña, cifrarla y compararla con la existente en /etc/shadow, solo necesito saber como cifrar la contraseña que reciba de la misma forma en la que lo hace passwd, para asi poderlas comparar. espero desesperada mente ayuda.

Otro punto del shell es la administracion de usuarios, al crear uno nuevo le pido la contraseña al usuario y con perl, (fue la solucion que encontre despues de mucho leer) la cifro:

Código:
read pass
passwordf=`perl -e 'print crypt("'"$pass"'","SA"), "\n";'`


y entonces con flujo de datos la ingreso en su correspondiente sitio en /etc/shadow, con esto, los usuarios creados pueden loguearse tanto en el sistema como en mi shell, lo que necesito entonces es la forma en como cifrar la contraseña recibida para el logueo en mi shell para que el resultado sea igual al que hace passwd y asi poder loguear a los usuarios ya existentes del sistema en mi shell, espero haber sido claro.


Última edición por angel3071 el Lun Feb 21, 2011 7:15 pm, editado 1 vez en total
 Perfil Email  

Desconectado
Forista Distinguido
Forista Distinguido
Avatar de Usuario

Registrado: Sab Oct 09, 2004 11:00 pm
Mensajes: 1299

Nota Publicado: Lun Feb 21, 2011 4:02 am 
Arriba  
tercera vez que respondo lo mismo. Probé usando el buscador y... ¡caramba, funciona!.

Es decir, estás desesperado, pero no tanto como para usar un buscador en el foro.

 Perfil  

Desconectado
Forista Nuevo
Forista Nuevo

Registrado: Dom Feb 20, 2011 10:06 pm
Mensajes: 4

Nota Publicado: Lun Feb 21, 2011 10:35 am 
Arriba  
neurus escribió:
tercera vez que respondo lo mismo. Probé usando el buscador y... ¡caramba, funciona!.

Es decir, estás desesperado, pero no tanto como para usar un buscador en el foro.


Parece que no me explique bien, lo que necesito es encriptar una palabra usando el mismo algoritmo que usa passwd, NO NECESITO SABER COMO USAR PASSWD, si no como lograr encriptar una palabra de la misma forma que lo hace este. En serio lo digo no habria posteado aqui si no hubiese buscado por todos lados antes. aun asi espero no suene tan tonto lo que necesito hacer.

(insisto para el proyecto NO PUEDO USAR PASSWD, ojala fuera tan simple como eso.)

 Perfil Email  

Desconectado
Forista Distinguido
Forista Distinguido
Avatar de Usuario

Registrado: Sab Oct 09, 2004 11:00 pm
Mensajes: 1299

Nota Publicado: Lun Feb 21, 2011 10:39 am 
Arriba  
No se te ocurrió seguir el link, y leerlo, no?

 Perfil  

Desconectado
Forista Ancestral
Forista Ancestral
Avatar de Usuario

Registrado: Mié Abr 11, 2007 11:00 pm
Mensajes: 8550
Ubicación: tras la pantalla (...)

Nota Publicado: Lun Feb 21, 2011 10:58 am 
Arriba  
busca sobre md5 y similares, que apuesto a que es lo que usa passwd....
:?

_________________
#446716

--Not me, guys. I read the Bash man page each day like a Jehovah's Witness reads the Bible. No wait, the Bash man page IS the bible. Excuse me...
(from comp.os.linux.misc)
[ DNFD ] - [ F4A ] - [ dotfiles ]

 Perfil Email WWW  

Desconectado
Forista Distinguido
Forista Distinguido
Avatar de Usuario

Registrado: Sab Oct 09, 2004 11:00 pm
Mensajes: 1299

Nota Publicado: Lun Feb 21, 2011 11:26 am 
Arriba  
niky45 escribió:
busca sobre md5 y similares, que apuesto a que es lo que usa passwd....
:?


et tu quoque, fili?

 Perfil  

Desconectado
Forista Nuevo
Forista Nuevo
Avatar de Usuario

Registrado: Sab Dic 19, 2009 7:33 pm
Mensajes: 36

Nota Publicado: Lun Feb 21, 2011 11:46 am 
Arriba  
angel3071 escribió:
Otro punto del shell es la administracion de usuarios, al crear uno nuevo le pido la contraseña al usuario y con perl, (fue la solucion que encontre despues de mucho leer) la cifro:

Código:
read pass
passwordf=`perl -e 'print crypt("'"$pass"'","SA"), "\n";'`



Si quieres que te quede exactamente igual que en /etc/shadow entonces estás usando la función crypt incorrectamente, prueba con esto:
Código:
perl -e 'print crypt("'"$pass"'","\$'$cypher'\$'$salt'"), "\n"'

Donde pass es la contraseña, cypher es el cifrado a utilizar (1 = md5, 6 = sha512, etc) y el salt que va a ser usado.

_________________
Just feel the code...

 Perfil Email  

Desconectado
Forista Nuevo
Forista Nuevo

Registrado: Dom Feb 20, 2011 10:06 pm
Mensajes: 4

Nota Publicado: Lun Feb 21, 2011 12:05 pm 
Arriba  
neurus escribió:
No se te ocurrió seguir el link, y leerlo, no?

XD amigo no estamos hablando de lo mismo, sin embargo agradezco tu ayuda, tus intenciones al menos. GRACIAS

Editado -- Lun Feb 21, 2011 12:05 pm --

codestation escribió:
angel3071 escribió:
Otro punto del shell es la administracion de usuarios, al crear uno nuevo le pido la contraseña al usuario y con perl, (fue la solucion que encontre despues de mucho leer) la cifro:

Código:
read pass
passwordf=`perl -e 'print crypt("'"$pass"'","SA"), "\n";'`



Si quieres que te quede exactamente igual que en /etc/shadow entonces estás usando la función crypt incorrectamente, prueba con esto:
Código:
perl -e 'print crypt("'"$pass"'","\$'$cypher'\$'$salt'"), "\n"'

Donde pass es la contraseña, cypher es el cifrado a utilizar (1 = md5, 6 = sha512, etc) y el salt que va a ser usado.


mi password en el /etc/shadow es: $6$gVWdBQhw$wwNwKKcvtDlIMaAY....... (con muchos caracteres y simbolos mas) y la misma pero cifrada como usted me propone es, completa: $$vl2tEMVefTA asi que no creo que me funcione tal como me lo propone, aun asi es una gran ayuda, gracias.

 Perfil Email  

Desconectado
Forista Distinguido
Forista Distinguido
Avatar de Usuario

Registrado: Sab Oct 09, 2004 11:00 pm
Mensajes: 1299

Nota Publicado: Lun Feb 21, 2011 12:07 pm 
Arriba  
angel3071 escribió:
Parece que no me explique bien, lo que necesito es encriptar una palabra usando el mismo algoritmo que usa passwd,
(insisto para el proyecto NO PUEDO USAR PASSWD, ojala fuera tan simple como eso.)



mkpasswd prueba
1nGACNXhRdHl

Y no estás usando passwd, sino mkpasswd. ¿leíste el link?

Dicho sea de paso, usar cypher en perl es matar moscas a cañonazos.

 Perfil  

Desconectado
Forista Nuevo
Forista Nuevo
Avatar de Usuario

Registrado: Sab Dic 19, 2009 7:33 pm
Mensajes: 36

Nota Publicado: Lun Feb 21, 2011 12:19 pm 
Arriba  
angel3071 escribió:
mi password en el /etc/shadow es: $6$gVWdBQhw$wwNwKKcvtDlIMaAY....... (con muchos caracteres y simbolos mas) y la misma pero cifrada como usted me propone es, completa: $$vl2tEMVefTA asi que no creo que me funcione tal como me lo propone, aun asi es una gran ayuda, gracias.

Seguro no les has asignado a las variables el valor correcto:
Código:
salt=gVWdBQhw
cypher=6
pass=mypassword
perl -e 'print crypt("'"$pass"'","\$'$cypher'\$'$salt'"), "\n"'
$6$gVWdBQhw$ra1dK7TGNfgdcBVo5ZVyQ39lYGskjNHPrpRC3uhDTOtVHrvy6OXzQCLiWF1cMxNzysZvDZQ4VaJCjwAO8inHS.


@neurus, pues si, hace exactamente lo mismo y hasta te permite escoger el tipo de cifrado :D (es que claro, al ver la salida por defecto del mkpasswd que es md5 uno piensa que no funciona cuando lo del /etc/shadow en cualquier distro reciente viene en sha256)

_________________
Just feel the code...

 Perfil Email  

Desconectado
Forista Distinguido
Forista Distinguido
Avatar de Usuario

Registrado: Sab Oct 09, 2004 11:00 pm
Mensajes: 1299

Nota Publicado: Lun Feb 21, 2011 12:30 pm 
Arriba  
@codestation: bueno, llevo desde el primer post diciéndole al usuario que lea dos links, que apuntan a esa solución elemental.

 Perfil  

Desconectado
Forista Nuevo
Forista Nuevo

Registrado: Dom Feb 20, 2011 10:06 pm
Mensajes: 4

Nota Publicado: Lun Feb 21, 2011 1:04 pm 
Arriba  
neurus escribió:
@codestation: bueno, llevo desde el primer post diciéndole al usuario que lea dos links, que apuntan a esa solución elemental.

E insisto esto es un proyecto escolar, no tengo permitido el uso de programas que cifren la contraseña automáticamente, aunque parezca muy desperdiciado lo tenia que hacer a mano, muchas gracias codestation, tu solución es lo que necesitaba

 Perfil Email  

Desconectado
Moderador
Moderador
Avatar de Usuario

Registrado: Mié Abr 18, 2007 11:00 pm
Mensajes: 1209
Ubicación: Cojutepeque, El Salvador C. A.

Nota Publicado: Lun Feb 21, 2011 3:22 pm 
Arriba  
compañero, por favor pongale el cartel de solucionado a su tema y quítale la palabra Ayuda!. Gracias.

PD: para variar, hace unos días tenía una actividad de hacer algo similar. Y pues tenía prohibido utilizar mkpasswd, a veces toca hacer malabares :S

_________________
Grüße...
Maiku

Full linux alchemist!!!

 Perfil WWW  
Mostrar mensajes previos:  Ordenar por  
 [ 13 mensajes ] 
Nuevo tema Responder al tema

Saltar a:  


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado

No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro
No puede enviar adjuntos en este Foro

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group :: Style based on FI Subice by phpBBservice.nl :: Todos los horarios son UTC - 6 horas
Traducción al español por Huan Manwë
phpBB SEO