RES: [FUGSPBR] php + sudo
Sergio Jose Ferreira
sergio em wgo.com.br
Qui Dez 11 12:19:23 BRST 2003
Carlos,
Instala o vpopmail.pm no perl e faz um script em perl para gerenciar as
contas.
o script vai ser mais ou menos assim :
#!/usr/local/bin/perl -w
### By Sérgio José Ferreira - WGO Internet
### Parte do Ispadmin http://www.ispadmin.com.br
use strict;
use CGI qw(:standard);
use vpopmail;
use File::stat;
my $q = new CGI;
print $q->header( "text/plain");
my ( $user, $domain ) = split( /@/, $q->param("Email"));
my $funcao = $q->param("Funcao");
# Verificar se o domínio existe
my $ddir = vgetdomaindir($domain);
my $pwd = vauth_getpw($user,$domain);
if ( $funcao eq 'ADD' ) {
if ( ! $ddir ) { print "*** ERRO-DOMINIO ***"; }
if ( $pwd ) { print "*** ERRO-EXISTE ***"; }
else {
my $pass = $q->param("Password");
my $name = $q->param("Login");
my $quota = $q->param("Quota");
$quota = $quota * 1024 * 1024;
my $retorno = add($user,$domain,$name,$pass,$quota);
print "*** $retorno ***";
}
}
if ( $funcao eq 'CHG' ) {
if ( ! $pwd ) { print "*** ERRO-NAOEXISTE ***"; }
else {
my $pass = $q->param("Password");
my $name = $q->param("Login");
my $quota = $q->param("Quota");
$quota = $quota * 1024 * 1024;
my $retorno = change($user,$domain,$name,$pass,$quota);
print "*** $retorno ***";
}
}
## Incluir Usuário no vpopmail
sub add {
my ( $user, $domain, $name, $pass, $quota ) =@_;
if ( ( vadduser($user, $domain, $pass, $name, 0) ) == 0 ) {
vsetuserquota($user, $domain, $quota);
return 'OK-INCLUIR'; } else { return 'ERRO-INCLUIR';}
}
## Incluir Usuário no vpopmail
sub change {
my ( $user, $domain, $name, $pass, $quota ) =@_;
if ( ( vpasswd($user, $domain, $pass,0) ) == 0 ) {
vsetuserquota($user, $domain, $quota);
return 'OK-ALTERAR'; } else { return 'ERRO-ALTERAR';}
}
sub del {
my ( $user, $domain ) =@_;
if ( ( vdeluser($user, $domain) ) == 0 ) { return 0; } else { return 1;}
}
No PHP, use fsockopen para chamar o script em perl, assim, não precisará
abrir uma nova página.
[]'s
Sérgio José Ferreira
WGO Internet
-----Mensagem original-----
De: fugspbr-fugspbr.org-bounces em fugspbr.org
[mailto:fugspbr-fugspbr.org-bounces em fugspbr.org]Em nome de Carlos
Enviada em: quinta-feira, 11 de dezembro de 2003 11:08
Para: fugspbr em fugspbr.org
Assunto: [FUGSPBR] php + sudo
Pessoal
Estou pensando em usar o php pra criar e gerenciar contas usando os
comando do vpopmail.
Esta funcionando usando o sudo como no script abaixo.
$comando = '/usr/local/bin/sudo /home/vpopmail/bin/vuserinfo '.$email;
$last_line = system($comando, $retval);
Gostaria de saber se isto é seguro?
O sudo esta atualizado e o sudoers file ta assim:
www ALL=(ALL) NOPASSWD: ALL
Se alguem tiver outra solução gostaria de saber. Ja uso tambem o vqadmin e
qmailadmin.
uso freebsd 5.1
--
CAT
_______________________________________________________________
Sair da Lista: http://lists.fugspbr.org/listinfo.cgi
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/
_______________________________________________________________
Sair da Lista: http://lists.fugspbr.org/listinfo.cgi
Historico: http://www4.fugspbr.org/lista/html/FUG-BR/
Mais detalhes sobre a lista de discussão freebsd