Squid não fica transparente

1. Squid não fica transparente

Bruno
doidopb

(usa Outra)

Enviado em 10/04/2012 - 21:46h

Oi gente... meu squid parou de ficar transparente do nada. Agora só configurando manual nos pcs. Ao analisar as regras do PREROUTING vejo que os pacotes não mudam... mas quando dos clientes tento acessar via IP (por exemplo uol 200.221.2.45) os pacotes mudam e ele consegue fazer a regra funcionar.

Segue meu squid.conf:

http_port 3128 transparent
visible_hostname firewall
error_directory /usr/share/squid/errors/Portuguese

cache_access_log /var/log/squid/access.log

#cache_dir ufs /squid 2048 32 256

acl all src 0.0.0.0/0.0.0.0
acl SEMFA src 192.168.10.0/24
acl SEMDEC src 192.168.20.0/24
acl SEMAD src 192.168.30.0/24
acl SMCT src 192.168.40.0/24
acl PGM src 192.168.50.0/24
acl SEMUC src 192.168.60.0/24
acl SEMPOPU src 192.168.70.0/24
acl SECOM src 192.168.80.0/24
acl SEMUG src 192.168.90.0/24
acl LANSERVER src 192.168.100.0/24
acl FW src 192.167.1.0/24
acl LAPTOPS src 192.168.110.0/24
acl TRABALHO src 192.168.120.0/24

acl RECEPCAO src 192.168.70.47
acl time1 time MTWHF 08:00-18:00

acl giss dstdomain .giss.com.br

acl CAMERA url_regex -i "/etc/squid/camera"
acl SITE url_regex -i "/etc/squid/liberados"
acl BLOQUEADOS url_regex -i "/etc/squid/bloqueados"
acl IPLIBERADOS src "/etc/squid/ipliberados"
acl MSN url_regex -i "/etc/squid/msn"
acl danieletati src "/etc/squid/danielle"
acl orkutfacebook url_regex -i "/etc/squid/orkutfacebook"

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 1025-65535 # unregistered ports
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 purge method PURGE
acl CONNECT method CONNECT


http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

http_access allow giss
acl imo url_regex -i imo.im:443

http_access allow CAMERA
http_access deny time1 RECEPCAO
http_access deny MSN
http_access deny imo
http_access allow IPLIBERADOS
http_access allow SITE
http_access allow danieletati orkutfacebook

http_access deny BLOQUEADOS
http_access allow SECOM
http_access allow SEMPOPU
http_access allow SMCT
http_access allow SEMFA
http_access allow SEMDEC
http_access allow SEMAD
http_access allow PGM
http_access allow SEMUC
http_access allow SEMUG
http_access allow LANSERVER
http_access allow FW
http_access allow LAPTOPS
http_access allow TRABALHO
http_access deny all


Grato pela ajuda


  


2. Firewall

André Canhadas
andrecanhadas

(usa Debian)

Enviado em 10/04/2012 - 22:00h

Posta seu firewall e a versão que esta usando do squid:

squid3 -v
squid -v



3. Re: Squid não fica transparente

Bruno
doidopb

(usa Outra)

Enviado em 10/04/2012 - 22:05h

Squid Cache: Version 2.7.STABLE9

FIREWAL:::

iniciar (){

# DECLARANDO VARIAVEIS #

IPT=iptables
LAN=eth1
WAN=eth0
SEMFA=192.168.10.0/24
SEMDEC=192.168.20.0/24
SEMAD=192.168.30.0/24
SMCT=192.168.40.0/24
PGM=192.168.50.0/24
SEMUC=192.168.60.0/24
SEMPOPO=192.168.70.0/24
SECOM=192.168.80.0/24
SEMUG=192.168.90.0/24
LAPTOP=192.168.110.0/24
SMTJ=192.168.120.0/24


# COMPARTILHANDO INTERNET #


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

# CARREGANDO MODULOS #

modprobe iptable_nat
modprobe sch_htb
modprobe sch_sfq
modprobe cls_u32

# DEFAULT POLICE #

$IPT -P INPUT ACCEPT
$IPT -P FORWARD ACCEPT
$IPT -P OUTPUT ACCEPT

# ROTA PARA OS SERVIDORES #

route add -net 192.168.100.0/24 gw 192.167.1.1


# CONFIGURACOES DE SEGURANCA #

echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
$IPT -A INPUT -m state --state INVALID -j DROP
$IPT -A FORWARD -p tcp --syn -m limit --limit 1/s -j ACCEPT
$IPT -A FORWARD -p tcp --tcp-flags SYN,ACK,FIN,RST RST -m limit --limit 1/s -j ACCEPT

# FIREWALL MODE STATEFULL

$IPT -A INPUT -p TCP -j ACCEPT -s 0.0.0.0/0 -m state --state ESTABLISHED,RELATED
$IPT -A INPUT -p UDP -j ACCEPT -s 0.0.0.0/0 -m state --state ESTABLISHED,RELATED
$IPT -A FORWARD -m state --state INVALID -j DROP
$IPT -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT


# CRIANDO SUBREDES #

ifconfig eth0:10 192.168.10.1 netmask 255.255.255.0 up # SEMFA
ifconfig eth0:20 192.168.20.1 netmask 255.255.255.0 up # SEMDEC
ifconfig eth0:30 192.168.30.1 netmask 255.255.255.0 up # SEMAD
ifconfig eth0:40 192.168.40.1 netmask 255.255.255.0 up # SMCT
ifconfig eth0:50 192.168.50.1 netmask 255.255.255.0 up # PGM
ifconfig eth0:60 192.168.60.1 netmask 255.255.255.0 up # SEMUC
ifconfig eth0:70 192.168.70.1 netmask 255.255.255.0 up # SEMPOPO
ifconfig eth0:80 192.168.80.1 netmask 255.255.255.0 up # SECOM
ifconfig eth0:90 192.168.90.1 netmask 255.255.255.0 up # SEMUG
ifconfig eth0:110 192.168.110.1 netmask 255.255.255.0 up # LAPTOP
ifconfig eth0:120 192.168.120.1 netmask 255.255.255.0 up # SMTJ
#ifconfig eth0:100 192.168.100.253 netmask 255.255.255.0 up # DMZ2

# SQUID TRANSPARENTE #


$IPT -t nat -A PREROUTING -s $SEMFA -p tcp --dport 80 -j REDIRECT --to-port 3128
#$IPT -t nat -A PREROUTING -s $SEMDEC -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -s $SEMAD -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -s $SMCT -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -s $PGM -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -s $SEMUC -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -s $SEMPOPO -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -s $SECOM -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -s $SEMUG -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -s $LAPTOP -p tcp --dport 80 -j REDIRECT --to-port 3128
$IPT -t nat -A PREROUTING -s $SMTJ -p tcp --dport 80 -j REDIRECT --to-port 3128

# BLOQUEAR 192.168.70.43 QUE EU NAO SEI QUEM E

iptables -I FORWARD -s 192.168.70.43 -j DROP
iptables -I FORWARD -s 192.168.70.45 -j DROP

# LIBERANDO MESSENGER #

$IPT -A FORWARD -s 192.168.90.2 -m string --algo bm --string "messenger" -j ACCEPT # JUBBER
$IPT -A FORWARD -s 192.168.90.3 -m string --algo bm --string "messenger" -j ACCEPT #
$IPT -A FORWARD -s 192.168.90.4 -m string --algo bm --string "messenger" -j ACCEPT #
$IPT -A FORWARD -s 192.168.90.5 -m string --algo bm --string "messenger" -j ACCEPT #
$IPT -A FORWARD -s 192.168.90.6 -m string --algo bm --string "messenger" -j ACCEPT # SEMUG-GAB-05
$IPT -A FORWARD -s 192.168.90.18 -m string --algo bm --string "messenger" -j ACCEPT # SEMUG-GAB-02
$IPT -A FORWARD -s 192.168.90.20 -m string --algo bm --string "messenger" -j ACCEPT # SEMUG-GAB-04
$IPT -A FORWARD -s 192.168.70.9 -m string --algo bm --string "messenger" -j ACCEPT # CRISTINA-NOTEBO
$IPT -A FORWARD -s 192.168.70.19 -m string --algo bm --string "messenger" -j ACCEPT # TIAGUINHO
$IPT -A FORWARD -s 192.168.30.31 -m string --algo bm --string "messenger" -j ACCEPT # SEMAD-GAB-01
$IPT -A FORWARD -s 192.168.30.115 -m string --algo bm --string "messenger" -j ACCEPT # SEMAD-CRH-14
$IPT -A FORWARD -s 192.168.20.21 -m string --algo bm --string "messenger" -j ACCEPT # LAPTOP SUETH
$IPT -A FORWARD -s 192.168.40.50 -m string --algo bm --string "messenger" -j ACCEPT # GABRIEL
$IPT -A FORWARD -s 192.168.40.175 -m string --algo bm --string "messenger" -j ACCEPT # RICKSON GRACIE BRABOOOOOOOOOOOOO
$IPT -A FORWARD -s 192.168.40.170 -m string --algo bm --string "messenger" -j ACCEPT # SMCT-GAB-01
$IPT -A FORWARD -s 192.168.40.202 -m string --algo bm --string "messenger" -j ACCEPT # LAPTOP FABRICIO
$IPT -A FORWARD -s 192.168.40.198 -m string --algo bm --string "messenger" -j ACCEPT # LAPTOP ANGELA
$IPT -A FORWARD -s 192.168.40.99 -m string --algo bm --string "messenger" -j ACCEPT # MAQUINA CAROL-SMCT
$IPT -A FORWARD -s 192.168.60.19 -m string --algo bm --string "messenger" -j ACCEPT # MAZINHA
$IPT -A FORWARD -s 192.168.90.41 -m string --algo bm --string "messenger" -j ACCEPT # RAQUEL
$IPT -A FORWARD -s 192.168.40.56 -m string --algo bm --string "messenger" -j ACCEPT

# BLOEQUEANDO GTALK & MESSENGER #


$IPT -A FORWARD -s $SEMFA -m string --algo bm --string "chatenabled" -j DROP
$IPT -A FORWARD -s $SEMDEC -m string --algo bm --string "chatenabled" -j DROP
$IPT -A FORWARD -s $SEMAD -m string --algo bm --string "chatenabled" -j DROP
$IPT -A FORWARD -s $SMCT -m string --algo bm --string "chatenabled" -j DROP
$IPT -A FORWARD -s $PGM -m string --algo bm --string "chatenabled" -j DROP
$IPT -A FORWARD -s $SEMUC -m string --algo bm --string "chatenabled" -j DROP
$IPT -A FORWARD -s $SEMPOPO -m string --algo bm --string "chatenabled" -j DROP
$IPT -A FORWARD -s $SEMUG -m string --algo bm --string "chatenabled" -j DROP
$IPT -A FORWARD -s $LAPTOP -m string --algo bm --string "chatenabled" -j DROP
$IPT -A FORWARD -s $SMTJ -m string --algo bm --string "chatenabled" -j DROP

$IPT -A FORWARD -s $SEMFA -m string --algo bm --string "messenger" -j DROP
$IPT -A FORWARD -s $SEMDEC -m string --algo bm --string "messenger" -j DROP
$IPT -A FORWARD -s $SEMAD -m string --algo bm --string "messenger" -j DROP
$IPT -A FORWARD -s $SMCT -m string --algo bm --string "messenger" -j DROP
$IPT -A FORWARD -s $PGM -m string --algo bm --string "messenger" -j DROP
$IPT -A FORWARD -s $SEMUC -m string --algo bm --string "messenger" -j DROP
$IPT -A FORWARD -s $SEMPOPO -m string --algo bm --string "messenger" -j DROP
$IPT -A FORWARD -s $SEMUG -m string --algo bm --string "messenger" -j DROP
$IPT -A FORWARD -s $SMTJ -m string --algo bm --string "messenger" -j DROP


# LIBERANDO FORWARD ENTRE INTERFACES/REDES #

$IPT -A FORWARD -i $LAN -o $WAN -j ACCEPT
$IPT -A FORWARD -o $LAN -i $WAN -j ACCEPT

$IPT -A FORWARD -i $LAN -d 192.168.100.0/24 -j ACCEPT
$IPT -A FORWARD -o $LAN -s 192.168.100.0/24 -j ACCEPT

$IPT -A FORWARD -i $LAN -d 192.167.1.0/24 -j ACCEPT
$IPT -A FORWARD -o $LAN -s 192.167.1.0/24 -j ACCEPT

$IPT -A FORWARD -i $LAN -p icmp -j ACCEPT


# LIBERANDO PORTAS DE ENTRADA #

$IPT -A INPUT -i lo -j ACCEPT # LOOPBACK
$IPT -A INPUT -i $LAN -p icmp -j ACCEPT # ICMP
$IPT -A INPUT -i $LAN -p tcp --dport 80 -s 192.167.1.1 -j ACCEPT # HTTP
$IPT -A INPUT -i $LAN -p udp --dport 161 -s 192.167.1.1 -j ACCEPT # SNMP
$IPT -A INPUT -i $LAN -p tcp --dport 2812 -s 192.167.1.1 -j ACCEPT # MONIT
$IPT -A INPUT -i $LAN -p tcp --dport 443 -j ACCEPT # HTTPS
$IPT -A INPUT -p tcp --dport 55222 -j ACCEPT # SSHD
$IPT -A INPUT -i $LAN -p tcp --dport 3128 -j ACCEPT # SQUID
$IPT -A INPUT -i $LAN -p tcp --dport 3306 -j ACCEPT # MYSQL

echo "Starting firewall: done."

}
parar (){
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

route del -net 192.168.100.0/24 gw 192.167.1.1


echo -e "Stopping firewall: done."

}

case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar ;;
esac



4. Re: Squid não fica transparente

Bruno
doidopb

(usa Outra)

Enviado em 10/04/2012 - 22:13h

Outro detalhe... Estou acessando via teamviewer um dos terminais que não funcionam sem configurar manual. Isso não atrapalhou o acesso do team, portanto a máquina está com internet, mas navega se especificar manual


5. Nada

André Canhadas
andrecanhadas

(usa Debian)

Enviado em 10/04/2012 - 22:29h

Não vi nada de errado em nenhum dos dois.

A maquina client esta para configurar proxy auto ou sem proxy?


6. Re: Squid não fica transparente

Bruno
doidopb

(usa Outra)

Enviado em 10/04/2012 - 22:31h

Em proxy auto não rola no cliente... só quando especifico manual!!!


7. Re: Squid não fica transparente

Bruno
doidopb

(usa Outra)

Enviado em 10/04/2012 - 22:40h

Dei o comando cat /proc/sys/net/ipv4/ip_forward e reparei que está ficando com o valor 0.

Reiniciei e mesma coisa. Apesar de no meu script atribuir valor 1.

Tentei fazer isso pois reparei que não conseguia pigar para determinadas redes.

Agora o squid recebe os pacotes na regra corretamente, mas alguns sites abrem e outros não


