[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Auto recuperação de senhas dos clientes do servidor ftp



Muito obrigado pela ajuda!

Vou testar aqui pra minha sitiuação e tentar adaptar coisas caso necessário. Mas o script em python já deu grande ajuda.
Fato que esqueci de melhor descrever, é que o uso disso seria para clientes em ftp (que já têm seu acesso bloqueado por ssh, e para navegar em demais pastas que não o /home deles).
[]'s Arnaldo.
----
Arnaldo D'Amaral Pereira Granja Russo
Lab. de Estudos dos Oceanos e Clima
Instituto de Oceanografia
Universidade Federal do Rio Grande
e-mail arnaldorusso [at] gmail [dot] com
tel   (53) 3233-6855



Em 10 de agosto de 2011 00:30, Helio Loureiro <helio@loureiro.eng.br> escreveu:

Boa tarde moçada!
Gostaria de obter alguma dica dos amigos.
Procuro uma ferramenta de fácil aplicação, onde usuários já criados no servidor pudessem recuperar suas senhas.
Estou tendo como base a idéia do "esqueceu sua senha? Clique aqui" e a senha é encaminhada por e-mail.
Obrigado pela atenção.
Arnaldo.



Eu faria um script, mas não para recuperar a senha, mas para dar reset e criar uma nova.  Eu uso makepasswd misturado com python:

#! /usr/bin/python

import os
import smtplib
import sys


def mail(sender, rcpt, passwd):
        msg = "From: %s\n" % sender
        msg = msg + "To: %s@domain.com\n" % rcpt
        to = []
        to.append("%s@domain.com" % rcpt)
        msg = msg + "Subject: Your access to domain.com\n"
        msg = msg + "Hi %s,\n\n" % rcpt
        msg = msg + "Welcome to our newest server.  Unfortunately your\n"
        msg = msg + "information was reseted during migration.\n"
        msg = msg + "\nYour new password is %s\n" % passwd
        msg = msg + "\nFell free to connect and change password accordingly.\n"
        server = smtplib.SMTP('localhost')
        server.set_debuglevel(0)
        server.sendmail(sender, to, msg)
        #print msg
        server.quit()

def changepasswd(user):
        newpass = os.popen("makepasswd --chars=16").read()
        print "%s:%s" % (user, newpass),
        cmd = "chpasswd -c SHA512 << EOF\n%s:%sEOF\n" % (user, newpass)
        os.system(cmd)

        return newpass

sender = raw_input("Enter your mail: ")
login = raw_input("Enter login to receive password: " )
passwd = changepasswd(login)
mail(sender, login, passwd)


[]´s
Helio Loureiro
http://helio.loureiro.eng.br
http://hloureiro.multiply.com
http://twitter.com/helioloureiro
http://gplus.to/helioloureiro
 


Reply to: