Script para adicionar e remover usuários no IMSPECTOR
Publicado por evandro matos couto (última atualização em 14/09/2011)
[ Hits: 6.073 ]
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>
~;
Script que procura uma palavra em um arquivo.
Adiciona-Altera senhas/usuarios no sistema
script para localizar conteudo de arquivo
Nenhum comentário foi encontrado.
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como fazer a conversão binária e aplicar as restrições no Linux
Como quebrar a senha de um servidor Linux Debian
Como bloquear pendrive em uma rede Linux
Um autoinstall.yaml para Ubuntu com foco em quem vai fazer máquina virtual
Instalar GRUB sem archinstall no Arch Linux em UEFI Problemático









