Script para adicionar e remover usuários no IMSPECTOR
Publicado por evandro matos couto (última atualização em 14/09/2011)
[ Hits: 5.746 ]
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> ~;
Rsync e Perl: Sincronização de arquivos com gestão de backup incremental integrada
Script que remove palavras de um arquivo.
Adiciona-Altera senhas/usuarios no sistema
Nenhum comentário foi encontrado.
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
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
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Criando uma VPC na AWS via CLI
Tem como instalar o gerenciador AMD Adrenalin no Ubuntu 24.04? (12)