Squid 3.1 != Squid 2.6 [RESOLVIDO]

1. Squid 3.1 != Squid 2.6 [RESOLVIDO]

Ricardo Neto
newtuxfan

(usa Fedora)

Enviado em 29/12/2009 - 15:00h

Amigos:

Recebi um novo servidor Dell (R410) para substituir nosso antigo proxy, um micro montado (PIII 800 Mhz 256 MB RAM). Adquiri também o RHEL 5.3, mas a Dell me fez o grande favor de não enviar as mídias de instalação do mesmo. Enquanto as mídias não chegam, resolvi instalar o Fedora 12 nele. Até aí tudo bem, com um porém: no servidor anterior eu rodava o Fedora 6 + Squid 2.6 14 stable. Tudo funcionava perfeitamente bem nele.

No Fedora 12, o Squid 3.1.0.15 veio por padrão. Funciona bem, mas existe 2 acls que não funfam nem a pau: uma acl para liberar o acesso totalmente a determinadas estações de trabalho, pelos seus ips, e outra acl para bloquear totalmente o acesso a algum,as máquinas, também pelo ip. Estranho é que no Squid 2.6 funciona perfeito e no Squid 3.1 não, é como se as acls não existissem, tanto que o Squid nega acesso a sites como o orkut e o facebook a máquinas que deveriam navegar livremente neles; é como se elas estivessem restritas junto com o restante da rede na acl "proibir_sites" abaixo.

Há alguma diferença de funcionamento entre o Squid 3.1 e o Squid 2.6 neste quesito? Tive que converter o squid.conf antigo apenas na questão do mascaramemto da rede, no localhost e na minha rede interna, bem como a acl "all" que parece que agora é automática. É só isso que modifiquei. Alguma luz?

Segue meu squid.conf para o Squid 3.1:

# acelerador proxy

http_port 192.168.0.254:3128
cache_dir aufs /var/log/squid 10000 64 128
cache_mem 128 MB

cache_store_log none
error_directory /usr/share/squid/errors/pt-br

visible_hostname firewall.proxy

cache_swap_low 75
cache_swap_high 78
cache_replacement_policy heap LFUDA


minimum_object_size 0 KB
maximum_object_size 150 MB
maximum_object_size_in_memory 2048 KB

memory_replacement_policy heap GDSF


# bloqueio de portas inseguras
acl manager proto cache_object
acl localhost src 127.0.0.1/::1
acl Safe_ports port 80 # http
acl Safe_ports port 81 # cassi ?
acl Safe_ports port 21 # ftp
acl Safe_ports port 10000 # webmin
acl Safe_ports port 443 563 # https, snews
acl Safe_ports port 98 # linuxconf
acl Safe_ports port 901 # swat
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 19700 # tarifador central telefonica
acl Safe_ports port 1025-65535 # portas não registradas

acl CONNECT method CONNECT


# permitir acesso ao cachemgr somente do servidor

http_access deny manager

# negar acesso a portas inseguras, nao listadas acima

http_access deny !Safe_ports

# liberar totalmente as máquinas com os ips listados em /etc/squid/micros_liberados

acl micros_liberados src "/etc/squid/micros_liberados"

http_access allow micros_liberados

# bloquear totalmente as máquinas com os ips listados em /etc/squid/micros_bloqueados

acl micros_bloqueados src "/etc/squid/micros_bloqueados"

http_access deny micros_bloqueados


# bloqueio por site, palavras e ip

acl proibir_sites dstdomain -i "/etc/squid/sites_proibidos"
acl proibir_palavras url_regex -i "/etc/squid/palavras_proibidas"
acl proibir_ip dst "/etc/squid/ips_proibidos"

http_access deny proibir_sites
http_access deny proibir_palavras
http_access deny proibir_ip


# bloqueio de propagandas, jogos, pornografia

acl ads dstdomain -i "/etc/squid/ads_domains"
acl games dstdomain -i "/etc/squid/game_domains"
acl [*****] dstdomain -i "/etc/squid/porn_domains"

http_access deny ads
http_access deny games
http_access deny [*****]

# Restringe executaveis, cabs e zips,
# salvo os listados em sites_permitidos

acl permitir_baixar dstdomain -i "/etc/squid/sites_permitidos"

http_access allow permitir_baixar

acl executaveis urlpath_regex -i \.exe$
acl zipados urlpath_regex -i \.zip$
acl cabs urlpath_regex -i \.cab$
acl mp3 urlpath_regex -i \.mp3$
acl avi urlpath_regex -i \.avi$
acl mpg urlpath_regex -i \.mpg$
acl rars urlpath_regex -i \.rar$
acl sevenzip urlpath_regex -i \.7z$

http_access deny executaveis
http_access deny zipados
http_access deny cabs
http_access deny mp3
http_access deny avi
http_access deny mpg
http_access deny rars
http_access deny sevenzip

# permissao de acesso para a rede interna e para o servidor
# sem abrir para a rede externa

http_access allow localhost

acl rede_interna src 192.168.0.0/24
http_access allow rede_interna




  


2. Re: Squid 3.1 != Squid 2.6 [RESOLVIDO]

Eduardo Paim Silveira
eduardo

(usa Linux Mint)

Enviado em 29/12/2009 - 15:41h

O Squid 3.0 é "um pouco" diferente das versões anteriores. A 2.6 ainda é um boa versão para se utilizar. Se quiseres, você pode desinstalar a 3.1 e instalar a 2.6.

Sua conf parece estar normal. Tentou colocar os ips na conf direto e não usar o arquivo externo? Digo isso pois uma vez me deu pau em um squid (mas era o 2.6) que não "lia" os IPs em arquivos, só lia se estivesse na acl mesmo.

Abraços


3. Re: Squid 3.1 != Squid 2.6 [RESOLVIDO]

Ricardo Neto
newtuxfan

(usa Fedora)

Enviado em 29/12/2009 - 17:31h

Resolvido.

Os endereços ips nos arquivos micros_liberado e micros_bloqueados estavam com um 0 à esquerda no último octeto do endereço ip, quando menores que 100, para fins de ordenação com o comando sort. Ex: 192.168.0.010. Voltei os endereços para 192.168.0.10, 192.168.0.51, etc... e o Squid 3.1.0.15 passou a respeitar as acls normalmente. Estranho é que no Squid 2.6 funcionava mesmo com este zero a mais no último octeto!

"Linux, sempre apanhando, sempre aprendendo!"

Quanto mais eu uso este SO, mais eu gosto dele !

Obrigado pela ajuda,

Ricardo.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts