[FUG-BR] [OFF-TOPIC] Proxy Transparente (Squid)

Junior Pires junior em gujao.com
Segunda Agosto 21 13:25:34 BRT 2006


Cara, vou te passar a minha regra no firewalll e meu squid.conf para você
comparar, e ver o que está errado ai, porque o meu tá fundando beleza aqui
sem maiores problemas... =)

Meu fiirewall:

ipfw add 800 fwd 192.168.1.100,3128 dst-port 80 src-ip 192.168.1.0/24
ipfw add 810 allow dst-port 3128 dst-ip 192.168.1.100 src-ip 192.168.1.0/24
ipfw add 900 deny dst-port 3128

Onde 192.168.1.100, é o ip do meu servidor.

O meu squid.conf segue assim:

# squid.conf

# Define em qual ip e porta o Squid devera aguardar requisicoes.
# Pode ser definido o IP interno, no caso de uma maquina com
# mais de uma interface. Tambem pode ser especificada apenas a
# porta. O padrao eh ouvir todas as interfaces na porta 3128.
http_port 3128

# O parametro no_cache define que determinados objetos não deverão
# ser armazenados em cache. Eh preciso primeiro definir uma acl
# indicando quais os objetos. Em seguida aplica-se o no_cache a
# esta acl.
acl QUERY urlpath_regex cgi-bin \?
#no_cache deny QUERY

# O parametro cache_mem nao especifica o tamanho maximo do processo
# do Squid, que ira ultrapassar este valor. O cache_mem se destina a
# especificar o espaco em memoria destinado aos objetos em transito e
# outros importantes. A prioridade eh dos objetos em transito, e
# apenas o espaco restante sera ocupado pelos outros (Hot Objects e
# Negative-Cached Objects). Se o espaco necessario para os objetos
# em transito for maior que cache_mem sera alocada mais memoria,
# ou seja, cache_mem nao especifica um limite de memoria. O padrao
# eh 8 MB.
cache_mem 8 MB

# Tamanho maximo dos objectos armazenados no cache no disco.
# O padrao eh 4096 KB.
maximum_object_size 4096 KB

# Tamanho minimo dos objetos armazenados no cache no disco.
# O padrao eh 0, sem limite.
minimum_object_size 0 KB

# Tamanho maximo dos objetos mantidos em memoria.
# O padrao eh 8 KB.
maximum_object_size_in_memory 8 KB

# O parametro cache_replacement_policy determina qual a politica
# de substituicao dos objetos quando se esgota o espaco destinado
# ao cache em disco.
# lru: mantem os objetos referenciados recentemente.
# heap GDSF: otimiza o "hit rate" por manter objetos pequenos e
# e populares no cache, guardando assim um numero maior de objetos.
# heap LFUDA: otimiza o "byte hit rate" por manter objetos populares
# no cache sem levar em conta o tamanho. Se for utilizado este, o
# maximum_object_size devera ser aumentado para otimizar o LFUDA.
cache_replacement_policy heap GDSF

# O memory_replacement_policy define a politica de substituicao dos
# objetos em memoria, da mesma forma como o cache_replacement_policy.
# Os valores possiveis são os mesmos. O padrao eh lru.
#memory_replacement_policy lru

# O cache_dir define qual o diretorio e qual o espaco
# utilizado para o cache no disco. Podem ser definidos
# varios diretorios se necessario. O tamanho (em MB) nao deve
# ser o tamanho total da particao, descontar no minimo
# 20%.
# cache_dir diskd Diretorio Tamanho 16 256 Q1=72 Q2=64
cache_dir diskd /usr/local/squid 1000 16 256 Q1=72 Q2=64

# Log de requisicoes.
cache_access_log /usr/local/squid/logs/access.log

# Log do cache.
cache_log /usr/local/squid/logs/cache.log

# Log de objetos guardados. Pode ser desativado.
cache_store_log none

# Arquivo com o PID.
pid_filename /usr/local/squid/logs/squid.pid

# Tempo de espera para resolver conexoes pendentes antes de
# efetuar o shutdown do Squid. O padrao eh 30 seconds.
shutdown_lifetime 10 seconds

# ACLs gerais.
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 to_localhst  dst 192.168.1.0/24
acl SSL_ports port 443 563 10000
acl Safe_ports port 80 21 443 563 70 210 1025-65535 280 488 591 777
acl CONNECT method CONNECT

# ACL que define os clientes permitidos. Especificar as redes que
# irao utilizar o cache.
acl clientes src 192.168.1.0/24
# ACLs para paginas proibidas. Os arquivos especificados conterao
# as ACLs, para facilitar a edicao.
acl block url_regex -i "/usr/local/squid/etc/bloqueados/block.acl"
acl unblock url_regex -i "/usr/local/squid/etc/bloqueados/unblock.acl"

# Permitir ou negar o acesso baseado nas acls.
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow unblock
http_access deny block
http_access allow clientes
http_access deny all

# Usuario sob o qual ira rodar o Squid.
cache_effective_user squid

# Grupo sob o qual ira rodar o Squid.
cache_effective_group squid

# Hostname completo.
visible_hostname Junior

# Opcoes para suportar proxy transparente.
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

# Numero de arquivos de log rotacionados a guardar.
logfile_rotate 4


# Evita que sejam feitos coredumps.
coredump_dir none


Bom, se isso não poder te ajudar, eu não sei mais o que o fará hehe.

Abraço.


> Olá pessoal !
>     Vamos lá, tô com duas máquinas com 6.1-RELEASE, um Firewall e outra o
> Proxy (Transparente),
> ambas com kernel customizado para otimização de performance... etc, o
> firewall compilado com
> IPFIREWALL_FORWARD e IPFIREWALL_FORWARD_EXTENDED, e o proxy com as
> opções para otimização do diskd e o squid na versão 2.6 compilado com a
> opção '--enable-ipf-transparent'
> e mais a opção no squid.conf  'http_port 192.168.1.2:3128 transparent'.
> algumas outras... porém mesmo eu praticamente "seguindo" os pacotes não
> consegui identificar porque
> o mesmo não quer funcionar... segue regras do firewall
>
> fwd 192.168.1.2,3128 tcp from 192.168.1.0/24 1024-65535 to any dst-port 80
> in recv ${interfaceinterna}
>
> Liberei o acesso full do proxy para a internet no firewall, (PS.: o mesmo
> sai para a internet por outra interface instalada nele)
> e o mais interessante, se eu configurar o proxy diretamente no navegador
> ele
> funciona perfeitamente.
>
> Abraços,
>
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
>
> --
> Esta mensagem foi verificada pelo sistema de antivírus e
>  acredita-se estar livre de perigo.
>
>
>



-- 
Esta mensagem foi verificada pelo sistema de antivírus e
 acredita-se estar livre de perigo.



Mais detalhes sobre a lista de discussão freebsd