shell script

Iniciado por EMPICAL, 20 Mayo 2003, 20:34 PM

0 Miembros y 1 Visitante están viendo este tema.

JorgeEMX

#40
Si mm :\ deja ver, por ahora me tengo que ir XD, pero si quieres pon aqui el cgi para que lo vea en la noche..

El problema es que el password esta cifrado mediante un programa llamado creo crypt o algo así.. deja lo verifico y checo si se puede comparar apartir del hash que devuelva..

Edit
----------------------

Pensandolo bien XD mejor has un archivo con el nombre de usuario y hash (usuario:hash) ya seá MD5 o DES, el cual debe también existir en el /etc/shadow..

Aunque en verdad no se que es lo que quieras hacer con eso xD, si quieres identificarte en una pagina web es mejor que uses la misma utentificación de apache..

Saludos!!

thefame

#41
Muy buenas.

He estado preguntando y me han dixo que si cojo el password que me ha entrado el usuario  mediante web, le hago la funcion crypt y si la contraseña que me ha entrado es correcta, esta funcion crypt me devolverá el pass cifrado. Asi solo tendré que comparalo con el que hay en el fichero /etc/shadow.

El problema q tengo es q no se como utilizar esta funcion:

Código (bash) [Seleccionar]


#!/bin/bash
echo Content-type: text/html
echo

pass="hola"
echo "password: "$pass
c=`crypt($pass, "aa")`    #probé con la opción -lcrypt  -> tp
echo "Password EnCrypt: "$c



A ver si alguien me podria decir si de la maenra que he pensado se podria hacer y como he de poner la funcion  crypt.

Gracisa de antemano.

JorgeEMX

usa perl ;)

es que depende con que sal y algoritmo este hecha (puede variar y sería cosa de averiguar cual usa tu distro)..

ademas te sugiero que crees una contraseña con crypt y esa misma pongas en el /etc/shadow y la misma función la uses para generar la que te envie del formulario y compararla (así sabras exactamente en que esta hecha y con que sal)..

Saludos!!

xasvix

El string que se almacena en shadow, depende del momento ( date ) que se introduce el passwd. Solo con crypt no vas a conseguir el mismo string ( no recuerdo bien el proceso, tendría que buscarlo ).

Aprovecho para soltar otro problemilla:

Quero hacer una cosa tal que así :

FICHER=/usr/bin/* /usr/sbin/*
md5 $FICHER

La variable FICHER puede ir creciendo conforme agregue directorios y puede que al final desborde el tamaño máximo. Esto sucede pq al asignarla a FICHER el shell interpreta '*' y mete toda la ristra de ficheros.  Hay alguna forma de evitar esto ??
La alternativa sería pasarle al md5 un `ls -` que devuelva el listado de ficheros con el path pero tampoco se como hacerlo.
En fin, se agradece cualquier sugerencia. :-\

situ

Buenas aca tienen algunos ejemplos sobre shell script.
http://foro.elhacker.net/index.php/topic,12214.30.html
Si alguno necesita algo en especial, podemos ver si entre todos podemos realizar lo pedido :D

cthulhufhtagn

Cita de: xasvix en 23 Marzo 2006, 17:39 PM
La variable FICHER puede ir creciendo conforme agregue directorios y puede que al final desborde el tamaño máximo. Esto sucede pq al asignarla a FICHER el shell interpreta '*' y mete toda la ristra de ficheros.  Hay alguna forma de evitar esto ??
La alternativa sería pasarle al md5 un `ls -` que devuelva el listado de ficheros con el path pero tampoco se como hacerlo.
En fin, se agradece cualquier sugerencia. :-\


md5sum $(ls -d $FICHER)

Te tirará error por cada direcotorio, pero no los lista recursivamente.

kennet

Hola the fame..como t efue con el desarrollo de ti script para validar el usuario y password para el apache....yo estoy tratando de hacer algo similar y tu informacion seria muy importante..gracias de antemano

kennet

 :huh:  Tengo este shell script :
echo -e $2 | passwd --stdin $1
que me permite cambiar el password del cualquier usuario del SO (Centos 4.x)esto me funciona siempre y cuando lo ejecuto como root, pero ahora estoy en como hacer una pagina dinamica (PHP o cualquier otro) que me permita llamar y ejecutar este script obiamente pasandole los parametros de user y nuevaclave.
Su(s) ayuda(s) para ver como hago esta pagina.
Ah..esta pagina se ejecutara cuando ya este en dentro de una sesion de usuario del sistema, es decir solo se pedira la nueva clave, para que junto al user que ya se tiene en ese momento enviarla como parametros al script.
Les quedare muy agradecido por sus ayuda.


comapalta

Cual de esos esta en español men?