IPTables + Proxy Transparente (Squid 2.7)

1. IPTables + Proxy Transparente (Squid 2.7)

Douglas Alexsandro da Silva
DouglasDuZZ

(usa Deepin)

Enviado em 15/03/2016 - 17:13h

Boa tarde a todos, sou novo no Fórum e estou quebrando a cabeça o dia todo atrás de um tutorial ou configurações que funcionem e até agora NADA!
Estou tentando criar um servidor de internet com proxy transparente (sem necessidade de configurar cada terminal cliente individualmente).
Possuo 2 interfaces:
eth0: com o sinal de Internet ADSL (funcionando normalmente)
eth1: interface de rede local

Abaixo seguem os códigos de configurações das interfaces:
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet static
address 192.168.10.254
netmask 255.255.255.0

Script iptables:
modprobe iptable_nat
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128
# Bloqueia pings e protege contra IP spoofing e pacotes inválidos
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
iptables -A INPUT -m state --state INVALID -j DROP
# Abre para a interface de loopback e para a interface de rede local
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth0 -j ACCEPT
# Abre para as portas especificadas
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# Bloqueia as demais conexões, deixando passar apenas pacotes de resposta
iptables -A INPUT -p tcp --syn -j DROP

squid.conf:
http_port 192.168.10.1:3128 transparent
visible_hostname EMPRESA

cache_mem 64 MB
maximum_object_size_in_memory 128 KB
maximum_object_size 512 MB
cache_dir ufs /var/spool/squid 4096 16 256
cache_access_log /var/log/squid/access.log

acl all src 0.0.0.0/0.0.0.0
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 80 21 280 443 488 563 591 777 1025-65535
acl purge method PURGE
acl CONNECT method CONNECT

http_access allow manager localhost
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

acl redelocal src 192.168.10.0/24
http_access allow localhost
http_access allow redelocal

http_access deny all

Devo estar esquecendo algo... já não consigo + me concentrar nisso!
Aguardo ajuda dos mais entendidos!

Abraço



  


2. Re: IPTables + Proxy Transparente (Squid 2.7)

Buckminster
Buckminster

(usa Debian)

Enviado em 16/03/2016 - 08:24h

Seja mais específico na descrição do problema (o servidor não conecta, as máquinas da rede não conectam, etc).

Quantas máquinas tem na tua rede interna?

De onde essas máquinas "pegam" os IPs, de qual DHCP?

E já vou dizendo, o Squid 2.7 está obsoleto demais, coloque uma versão mais atualizada. O Squid atual está na versão 4.


3. Re: IPTables + Proxy Transparente (Squid 2.7)

Douglas Alexsandro da Silva
DouglasDuZZ

(usa Deepin)

Enviado em 16/03/2016 - 08:31h

Estou apenas fazendo testes, tenho apenas um servidor (esse no caso) e uma maquina com ip estático...
Simplesmente não navega.. o computador cliente fica carregando até dar a mensagem que estou offline, que não foi possivel resolver o endereço...
Quando mudo pra trabalhar com o proxy padrão, aquele que você tem que indicar nas configurações do browser, a navegação é normal,
mas o transparente não vai!


4. Re: IPTables + Proxy Transparente (Squid 2.7)

Buckminster
Buckminster

(usa Debian)

Enviado em 16/03/2016 - 09:47h

Teste assim

http_port 3128 transparent


5. Re: IPTables + Proxy Transparente (Squid 2.7)

Douglas Alexsandro da Silva
DouglasDuZZ

(usa Deepin)

Enviado em 16/03/2016 - 09:48h

Ja testei... sem sucesso!


6. Re: IPTables + Proxy Transparente (Squid 2.7)

Buckminster
Buckminster

(usa Debian)

Enviado em 16/03/2016 - 10:32h

Diga-me uma coisa, IP é esse 192.168.10.1?

Na tua placa de rede interna está o IP 192.168.10.254.

E qual é o IP da máquina da rede?


7. Re: IPTables + Proxy Transparente (Squid 2.7)

Douglas Alexsandro da Silva
DouglasDuZZ

(usa Deepin)

Enviado em 16/03/2016 - 11:12h

Modem já roteado com internet tem o ip: 192.168.86.1
A eth0 do servidor é dhcp e geralmente pega o ip 192.168.86.2, mas isso é indiferente.
A eth1 é estático com o ip 192.168.10.254/24. No resolv.conf ta o nameserver 192.168.86.1
Como eu disse, a navegação para a Internet, a partir do servidor, tá funcionando normal.
Na máquina cliente, com Windows XP, está 192.168.10.1/24. Gateway e DNS 192.168.10.254


8. Re: IPTables + Proxy Transparente (Squid 2.7)

Douglas Alexsandro da Silva
DouglasDuZZ

(usa Deepin)

Enviado em 16/03/2016 - 11:44h

Consegui implementar aqui usando o Squid3 ao invés do 2.7,
utilizando http_port 3128 intercept ao invés do transparent!

Não mudei nada além disso, bem estranho!


9. Re: IPTables + Proxy Transparente (Squid 2.7)

Buckminster
Buckminster

(usa Debian)

Enviado em 16/03/2016 - 11:51h

DouglasDuZZ escreveu:

Consegui implementar aqui usando o Squid3 ao invés do 2.7,
utilizando http_port 3128 intercept ao invés do transparent!

Não mudei nada além disso, bem estranho!


Não é estranho, como te falei, o Squid 2.7 estava muito obsoleto.


10. Re: IPTables + Proxy Transparente (Squid 2.7)

Douglas Alexsandro da Silva
DouglasDuZZ

(usa Deepin)

Enviado em 16/03/2016 - 12:30h

Por mais obsoleto que seja, era uma versão estável... deveria funcionar!
Pelo menos consegui fazer funcionar com uma versão diferente. Em todo o caso, muito obrigado pela atenção/ajuda Buckminster!

Abraço


11. Re: IPTables + Proxy Transparente (Squid 2.7)

Buckminster
Buckminster

(usa Debian)

Enviado em 16/03/2016 - 13:36h

DouglasDuZZ escreveu:

Por mais obsoleto que seja, era uma versão estável... deveria funcionar!
Pelo menos consegui fazer funcionar com uma versão diferente. Em todo o caso, muito obrigado pela atenção/ajuda Buckminster!

Abraço


De nada.
Mas entenda uma coisa, versão instável não é só aquela versão conhecida como beta, é também uma versão obsoleta.
As tecnologias avançam, os softwares mudam, e o Squid, em questão de atualização, é como um sistema operacional, ele só tem atualizações para a própria versão e quando a versão se torna obsoleta ela pára de ter atualizações ficando instável.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts