Liberando uma máquina para acessar sites bloqueados pelo Squid
Dica publicada em Shell Script / Avançado
Liberando uma máquina para acessar sites bloqueados pelo Squid
Quando usamos o iptables para liberar/permitir acessos, este interpreta um conjunto de instruções e as executa em ordem. Ou seja, se tiver duas instruções para a mesma máquina, ele vai executar a primeira e ignorar as demais. Portanto, o que temos que fazer é colocar a nossa regra no inicio da lista, com a opção -I.
No caso do Squid, todo o tráfego da porta 80 é direcionado para a porta 3128, portando precisamos inserir uma regra ANTES da regra de redirecionamento. Ficando assim:
# iptables -t nat -I PREROUTING -s 192.168.1.100 -p tcp --dport 80 -j \
ACCEPT
# iptables -t nat -A PREROUTING -s 192.168.19.0/24 -p tcp --dport 80 -j \
REDIRECT --to-port 3128
Note que tanto faz a ordem em que digitarmos as regras, pois a opção -I faz com que a regra vá para o topo da tabela, e a opção -A faz com que fique no final da lista.
Sendo assim, o resultado será o seguinte:
A maquina 192.168.1.100 terá permissão para trafegar através da porta 80, (portanto não passa pelo Squid) e as demais máquinas da rede serão redirecionadas para a porta 3128 e ficarão sujeitas as regras do proxy.
No caso do Squid, todo o tráfego da porta 80 é direcionado para a porta 3128, portando precisamos inserir uma regra ANTES da regra de redirecionamento. Ficando assim:
# iptables -t nat -I PREROUTING -s 192.168.1.100 -p tcp --dport 80 -j \
ACCEPT
# iptables -t nat -A PREROUTING -s 192.168.19.0/24 -p tcp --dport 80 -j \
REDIRECT --to-port 3128
Note que tanto faz a ordem em que digitarmos as regras, pois a opção -I faz com que a regra vá para o topo da tabela, e a opção -A faz com que fique no final da lista.
Sendo assim, o resultado será o seguinte:
A maquina 192.168.1.100 terá permissão para trafegar através da porta 80, (portanto não passa pelo Squid) e as demais máquinas da rede serão redirecionadas para a porta 3128 e ficarão sujeitas as regras do proxy.
acl liberados src 192.168.1.100
http_access allow liberados
Fazendo essa liberação pelo "squid.conf", você economiza um pouco mais da banda da rede.
# Usando o Squid para efetuar a liberação, se o IP liberado acessar um site que já foi visitado antes, o Squid enviará a cópia em cache do site para IP liberado.
# Com o Iptables, a conexão da estação até o servidor do site será sempre direta, impedindo que o conteúdo trafegado seja salvo em cache.