Webhostbr
#31
Posted 30/01/2005, 17:50
use Crypt::PasswdMD5;
$password="senha";
$cryptedpassword = unix_md5_crypt($password, $salt);
Ele retornaria algo como
$1$DYULtC4f$qSVb1D0lAXpQmZd/8Na6Y/
Hospedagem de Sites // Revenda de Hospedagem // Streaming & Web Rádio // Domínios // Vps
Hospedagem Ilimitada -> R$ 15,00 ao Mês + 30 Dias Grátis
Outros Sites: Jogos Loucos em Flash | Divulgue seu site Gratis | Web Masters Dicas & Tutoriais
#32
Posted 30/01/2005, 17:51
flw
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org
#33
Whitesnake
Posted 30/01/2005, 18:04
$string="Bla bla bla"; com:
Crypt-PasswdMD5 = "$1$$I79J.7AuULx79Ic1u17wa1"
Digest-MD5 = "646168e06ba20d739d3d9bb76487db86"
É melhor usar Digest se o intuito for fazer um id pra usuário, arquivos. Pois ele pode ser facilmente transportado por querystring
#34
Posted 30/01/2005, 18:07
Pra fazer isso, ele usa o Crypt + MD5 + SALT = 34 bytes
No primeiro módulo, a senha sairia com 32 bytes, mas não funcionaria quando colocada no /etc/shadow para o usuário, alguns sistemas podem até funcionar só com o comando crypt, mas seria mais fácil de ser descoberta
Hospedagem de Sites // Revenda de Hospedagem // Streaming & Web Rádio // Domínios // Vps
Hospedagem Ilimitada -> R$ 15,00 ao Mês + 30 Dias Grátis
Outros Sites: Jogos Loucos em Flash | Divulgue seu site Gratis | Web Masters Dicas & Tutoriais
#35
Posted 30/01/2005, 18:17
my $shadowfile = "/etc/shadow";
my $saida = `grep ^$usuario: $shadowfile`;
if ($saida !~ /[A-Z]/i) { $err="Usuário não encontrado!"; }
my $inshadow = "";
open(R,$shadowfile);
while (<R>) {
if ($_ =~ /^$usuario:/) {
my ($user,$pass,$rest) = split(/:/,$_,3);
use Crypt::PasswdMD5;
my $newpass = unix_md5_crypt($senha, $salt);
$inshadow .= $usuario . ':' . $newpass . ':' . $rest;
}
else { $inshadow .= $_; }
} # fim while
close(R);
open(W,"> $shadowfile");
print W $inshadow;
close(W);
Hospedagem de Sites // Revenda de Hospedagem // Streaming & Web Rádio // Domínios // Vps
Hospedagem Ilimitada -> R$ 15,00 ao Mês + 30 Dias Grátis
Outros Sites: Jogos Loucos em Flash | Divulgue seu site Gratis | Web Masters Dicas & Tutoriais
#36
Posted 31/01/2005, 09:50
procurei na cpan mais nao tem o pacote completo, so arquivo por arquivo
flw
#37
Posted 31/01/2005, 10:40
ai mostra todos os modulos e o link do download
http://www.cpan.org/...dMD5-1.3.tar.gz
http://www.cpan.org/...MD5-2.33.tar.gz
Hospedagem de Sites // Revenda de Hospedagem // Streaming & Web Rádio // Domínios // Vps
Hospedagem Ilimitada -> R$ 15,00 ao Mês + 30 Dias Grátis
Outros Sites: Jogos Loucos em Flash | Divulgue seu site Gratis | Web Masters Dicas & Tutoriais
#38
Posted 03/02/2005, 13:22
fiz um pequeno script em cgi/perl para criar os usuarios no linux. Mais tenho uma duvida:
é assim que devo proceder para criar um usuario no linux ja determinando o login e senha para o apache/linux/ftp:
#!/usr/bin/perl
############
# Determino variaveis
############
use CGI;
$cgi=new CGI;
$login = $cgi->param("login");
$senha = $cgi->param("senha");
$dominio = $cgi->param("dominio");
$apache = "/usr/apache";
$path = "/home";
$id=time();
$ip="127.0.0.1";
############
# Encriptação da senha em MD5
############
use Digest::MD5 qw(md5 md5_hex md5_base64);
$senhamd5 = md5_hex($senha);
############
# Cadastro dominio no httpd.conf do apache
############
open(APACHE,">>$apache/httpd.conf");
print APACHE "<VirtualHost $ip:80>\n";
print APACHE " ServerAdmin admin\@$dominio\n";
print APACHE " DocumentRoot $patch/$login\n";
print APACHE " ServerName $dominio\n";
print APACHE " ServerAlias www.$login\n";
print APACHE " ScriptAlias /cgi-bin/ $patch/$login/cgi-bin/\n";
print APACHE "</VirtualHost>\n";
print APACHE "\n";
close (APACHE);
############
# Adciono o usuario no apache
############
system ("useradd -m -p $login -g users -d $path/$login $login");
############
# Determino senha e login de acesso
############
system ("echo $login:$senhamd5} |chpasswd");
############
# Crio as pastas do usuario
############
system ("mkdir $path/$login/public_html");
system ("mkdir $path/$login/public_html/cgi-bin");
system ("mkdir $path/$login/logs");
system ("mkdir $path/$login/mail");
############
# Crio uma index.html para a pasta principal não fica vazia
############
open(INDEX,">>$path/$login/index.html");
print INDEX "<title>www.$dominio</title><br><br><br><br><br><center><b>www.$dominio</b></center>\n";
close(INDEX);
############
# Cadastro o usuario em um Banco de Dados para manutenção
############
open(DADOS,">>$path/controle/users.dat");
print DADOS "$id|$dominio|$login|$senha\n";
close(DADOS);
############
# Reinicio o apache
############
system ("$apache/bin/apachectl restart");
############
# Imprimo mensagem de concluido
############
print "Content-type: text/html\n\n";
print "Conta criada com sucesso para o usuario <i>$login</i> com o dominio <i>www.$dominio</i>!";
exit;é assim que tem que funcionar o sistema????
e está certo a parte que determino a senha do ftp para acesso da conta do usuario???
quem souber mais coisa, manda ai!!!!
aproveitando o topico, qual é mesma a url que determino qual sera os arquivos de erro e onde ficara cada log de cada usuario?
e ai vai uma dica de como desligar o serv. linux via codigo
system ("/sbin/shutdown");Alguem sabe como reiniciar o linux via codigo ai?flw
#39
Posted 04/02/2005, 01:52
Reiniciar forçado
[root@server root]# shutdown -r now
Reiniciar normal
[root@server root]# reboot
Desligar
[root@server root]# shutdown -h now
Sobre o código, para alterar a senha, vc pode usar esse exemplo que postei
Para senha, você deve usar o módulo Crypt::PasswdMD5 o Digest::MD5 não vai funcionar quando você for tentar fazer o login com esse usuário.
E faltou a parte do named (dns)
O FTP, existem vários, mas eu pessoalmente prefiro o pure-ftpd por ser mais rápido, usar pouca memória e usa o /etc/shadow como lista de usuários, criando o usuário com a senha ele ja cria pro ftp tbm
Sobre o script, ele só funcionaria no apache se vc fizer com que ele execute com permissão de root, se vc se logar como root no KDE ou Gnome e acessar seu script ele vai funcionar normal, mas se outro usuário acessar o script ele não vai deixar criar, pq esses arquivos q vc está abrindo é do UID e GID "0" (root)
Edição feita por: Hospedar-se .Com, 04/02/2005, 01:55.
Hospedagem de Sites // Revenda de Hospedagem // Streaming & Web Rádio // Domínios // Vps
Hospedagem Ilimitada -> R$ 15,00 ao Mês + 30 Dias Grátis
Outros Sites: Jogos Loucos em Flash | Divulgue seu site Gratis | Web Masters Dicas & Tutoriais
#40
Posted 04/02/2005, 09:01
e a parte de e-mails, como ficaria
e qual é mesmo o codigo para determinar a pagina de erro 404 de cada dominio? e onde ficara os logs de cada dominio?
flw
#41
Posted 04/02/2005, 10:07
Edição feita por: Hospedar-se .Com, 04/02/2005, 10:10.
Hospedagem de Sites // Revenda de Hospedagem // Streaming & Web Rádio // Domínios // Vps
Hospedagem Ilimitada -> R$ 15,00 ao Mês + 30 Dias Grátis
Outros Sites: Jogos Loucos em Flash | Divulgue seu site Gratis | Web Masters Dicas & Tutoriais
#42
Posted 04/02/2005, 11:06
como fica locado a linha do dominio nesse nomed????
#43
Posted 04/02/2005, 12:07
Hospedagem de Sites // Revenda de Hospedagem // Streaming & Web Rádio // Domínios // Vps
Hospedagem Ilimitada -> R$ 15,00 ao Mês + 30 Dias Grátis
Outros Sites: Jogos Loucos em Flash | Divulgue seu site Gratis | Web Masters Dicas & Tutoriais
#44
Posted 05/02/2005, 07:30
e qual programa devo usar para rodar o scrit de criar conta em root no linux?
é possivel criar um server no kurumin?
flw
#45
Posted 05/02/2005, 10:39
############
# Adciona dominio no /etc/hosts
############
open(HOST, "/etc/hosts");
print HOST "$ip $login www.$dominio $login\n ";
close(HOST);
flw
1 user(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)










