Administrando Squid pelo browser, bloquear e liberar máquinas por IP, login, palavras
Este projeto tem como finalidade tornar as tarefas de administração do Squid WebProxy mais fáceis e transparentes, uma vez que nem sempre é o administrador Linux que fará a administração do servidor.
Introdução
AVISO IMPORTANTE: Estava procurando na internet um script para alteração de bloqueios e desbloqueios por site, IP, logins etc. Achei o squidadmin, desenvolvido por Juliano Biscaia, mas vi que o projeto foi descontinuado desde 02-09-2005, como informa o site:
Só não sei o motivo, pois foi ótima a ideia da criação do squidadmin e muito eficiente. Então resolvi pegar esse script e fazer algumas alterações para podermos colocá-lo em pratica novamente.
Caso gostem entre em contato para darmos continuidade ao projeto de Juliano Biscaia, adicionando mais funcionalidades.
Edite o arquivo abaixo:
# visudo -f /etc/sudoers
Adicione essa linha no fim do arquivo:
sudo chmod 777 /etc/squid/acls/bloqueados/sites
$ sudo chmod 777 /etc/squid/acls/bloqueados/ips
$ sudo chmod 777 /etc/squid/acls/bloqueados/logins
$ sudo chmod 777 /etc/squid/acls/bloqueados/palavras
$ sudo chmod 777 /etc/squid/acls/liberados/sites
$ sudo chmod 777 /etc/squid/acls/liberados/ips
$ sudo chmod 777 /etc/squid/acls/liberados/logins
$ sudo chmod 777 /etc/squid/acls/liberados/palavras
Download: squidadmin.tar.bz2
Descompacte o arquivo:
tar -jxvf squidadmin.tar.bz2
Copie para:
sudo cp -r squidadmin /var/www/
Entre na pasta do script:
cd /var/www/squidadmin
Agora mude de acordo com suas configurações os arquivos abaixo, localizando a linha no início do arquivo:
E alterando conforme suas configurações do squid.conf.
Por exemplo:
sudo vim bloquear_ips.php
Procure a linha:
No exemplo acima indico que o arquivo de bloqueio por IP está em /etc/squid/acls/bloqueados/ips.
Faça de acordo com suas configurações com o restante dos arquivos:
sudo vim bloquear_login.php
$ sudo vim bloquear_palavras.php
$ sudo vim bloquear_sites.php
$ sudo vim liberar_ips.php
$ sudo vim liberar_login.php
$ sudo vim liberar_palavras.php
$ sudo vim liberar_sites.php
Só não sei o motivo, pois foi ótima a ideia da criação do squidadmin e muito eficiente. Então resolvi pegar esse script e fazer algumas alterações para podermos colocá-lo em pratica novamente.
Caso gostem entre em contato para darmos continuidade ao projeto de Juliano Biscaia, adicionando mais funcionalidades.
Configurando o sudo
Ambiente que utilizo e que está em funcionamento: Ubuntu 8.04 - Hardy Heron GNU/Linux.Edite o arquivo abaixo:
# visudo -f /etc/sudoers
Adicione essa linha no fim do arquivo:
www-data ALL=NOPASSWD:/usr/sbin/squid -k reconfigure, NOPASSWD:/usr/bin/sort
Permitindo gravação nas ACLs
Dê permissão total de escrita no arquivo das ACLs do seu Squid, no meu caso os arquivos de bloqueios estão em /etc/squid/acls/bloqueados e os liberados em /etc/squid/acls/liberados. Faça de acordo com suas configurações.sudo chmod 777 /etc/squid/acls/bloqueados/sites
$ sudo chmod 777 /etc/squid/acls/bloqueados/ips
$ sudo chmod 777 /etc/squid/acls/bloqueados/logins
$ sudo chmod 777 /etc/squid/acls/bloqueados/palavras
$ sudo chmod 777 /etc/squid/acls/liberados/sites
$ sudo chmod 777 /etc/squid/acls/liberados/ips
$ sudo chmod 777 /etc/squid/acls/liberados/logins
$ sudo chmod 777 /etc/squid/acls/liberados/palavras
Obtendo o script PHP e configurando
Lembrando que já temos o Squid devidamente configurado e Apache2 com suporte PHP rodando perfeitamente, pois não iremos falar desses passos nesse artigo.Download: squidadmin.tar.bz2
Descompacte o arquivo:
tar -jxvf squidadmin.tar.bz2
Copie para:
sudo cp -r squidadmin /var/www/
Entre na pasta do script:
cd /var/www/squidadmin
Agora mude de acordo com suas configurações os arquivos abaixo, localizando a linha no início do arquivo:
$local = "/etc/squid/acls/bloqueados/ips";
E alterando conforme suas configurações do squid.conf.
Por exemplo:
sudo vim bloquear_ips.php
Procure a linha:
$local = "/etc/squid/acls/bloqueados/ips";
No exemplo acima indico que o arquivo de bloqueio por IP está em /etc/squid/acls/bloqueados/ips.
Faça de acordo com suas configurações com o restante dos arquivos:
sudo vim bloquear_login.php
$ sudo vim bloquear_palavras.php
$ sudo vim bloquear_sites.php
$ sudo vim liberar_ips.php
$ sudo vim liberar_login.php
$ sudo vim liberar_palavras.php
$ sudo vim liberar_sites.php
Parabéns pelo artigo.