8. Re: Squid não fica transparente

Bruno
doidopb

(usa Outra)

Enviado em 10/04/2012 - 22:44h

Mas eu ainda não consigo pingar o modem ... 192.168.254.254 dos clientes


9. Sem proxy

André Canhadas
andrecanhadas

(usa Debian)

Enviado em 10/04/2012 - 22:51h

doidopb escreveu:

Em proxy auto não rola no cliente... só quando especifico manual!!!


Deixa tudo desmarcado para ver, o Messeger não navega se usar proxy transparente e marcado como automático nas configurações de proxy do IE. Fiz um teste se deixar marcado (Detectar automaticamente as configurações) a internet funcionou mas fica pensando um tempão antes de entrar.




10. Re: Squid não fica transparente

Bruno
doidopb

(usa Outra)

Enviado em 10/04/2012 - 22:54h

Agora que ativei o ip_forward que não sei porque tá entrando 0, alguns sites não entram ainda... tipo www.gmail.com

Se coloco manual todos entram filé


11. Re: Squid não fica transparente

Bruno
doidopb

(usa Outra)

Enviado em 10/04/2012 - 22:56h

No automático também não entra www.google.com.br


12. Modem

André Canhadas
andrecanhadas

(usa Debian)

Enviado em 10/04/2012 - 22:57h

doidopb escreveu:

Mas eu ainda não consigo pingar o modem ... 192.168.254.254 dos clientes


O modem esta teoricamente em outra rede fora do seu firewall para conseguir talvez tenha que fazer um MASQUERADE para 192.168.254.0/24 ou criar uma rota para ele.
Alem de adicionar o
$IPT -A FORWARD -i $LAN -d 192.168.254.0/24 -j ACCEPT






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts