Script para adicionar e remover usuários no IMSPECTOR
Publicado por evandro matos couto (última atualização em 14/09/2011)
[ Hits: 6.160 ]
Homepage: tutoriaisgnulinux.com
Pessoal,
Este script foi feito para que utiliza o Imspector como proxy de MSN.
Sua função é principal é adicionar e remover usuários na lista de acl.
Para que esse script funcione, será preciso alterar algumas configurações dentro do arquivo /etc/sudoers.
Mão na massa então!
1 – abra o arquivo /etc/sudoers e adicione a seguinte linha abaixo:
# vim /etc/sudoers
apache ALL=NOPASSWD: /usr/bin/killall, /usr/sbin/imspector
2 – No diretório /var/www/cgi-bin/ crie o diretório firewall e adicione o script abaixo:
# vim imspector.pl
#!/usr/bin/perl
use Shell;
use CGI qw /:standard/;
use CGI::Carp qw (fatalsToBrowser);
# FUNÇÃO PARA CONSULTAR O MSN
sub consulta_msn {
my @msn = ();
open(MSN, "< /usr/etc/imspector/acl.txt");
while(<MSN>) {
if($_ =~ /^allow all (.*)\@(.*)/)
{
push(@msn, $1 . "@" . $2);
}
}
close(MSN);
return @msn;
}
# UTILIZANDO A SUB "FUNÇÃO"
@msn = &consulta_msn();
# CADASTRANDO OS NOVOS MSN
if (CGI::param("bt_msnaccept"))
{
$add_msn = CGI::param("txt_msn");
push @msn, $add_msn;
%msn = map { $_ => 1 } @msn;
open(MSN, "+>:encoding(UTF-8)", "/usr/etc/imspector/acl.txt");
foreach (keys %msn){
print MSN "allow all " . $_ . "\n";
}
print MSN "\n";
print MSN "deny all\n";
close(MSN);
`sudo /usr/bin/killall /usr/sbin/imspector`;
`sudo /usr/sbin/imspector`;
print "Status:301\n";
print "Location:/cgi-bin/firewall/imspector.pl\n\n";
exit;
}
# REMOVENDO OS USUARIOS DO ARQUIVO /usr/etc/imspector/acl.txt
if(CGI::param("bt_msndrop"))
{
$rem_msn = CGI::param("sel_msn");
for ( $i = 0 ; $i <= $#msn; $i++ ) {
if ( @msn[$i] =~ /$rem_msn/ )
{
delete @msn[$i];
next;
}
}
%msn = map { $_ => 1 } @msn;
open(MSN, "+> /usr/etc/imspector/acl.txt");
foreach (keys %msn){
print MSN "allow all " . $_ . "\n" if($_ ne '');
}
print MSN "\n";
print MSN "deny all\n";
close(MSN);
`sudo /usr/bin/killall /usr/sbin/imspector`;
`sudo /usr/sbin/imspector`;
print "Status:301\n";
print "Location:/cgi-bin/firewall/imspector.pl\n\n";
exit;
}
# TRATAMENTO PARA TELA
foreach (sort @msn){
$msn .= "<option> $_</option>";
}
print "Content-type: text/html\n\n";
# HTML
print qq~
<html>
<head>
<title></title>
</head>
<body>
<center><h4> IMSPECTOR PROXY DE MSN<br></H4></center>
<br><br>
<form METHOD="POST">
<center>
<table>
<tr>
<td style="text-align: left; background-color: black; width:350px; height: 15px">
<input type="text" name="txt_msn" size="35" style="width:100%">
</td>
<td>
<input name="bt_msnaccept" type="submit" value="ACCEPT">
</td>
</tr>
<tr>
<td style="background-color: black;">
<select name="sel_msn" style="width:100%" size="15">$msn</select>
</td>
<td valign="top">
<input name="bt_msndrop" type="submit" value="DROP">
</td>
</tr>
</table>
</center>
</form>
</body>
</html>
~;
Manipulação de Arquivos Orientada a Objetos
Inserindo sites em Lista do Squid
Nenhum comentário foi encontrado.
Fscrypt: protegendo arquivos do seu usuário sem a lentidão padrão de criptograr o disco
Faça suas próprias atualizações de pacotes/programas no Void Linux e torne-se um Contribuidor
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Utilizando a Ferramenta xcheckrestart no Void Linux
Pisando no acelerador do Linux Mint: Kernel XanMod, zRAM e Ajustes de Swap
Como compilar kernel no Linux Mint
Abrir um arquivo URL pelo Clipper (9)
Seno, Coseno, Tangente em CLIPPER (1)
Inserir uma URL num arquvo pelo Ubuntu (CLIPPER) (0)
VMWare Player não conecta na rede nem consigo intercambiar arquivos (1)









