[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re:[shell-script] htpasswd em cgi (senhas criptografadas)
From: |
MrBiTs |
Subject: |
Re:[shell-script] htpasswd em cgi (senhas criptografadas) |
Date: |
Tue, 24 Jan 2006 13:21:33 -0300 |
> Estou fazendo uma autenticação pelo Apache (2.0.54) de um cgi (feito
> em shell script). Li essa thread
> http://thread.gmane.org/gmane.org.user-groups.programming.shell.brazil/9974
> que só fez me deixar com mais dúvidas ainda ;)
> O que eu queria fazer era saber se a senha que foi digitada em um form
> de uma página HTML é igual a senha criptografada que está no arquivo
> .htpasswd, ex.:
> admin:$apr1$DXEZZ/..$EuDQbwbv3Wmf1QKe.leZd0
> Esse usuário é o admin e a senha é admin. Como criptografo "admin"
> para que resulte em "EuDQbwbv3Wmf1QKe.leZd0"? Esta é a senha
> criptografada? E o outro campo (apr1$DXEZZ), o que significa?
>
> []s
>
> ps: a busca das mensagens antigas dessa lista pela news na web ajudou
> muito e a página do Thobias (http://thobias.org/doc/cgi_shell.html)
> também.
> ps2: espero que essa dúvida não seja um OT... :P
A senha criptografada do usuário admin é a
$apr1$DXEZZ/..$EuDQbwbv3Wmf1QKe.leZd0. Note que o separador de
campos do .htpasswd é o :
Vale uma leitura na documentação do apache para que voce entenda o processo de
autenticação do servidor.
O Apache, por si só, já faz a verificação de usuário e senha, desde que um
arquivo .htaccess também tenha sido
definido. Para você comparar a senha digitada no form com a senha criptografada
do arquivo .htpasswd, você
precisa criptografar o conteúdo do campo e compará-lo com a senha
criptografada. O algorítmo usado é o mesmo da
função crypt(key, salt) do Unix. Novamente, a documentação do Apache traz
algumas informações a respeito.
Eu acho que o caminho mais simples é configurar um .htaccess corretamente para
o diretório onde seus CGI rodam
e autenticar o usuário utilizando os recursos do próprio apache.
- Re:[shell-script] htpasswd em cgi (senhas criptografadas),
MrBiTs <=