Script para adicionar e remover usuários no IMSPECTOR
Publicado por evandro matos couto (última atualização em 14/09/2011)
[ Hits: 5.712 ]
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> ~;
Adiciona-Altera senhas/usuarios no sistema
Rsync e Perl: Sincronização de arquivos com gestão de backup incremental integrada
script para localizar conteudo de arquivo
Inserindo sites em Lista do Squid
Script para adicionar sites ao Squid
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Flatpak: remover runtimes não usados e pacotes
Mudar o gerenciador de login (GDM para SDDM e vice-versa) - parte 2
Wifi não funciona no Aspire ES 15 com o Debian (8)
Como atualizar o Debian 8 para o 10 (10)
Dica sobre iptables ACCEPT e DROP (6)
NGNIX - Aplicar SNAT para evitar roteamento assimetrico (29)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta