IPtables e Squid em servidores diferentes

1. IPtables e Squid em servidores diferentes

Diego Blos
diegoblos

(usa CentOS)

Enviado em 09/11/2012 - 10:56h

Bom dia Senhores,

Alguém tire minha dúvida:

Tenho um servidor com IPtables + Squid. Quero realizar alguns testes e para isso preciso tirar o Squid desse servidor, portanto ficarei com um servidor com 4 links de Internet+Iptables, e um servidor separado somente com Squid para Proxy de navegação.

Como ficaria a regra do Iptables para esse redirecionamento, apenas de navegação passando pelo outro servidor com Squid? Observo também que utilizo Proxy autenticado pelo AD, não sendo transparente.

Valeu!


  


2. Re: IPtables e Squid em servidores diferentes

Valdinei de Souza Campos
valdinei.campos

(usa CentOS)

Enviado em 09/11/2012 - 11:05h

1. Nas maquinas clientes sera necessario configurar o como proxy o novo endereço do squid
2. O gateway do Squid tera que ser a maquina que esta o Iptables
3. E no Iptables tera que ser incluido a regra "iptables -t nat -A POSTROUTING -s ip_do_squid -p tcp --dport 80 -j MASQUERADE



3. Re: IPtables e Squid em servidores diferentes

Diego Blos
diegoblos

(usa CentOS)

Enviado em 03/12/2012 - 10:40h

valdinei.campos escreveu:

1. Nas maquinas clientes sera necessario configurar o como proxy o novo endereço do squid
2. O gateway do Squid tera que ser a maquina que esta o Iptables
3. E no Iptables tera que ser incluido a regra "iptables -t nat -A POSTROUTING -s ip_do_squid -p tcp --dport 80 -j MASQUERADE




Valdinei.campos,

Somente com a regra que você colocou não funcionou. Os acessos continuam liberados no servidor antigo e no novo as requisições ficam tentando até cair.

Uma dúvida: o MASQUERADE não é para proxy transparente? Lembro que meu proxy não é transparente.


4. Re: IPtables e Squid em servidores diferentes

Reginaldo de Matias
saitam

(usa Slackware)

Enviado em 03/12/2012 - 14:39h

como esta a infra entre firewall e proxy ?


5. Re: IPtables e Squid em servidores diferentes

ranzes tamar
ranzes

(usa Slackware)

Enviado em 03/12/2012 - 16:20h

Isso deve resolver

As regras devem estar acima de qualquer outra de PREROUTING ou POSTROUTING que vá influenciar nestas regras.

iptables -t nat -A PREROUTING -p tcp -s 192.168.1.0/24 -d 0/0 --dport 80 -j DNAT --to 192.168.1.2:3128
iptables -t nat -A POSTROUTING -d 192.168.1.0/24 -j MASQUERADE


este seria um exemplo:

rede 192.168.1.0/24
fw 192.168.1.1
squid 192.168.1.2

:)


6. Re: IPtables e Squid em servidores diferentes

ranzes tamar
ranzes

(usa Slackware)

Enviado em 03/12/2012 - 16:56h

Um detalhe muito importante:
Se o próprio squid passar pelo firewall também a regra deverá ser diferente:

iptables -t nat -A PREROUTING -p tcp -i eth0 ! -s 192.168.1.2 -d 0/0 --dport 80 -j DNAT --to 192.168.1.2:3128

colocando toda origem da interface interna e excluindo da regra o ip do squid que fará as requisições pela porta 80.

resumindo tudo que entrar pela eth0 (rede interna) com destino de porta 80 e com exceção do ip 192.168.1.2 será encaminhado para o 192.168.1.2 na porta 3128.


Mais um detalhe, você postou que seu squid autentica via AD.
Logo o que você pretende não funcionará com este tipo de autenticação.
Aí aconselho você estudar configuração de proxy via DHCP.
Muito usado é WPAD que pode ser incorporado as suas regras de GPO juntamente com DHCP.



:)


7. Re: IPtables e Squid em servidores diferentes

Diego Blos
diegoblos

(usa CentOS)

Enviado em 05/12/2012 - 16:38h

ranzes escreveu:

Um detalhe muito importante:
Se o próprio squid passar pelo firewall também a regra deverá ser diferente:

iptables -t nat -A PREROUTING -p tcp -i eth0 ! -s 192.168.1.2 -d 0/0 --dport 80 -j DNAT --to 192.168.1.2:3128

colocando toda origem da interface interna e excluindo da regra o ip do squid que fará as requisições pela porta 80.

resumindo tudo que entrar pela eth0 (rede interna) com destino de porta 80 e com exceção do ip 192.168.1.2 será encaminhado para o 192.168.1.2 na porta 3128.


Mais um detalhe, você postou que seu squid autentica via AD.
Logo o que você pretende não funcionará com este tipo de autenticação.
Aí aconselho você estudar configuração de proxy via DHCP.
Muito usado é WPAD que pode ser incorporado as suas regras de GPO juntamente com DHCP.



:)


Amigos,

O redirecionamento funcionou corretamente. Tive que substituir algumas regras de bloqueio do Iptables, que bloqueavam o IP do Squid. Colocando exceções para esse IP, funcionou corretamente.

Agora precisaria setar rotas dentro do Squid para determinadas ACLs, como por exemplo, a ACL "bancos" sair sempre pelo link1 ou pelo link2, mas esses links(tenho 4 links) estão no outro servidor (IPtables), assim não está funcionando as regras de tcp_outgoing que utilizava antes.

Provavelmente vou ter que liberar o acesso às placas WAN para o IP do Squid.


8. Re: IPtables e Squid em servidores diferentes

ranzes tamar
ranzes

(usa Slackware)

Enviado em 07/12/2012 - 11:25h

Assim isso é um problemão se os links não estiverem no squid o que provavelmente aconteça.

porque ?


O squid para esta aplicação teria que indicar os gateways para tal aplicação.

Como provavelmente seus links chegam no seu firewall e os mesmos ficam transparentes para o squid , como você diria para o squid sair no link 2 dentro do firewall ?


Isso até é possivel usando ip route + iptables Mangle e definir o link de saída baseado no destino marcando os pacotes.

Mas imagina o trabalho para você fazer isso.

Toda vez que adicionar uma novo site fazer o cadastro em seus scritps etc..

E qual o real motivo de alguns sites sairem por um link e vice versa.

Se pensar em balanceamento esse não é o caminho.


Att,

Ranzes Tamar






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts