Sincronizando senhas de e-mail com Myauth 3

Publicado por Vinícius de Oliveira Almeida em 17/09/2010

[ Hits: 9.515 ]

 


Sincronizando senhas de e-mail com Myauth 3



Amigos,

Recentemente recebi um pedido para sincronizar a troca de senha com autenticador Myauth, desenvolvido pelo Patrick Brandao.

Os requisitos são que o webmail seja Squirrelmail e utilize o plugin change_passwd ativo.

Primeiramente mudaremos algumas configurações do plugin change_passwd.

Entre no diretório do plugin, em meu caso é:

# cd /var/www/html/plugins/change_passwd

O arquivo responsável pela troca de senha dos usuários é chamado chpasswd, os parâmetros de troca são:

/var/www/html/plugins/change_passwd/chpasswd <usuário> <antigasenha> <novasenha>

Este parâmetro é o mesmo utilizado pelo squirrelmail, porém executado pelo php.

Editamos o arquivo options.php do plugin e deixamos na seguinte forma:

if (empty($overridePathToChpasswd))
{
   //$cmd = $compatibility_sm_path . "plugins/change_passwd/chpasswd $safe_user $safe_oldpw $safe_newpw 2>&1";
   $cmd = "/var/www/html/plugins/change_passwd/chpasswd $safe_user $safe_oldpw $safe_newpw";

   // Conexao com banco de dados
   $host = "IPDOMYAUTH";
   $usuario = "login";
   $senha = "senha";
   $banco = "admin";
   $conexao = mysql_connect("$host", "$usuario", "$senha") or die (mysql_error());
   $banco = mysql_select_db("$banco") or die(mysql_error());
   $sql = "UPDATE admin.login SET pass = $safe_newpw WHERE login.user = $safe_user";
   mysql_query($sql) or die(mysql_error());
}

Salve o arquivo.

Após estas alterações necessitamos de mais alguns ajustes.

Ajustando servidor MySQL

Na edição do plugin vimos que o squirrelmail faz uma chamada pelo php no banco de dados do myauth. Para que isto funcione, devemos aceitar conexões remotas do endereço ip do squirrelmail.

Exemplo:

Utilizando mysqladmin para criar as permissões:
Linux: Sincronizando senhas de E-mail com Myauth 3
Na imagem acima criamos o login root marcando todos os privilégios.

Logo após adicionar o usuário root remoto, editamos o arquivo de inicialização do MySQL do myauth 3:

# vi /etc/rc.d/rc.mysql

Comente a linha $SKIP:

#SKIP="--skip-networking"

Reinicialize o servidor MySQL:

# /etc/rc.d/rc.mysql restart

Após reiniciar o MySQL, teste sua troca de senha, entrando no squirrelmail e mudando o password.

E fim...

Espero que tenho ajudado.

Vinicius
IDEA
msn: vinicius@srvr.com.br

Outras dicas deste autor

Instalando placa de rede Agere Systems ET131x PCI-E no Linux

Replicar banco de login do Myauth 3

Exploit dá acesso root em máquina local - kernels 2.6.17 e 2.6.24.1

Instalando Tcptrack no Slackware 13

Explorando vulnerabilidades em websites

Leitura recomendada

Como fazer um alias para uma placa de rede

Habilitando botões desligar e reiniciar no XFCE

Terminais estilo Quake para Linux

Sempre e poderoso cat

CFTV completo no Debian Sarge 3.1

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts