Como eu ajo para um determinado site não passar pelo proxy???
Como eu ajo para um determinado site não passar pelo proxy???
como que?
hehe...
na verdade estou com um problema com o banco do brasil, e não consigo libera-lo nem com reza braba, no squid.
Então pensando aqui com meus botões, tive a ideia de tentar faze-lo não passar pelo proxy.
consegui fazer o site do banco do brasil funcionar, eu que estava comendo bola...
analizando o access.log, verifiquei que ao acessar o "www.bb.com.br" o site busca outras urls que estavam bloqueadas.
mas ainda fica a duvida de como fazer determinado site não passar pelo proxy.
Última edição por Lincoln; 01-07-2009 às 21:39.
Depende da sua topologia.
Se for proxy transparente, é impossível, tendo em vista que a requisição já está sendo processada pelo proxy. O que voce pode fazer é criar ACLs que impedem que determinadas URL sejam colocadas em cache, desviar destinos de url rewriters, autenticadores, etc..
Se não for proxy transparente, voce precisa controlar a nivel de cliente as URLs que não irão passar pelo proxy, seja através de PAC ou diretamente (aquela configuração de browsers "Sem proxy para" ou "Não usar o proxy para endereços iniciados por:"
Presumindo que você tenha o squid com iptables, no iptables você deve ter uma regra parecida com essa em algum lugar:
iptables -t nat -A PREROUTING -i eth0 -s $LAN -p tcp --dport 80 -j REDIRECT --to-port 3128
Essa regra diz que tudo que vier da eth0(lan), que tiver origem lan(Por exemplo 192.168.0.0), que for tcp, com porta de destino 80(web), deve ser direcionada para a 3128(squid).
Então para o site não ir para o squid é só criar uma regra antes desse direcionamento, tal como:
iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0 -d 200.208.15.0/24 -p tcp --dport 80 -j ACCEPT
Nesse exemplo estou liberando toda a rede 200.208.15.0/24, na realidade eu poderia e deveria liberar apenas um endereço de ip dessa rede que é da banco real, mas por praticidade eu costumo liberar o intervalo inteiro e/ou bloquear o intervalo inteiro.
Se precisarem liberar varios sites é bom fazer um for para não ter um script de firewall gigante, algo como
for i in $(cat /etc/sites_free)
do
iptables -t nat -A PREROUTING -i eth0 -s 192.168.0.0 -d $i -p tcp --dport 80 -j ACCEPT
done
É isso, abraço.