Jump to content


Photo

Webhostbr


  • Faça o login para participar
47 replies to this topic

#31 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 30/01/2005, 17:50

Na verdade, para gerar senha do unix, seria esse módulo Crypt::PasswdMD5

use Crypt::PasswdMD5;
$password="senha";
$cryptedpassword = unix_md5_crypt($password, $salt);


Ele retornaria algo como

$1$DYULtC4f$qSVb1D0lAXpQmZd/8Na6Y/

#32 jgcl

jgcl

    João Gabriel C. Laass, Serra/ES

  • Usuários
  • 559 posts
  • Sexo:Não informado
  • Localidade:Serra / ES
  • Interesses:Tudo!

Posted 30/01/2005, 17:51

alguém já fez algum teste pra ver se o resultado em ambos os módulos sai a mesma coisa??

flw
João Gabriel
Site >> joaogabriel.org
CGiClube.net >> http://www.cgiclube.net
Vitória Perl Mongers >> http://vitoria.pm.org

#33 Whitesnake

Whitesnake
  • Visitantes

Posted 30/01/2005, 18:04

Não é igual não.
$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 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 30/01/2005, 18:07

Já fiz, não sei se chegou a ler os links q postei anteriormente, mas o unix utiliza o salt também para gerar senha, ou seja, uma senha no shadow é composta de 34 bytes (os 2 primeiros bytes para o salt e 32 bytes da senha). O md5 sempre gera strings de 32 bytes.


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

#35 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 30/01/2005, 18:17

ai vai um exemplo de como altero a senha dos users por formulário

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);


#36 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 31/01/2005, 09:50

onde acho o download desses modulos
procurei na cpan mais nao tem o pacote completo, so arquivo por arquivo

flw
Editado pela equipe Forum Wmo, favor ler as regras.

#37 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 31/01/2005, 10:40

pegue ele nessa lista http://www.cpan.org/...ules.index.html

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

#38 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 03/02/2005, 13:22

pessoal, olhem:
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
Editado pela equipe Forum Wmo, favor ler as regras.

#39 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 04/02/2005, 01:52

Pra desligar seu usuário deve ter permissão de administrador

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) :D , são o seu domínio só vai funcionar localmente

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.


#40 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 04/02/2005, 09:01

e como eu faço para ja criar as dns pro dominio e abilitar para o script rodar como root???

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
Editado pela equipe Forum Wmo, favor ler as regras.

#41 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 04/02/2005, 10:07

isso tudo seria onde está instalado o seu apache, /path ata o apache/ ai vai ter logs, conf etc..., não sei se instalou o named, mas se não tiver instalado, geralmente ele fica em /var/named e /etc/named.conf

Edição feita por: Hospedar-se .Com, 04/02/2005, 10:10.


#42 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 04/02/2005, 11:06

e como é que tem que incluir os dados???
como fica locado a linha do dominio nesse nomed????
Editado pela equipe Forum Wmo, favor ler as regras.

#43 Hospedar-se .Com

Hospedar-se .Com

    Super Veterano

  • Usuários
  • 1500 posts
  • Sexo:Masculino
  • Localidade:São Paulo - SP

Posted 04/02/2005, 12:07

http://www.vivaolinu...o=1667&pagina=1

#44 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 05/02/2005, 07:30

alguem ai que tenha linux sera que pode testar o codigo que fiz????

e qual programa devo usar para rodar o scrit de criar conta em root no linux?

é possivel criar um server no kurumin?

flw
Editado pela equipe Forum Wmo, favor ler as regras.

#45 Gabriel

Gabriel

    CGI & PHP até Morre!!!!

  • Usuários
  • 573 posts
  • Sexo:Não informado
  • Localidade:Santo Andre-SP
  • Interesses:http://www.divulgue-me.com

Posted 05/02/2005, 10:39

andei procurando e achei isso que tbm deve ser colocado quando criado um dominio no server
############
# Adciona dominio no /etc/hosts
############
open(HOST, "/etc/hosts");
print HOST "$ip $login www.$dominio $login\n ";
close(HOST);

flw
Editado pela equipe Forum Wmo, favor ler as regras.




1 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)


    Bing (1)
IPB Skin By Virteq