Bloqueando páginas impróprias
Agora vamos começar a limitar o acesso do pessoal, sobre a navegação de páginas na Web.
Para isso, vamos criar os arquivos que vão conter os links dos sites impróprios. E também, vamos definir a faixa de IPs que terão acesso total.
Então execute:
# touch /etc/squid/sites.permitido # sites permitidos
# touch /etc/squid/sites.negado # sites negados
# touch /etc/squid/palavras.negado # E palavras negadas
# touch /etc/squid/ip.funcionarios
# touch /etc/squid/ip.diretoria
Agora edite o arquivo "sites.permitido":
# nano /etc/squid/sites.permitido
Dentro deste arquivo, coloque os sites que você quer liberar.
Ex.: Sites de bancos, de notícias e etc... Isto depende da politica de cada empresa:
itau.com.br
bradesco.com.br
globo.com
Faça o mesmo com os outros arquivos, com suas respectivas informações:
- Site.negado - Para sites que não terão acesso.
- palavras.negada - Para palavras que serão bloqueadas dentro do site.
Dentro do arquivo "ip.funcionarios", defina as faixas de IPs que não terão acesso às páginas adicionadas nos arquivos "sites.negado" e "palavras.negado".
Dentro do arquivos "ip.funcionarios", coloque as informações da seguinte maneira:
192.168.1.100
192.168.1.101....
Faça o mesmo com o "ip.gerencia", salve e saia.
Vale uma dica, cuidado com o que se adiciona nos arquivos de bloqueio, pois bloquear palavras erradas, pode ocasionar muitos problemas.
Agora vamos adicionar estas informações no arquivo principal do Squid. Então execute:
# nano /etc/squid/squid.conf
Acima da seguinte linha:
# Travando micros locais para usaram o proxy
http_access allow localhost
http_access allow redelocal
Coloque estas informações:
# Grupos de Acesso
acl Diretoria src "/etc/squid/ip.diretoria"
acl Funcionarios src "/etc/squid/ip.funcionarios"
# Sites Permitido/Negado
acl SitesPermitido url_regex -i "/etc/squid/sites.permitido"
acl SitesNegado url_regex -i "/etc/squid/sites.negado"
acl PalavrasNegada url_regex -i "/etc/squid/sites.negado"
# Ativando as ACLs Personalizadas
http_access allow SitesPermitido
http_access deny SitesNegado
http_access deny PalavrasNegada
http_access allow Diretoria !SitesBloqueados # Isso significa que a faixa da diretoria terá acesso full sem bloqueio nenhum.
http_access allow Funcionarios
http_access deny all
Salve, saia e vamos restartar o Squid:
# /etc/init.d/squid stop
# squid -z
# /etc/init.d/squid start
# squid -k reconfigure
Toda vez que for fazer qualquer alteração no Squid, execute o seguinte comando para ele ler novamente as informações:
# squid -k reconfigure
Implementando controle de banda
Agora vamos implementar o controle de banda.
Primeiro, vamos criar 2 arquivos que terão os IPs liberados e os IPs com controle de banda.
Execute:
# nano /etc/squid/liberado
# nano /etc/squid/bloqueado
Dentro de cada arquivo, coloque a faixa de IPs que terão acesso livre e os que terão acesso limitado.
Exemplo:
# nano /etc/squid/liberado
192.168.1.100
192.168.1.102
Salve e saia.
Faça o mesmo com o "bloqueado".
Agora vamos editar o arquivo principal do Squid:
# nano /etc/squid/squid.conf
No final do arquivo, antes das seguintes linhas:
http_access allow localhost
http_access allow redelocal
http_access deny all
Adicione as seguintes informações:
# Limitando Largura de banda
acl liberado src "/etc/squid/liberado"
acl limitado src "/etc/squid/limitado"
delay_pools 2
delay_class 1 2
delay_parameters 1 -1/-1 -1/-1
delay_access 1 allow liberado # Faixa de IPs que não terá largura de banda.
delay_class 2 2
delay_parameters 2 174762/174762 32768/32768
delay_access 2 allow limitado # Faixa de IPs que terá a largura de banda
Salve e saia. Depois execute:
# squid -k reconfigure
Agora vou explicar como funciona este gerenciamento de banda do Squid.
A forma de calcular a largura de banda ideal para cada usuário é da seguinte madeira:
- Um link de 2 megabit (2048 Kbits) corresponde a 526.848 bytes por segundo. Na regra do Squid, sempre usamos bytes, por isso devemos lembrar de fazer a conversão que é bem simples, dividimos o valor em kbits por 8 e multiplicamos por 2048 para ter o valor em bytes. * GUARDE ESSA REGRA.
- No exemplo que colocamos no squid.conf, como nosso link é de 2 MB na opção delay_parameters 2 174762/174762 32768/32768, aqui definimos que o Squid usará 174762 Bytes por segundo, ou seja, + ou - 150 Mb do link só para o Squid.
O resto que corresponde a 32768/32768, que é mais ou menos 30Kb por usuário para navegar e fazer download, ou seja se uma pessoa começar a fazer download na sua rede, a taxa de transferência não passará de 30 Kb, evitando assim um gargalo na rede.
Bloqueando por horário
Esta função é útil para muitas empresas que, no horário do almoço, acabam liberando sites de e-mail pessoal, redes sociais, entre outros, para os funcionários usarem, mas depois do horário de almoço, o proxy automaticamente começa a rejeitar as requisições.
Dentro do arquivo "squid.conf", você teria que colocar as seguintes informações para ativar essa regra:
# Bloqueando Madrugada
acl madrugada time 00:00-06:00
http_access deny madrugada
Neste caso, eu travei qualquer tipo de acesso na madrugada para evitar de um usuário espertinho deixar fazendo um download à noite.
Mas caso queira fazer da maneira que libere o proxy a partir de tal horário, troque a hora 00:00-06:00 e a ação da
acl deny para
allow.
Após isso, execute:
# squid -k reconfigure
É isso pessoal, espero que ajude.