elgio
(usa OpenSuSE)
Enviado em 28/12/2009 - 14:54h
Bom, observei todos recomendando usar proxy transparente.
Primeiro deve-se dizer/lembrar que a vantagem ÚNICA do proxy transparente é que NINGUÉM precisa configurá-lo em seus navegadores. Mas como os navegadores já estão configurados, esta vantagem, inicialmente, não interessa ao nosso amigo.
Mas proxy transparente tem, também, uma série de desvantagens:
- não funciona para HTTPS: não adianta colocar uma regra de iptables jogando a porta 443 para o proxy que não funciona! Para HTTPS só com nat ou proxy NORMAL, configurado no navegador
- não funciona autenticação: o mecanismo de autenticação padrão do proxy não atua sobre a técnica de transparência.
- clientes precisam de DNS
OK. É certo que os clientes já tem DNS e algum mecanismo de NAT ou ainda IPs públicos todos, senão ao remover a configuração de proxy não navegaria!
Se a ideia é que os usuários não naveguem sem o proxy, apenas algumas regras de iptables resolveriam bloqueando o acesso das portas 80 e 443 dos clientes (pois se eles usarem o proxy, suas conexões serão para a porta do proxy).
Claro, se o amigo quiser mesmo implementar proxy transparente, vá em frente. Mas o bloqueio FUNCIONARÁ!
Ainda, como foi dito que o squid foi HERDADO, talvez seja uma versão antiga. Versões antigas NÃO TINHAM O MODO TRANSPARENT e a configuração era feita de outra forma (exigiam duas linhas de configuração. Posteriormente é que a palavra "transparent" foi adicionada)
Por fim, assim como o thedrummer comentou, AMBAS as configurações são necessárias, tanto no squid quanto no iptables. O squid precisa ser configurado para aceitar trabalhar de forma transparente e o firewall configurado para desviar as conexões para a porta/Ip do proxy.
No squid, NOVO, basta mesmo inserir a palavra "transparent" na configuração da porta.
No iptables, depende MUITO da tua rede.
se o firewall/roteador é a mesma máquina do teu proxy, então a regra do pogo QUASE certa:
iptables -t nat -A PREROUTING -i <PLACAINTERNA> -p tcp --dport 80 -j REDIRECT --to-port 8080
(pois li no post que teu proxy está na porta 8080)