Script para adicionar e remover usuários no IMSPECTOR
Publicado por evandro matos couto (última atualização em 14/09/2011)
[ Hits: 5.807 ]
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> ~;
Inserindo sites em Lista do Squid
Processa todos os SlackBuild's
Inserindo sites em Lista do Squid
Manipulação de Arquivos Orientada a Objetos
Contagem de linhas em Perl (= wc -l)
Nenhum comentário foi encontrado.
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Ruído no Microfone (ALC287 - AMD Ryzen 5 7535HS) no Debian 12.9 (15)
Linux iniciando sem interface gráfica (12)