Autor Tópico: Proxy transparente nao funciona - Resolvido  (Lida 4981 vezes)

Offline weltonpba

  • Usuário Ubuntu
  • *
  • Mensagens: 17
    • Ver perfil
Proxy transparente nao funciona - Resolvido
« Online: 19 de Agosto de 2009, 15:47 »
Bom pessoal ja vasculhei na internet ja olhei meus scripts e nao acho a solução favor me ajudem
to tentando fazer proxy transparent no meu servidor ubuntu 8.4.03 modo texto, ta tudo funcionando normal mas tenho que configurar no internet explorer o enderço 192.168..1.1 3128, quando eu tiro ele nao entra na internet nem com base a cacetada
deixo minhas configuraçoes abaixo

Squid

http_port 3128 transparent
visible_hostname ubuntu

cache_mem 128 MB
maximum_object_size_in_memory 128 MB
maximum_object_size 1204 MB
minimum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 2048 16 256
cache_access_log /var/squid/access.log
refresh_pattern ^ftp:15 20% 2280
refresh_pattern ^gopher:15 0% 2280
refresh_pattern . 15 20% 2280

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 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 280 # http-mgmt
acl Safe_ports port 488 # gss-http
acl Safe_ports port 591 # filemaker
acl Safe_ports port 777 # multiling http
acl Safe_ports port 901 # swat
acl Safe_ports port 1025-65535 # portas altas
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 site dstdomain cmt.caixa.gov.br
always_direct allow site

acl bloqueados url_regex -i "/etc/squid/bloqueados"
http_access deny bloqueados

acl extensao dstdom_regex "/etc/squid/extensao"
http_access deny extensao

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

http_access deny all

-------------------------------------------------------------------------------------------
ARQUIVO: /etc/rc.local
-------------------------------------------------------------------------------------------

modprobe iptables_nat
echo 1> /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE-

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
iptables -A INPUT -i lo -j ACCEPT
iptables -A INPUT -i eth0 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

Qual sera o problema ???
« Última modificação: 09 de Outubro de 2009, 16:42 por weltonpba »

Offline diegocananea

  • Usuário Ubuntu
  • *
  • Mensagens: 6
    • Ver perfil
Re: Proxy transparente nao funciona
« Resposta #1 Online: 19 de Agosto de 2009, 16:17 »
Qual a versão do seu squid?

Offline weltonpba

  • Usuário Ubuntu
  • *
  • Mensagens: 17
    • Ver perfil
Re: Proxy transparente nao funciona
« Resposta #2 Online: 19 de Agosto de 2009, 16:24 »
squid cache: 2.6.STABLE18

Offline diegocananea

  • Usuário Ubuntu
  • *
  • Mensagens: 6
    • Ver perfil
Re: Proxy transparente nao funciona
« Resposta #3 Online: 19 de Agosto de 2009, 16:57 »
Se vc colocando o proxy no navegador consegue navegar tranquilo, entao o proxy está ok.. o iptables também está... a estação está pegando o gateway da rede correto ? (ou seja, o ip do seu servidor)

Offline weltonpba

  • Usuário Ubuntu
  • *
  • Mensagens: 17
    • Ver perfil
Re: Proxy transparente nao funciona
« Resposta #4 Online: 19 de Agosto de 2009, 17:25 »
diegocananea

acredito que sim

Ip da maquina cliente "Manual"

Endereço de Ip: 192.168.1.61
Mascara de rede: 255.255.255.0
gateway padrão: 192.168.1.1
dns 192.168.1.1

Configuração do servidor ubuntu /etc/network/interfaces

auto lo eth0 eth1
iface lo inet loopback

iface eth0 inet static
address 192.168.1.1
netmask 255.255.255.0
network 192.168.1.1
broadcast 192.168.1.255
------------------------------------------------------------------

outro detalha quando eu coloco no navegador em configurações o ip 192.168.1.1 e a porta 80 funciona minha internet, agora quando eu tiro ele não acessa achei muito estranho isso

Offline diegocananea

  • Usuário Ubuntu
  • *
  • Mensagens: 6
    • Ver perfil
Re: Proxy transparente nao funciona
« Resposta #5 Online: 20 de Agosto de 2009, 13:30 »
o campo "network" aí no interfaces acho q tá errado, nao seria network 192.168.1.0? mas também nao sei se isso influenciaria muito.. mas muda aí pra ver...

Offline weltonpba

  • Usuário Ubuntu
  • *
  • Mensagens: 17
    • Ver perfil
Re: Proxy transparente nao funciona
« Resposta #6 Online: 20 de Agosto de 2009, 13:37 »
já mudei aki tbm não funcionou...

estranho demais da conta não funcionar!!

Offline weltonpba

  • Usuário Ubuntu
  • *
  • Mensagens: 17
    • Ver perfil
Re: Proxy transparente nao funciona
« Resposta #7 Online: 21 de Agosto de 2009, 15:42 »
acho que eu descobri o meu erro

pra estar funcionando assim, soh pode ser meu compartilhamento da internet que não ta rodando?? sera que pode ser isso ?

Offline diegocananea

  • Usuário Ubuntu
  • *
  • Mensagens: 6
    • Ver perfil
Re: Proxy transparente nao funciona
« Resposta #8 Online: 13 de Setembro de 2009, 14:56 »
Pode ser sim.. faz o seguinte, coloca apenas as regras de nat e o redirecionamento do squid;

iptables -F # limpa as regras

modprobe iptables_nat
echo 1> /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth1 -j MASQUERADE-

iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128


Testa aí

Offline pauloleoni

  • Usuário Ubuntu
  • *
  • Mensagens: 43
    • Ver perfil
Re: Proxy transparente nao funciona
« Resposta #9 Online: 06 de Outubro de 2009, 13:57 »
Corrigindo:

em rc.local


echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE

# Habilita PROXY TRANSPARENTE
iptables -t nat -A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 3128


isso supondo que o eth0 é a placa de rede que está conectada a internet e a eth1 é a placa que está conectada ao restante da rede.

e em squid.conf, coloca o ip da eth1,o ip do seu squid antes de 3128, no seu caso fica assim: (troca os x's pelo seu ip)

http_port xxx.xxx.xxx.xxx:3128 transparent
visible_hostname ubuntu
hierarchy_stoplist cgi-bin ?
cache_mem 256 MB
minimum_object_size 0 KB
maximum_object_size 10000 KB
maximum_object_size_in_memory 128 KB
#maximum_object_size 300000 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 10000 16 256
cache_access_log /var/log/squid/access.log

é exatamente assim que está setado no meu servidor, e uso ele transparente, ou seja, está funcionando legal !!