Squid + Dansguardian - Muito Lento

1. Squid + Dansguardian - Muito Lento

Haroldo
vmarques

(usa Outra)

Enviado em 03/02/2014 - 09:41h

Bom dia.
Estou com um problema até então inédito e acredito que algum de vocês pode me ajudar.

Tenho essa configuração de Squid + Dansguardian rodando há muito tempo e em outros lugares. Entretanto, em uma das empresas a conexão está muito lenta.
Vi problemas parecidos, mas nada que se encaixasse com o meu perfil. Aos dados:

Debian 7
Squid 2.7.STABLE9
DansGuardian 2.10.1.1
Servidor Dell (Mas já testei em 5 máquians, todas de grande porte e não era esse o problema)
Pessoas na rede que acessam pelo Proxy: 60

O que acontece:

Quando os usuários acessam qualquer página, na maioria das vezes fica a mensagem: "Esperando pelo túnel do proxy". Mas também acontece de ficar carregando e nunca vai. Páginas simples demoram minutos para carregar. Notei que quando há menos computadores ligados, em horários alternativos, a conexão flui melhor.
O estranho é que não trata-se do computador em si, pois nas minhas regras de Firewall, os IPs que passo por fora do SQUID+Dansguardian, a conexão é rápida, vai ao limite de tudo que tenho, que é 10MB de link dedicado.

Estranho que essa mesma configuração opera em outro lugar com umas 40 pessoas, então por isso estou perdido.

Já tentei reinstalar tudo do 0. Debian, Squid, Dansguardian... Se alguém puder ajudar, ficarei grato.
Abraço

Seguem as configurações do Squid e Dansguardian abaixo.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
Squid.conf


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_localhost dst 127.0.0.0/8
acl band src 192.168.0.253/255.255.255.255
acl bloq1 browser -i "/etc/squid/bloqueio_msn_user_agent.acl"
acl bloq2 url_regex -i chatenabled.mail.google.com
acl SSL_ports port 443 # https
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
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 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager localhost
http_access deny BLOCKTALK1
http_access deny bloq1
http_access deny bloq2
http_access allow band
http_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny all
icp_access allow all
http_port 192.168.0.253:3128
hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log squid
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320
acl apache rep_header Server ^Apache
broken_vary_encoding allow apache
extension_methods REPORT MERGE MKACTIVITY CHECKOUT
visible_hostname meudominio.com.br
hosts_file /etc/hosts
coredump_dir /var/spool/squid

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
dansguardian.conf


reportinglevel = 3
languagedir = '/etc/dansguardian/languages'
language = 'portuguese'
loglevel = 2
logexceptionhits = 2
logfileformat = 3
filterip = 192.168.0.253
filterport = 8080
proxyip = 192.168.0.253
proxyport = 3128
accessdeniedaddress = 'http://YOURSERVER.YOURDOMAIN/cgi-bin/dansguardian.pl'
nonstandarddelimiter = on
usecustombannedimage = on
custombannedimagefile = '/usr/share/dansguardian/transparent1x1.gif'
filtergroups = 1
filtergroupslist = '/etc/dansguardian/lists/filtergroupslist'
bannediplist = '/etc/dansguardian/lists/bannediplist'
exceptioniplist = '/etc/dansguardian/lists/exceptioniplist'
showweightedfound = on
weightedphrasemode = 2
urlcachenumber = 1000
urlcacheage = 900
scancleancache = on
phrasefiltermode = 2
preservecase = 0
hexdecodecontent = off
forcequicksearch = off
reverseaddresslookups = off
reverseclientiplookups = off
logclienthostnames = off
createlistcachefiles = on
maxuploadsize = -1
maxcontentfiltersize = 256
maxcontentramcachescansize = 2000
maxcontentfilecachescansize = 20000
filecachedir = '/tmp'
deletedownloadedtempfiles = on
initialtrickledelay = 20
trickledelay = 10
downloadmanager = '/etc/dansguardian/downloadmanagers/fancy.conf'
downloadmanager = '/etc/dansguardian/downloadmanagers/default.conf'
contentscannertimeout = 60
contentscanexceptions = off
recheckreplacedurls = off
forwardedfor = on
usexforwardedfor = off
logconnectionhandlingerrors = on
logchildprocesshandling = off
maxchildren = 120
minchildren = 8
minsparechildren = 4
preforkchildren = 6
maxsparechildren = 32
maxagechildren = 500
maxips = 0
ipcfilename = '/tmp/.dguardianipc'
urlipcfilename = '/tmp/.dguardianurlipc'
ipipcfilename = '/tmp/.dguardianipipc'
nodaemon = off
nologger = off
logadblocks = off
loguseragent = off
softrestart = off
mailer = '/usr/sbin/sendmail -t'



  


2. Re: Squid + Dansguardian - Muito Lento

Haroldo
vmarques

(usa Outra)

Enviado em 04/02/2014 - 10:39h

Ninguém passou por isso?

Esqueci de falar que todas as eth e a rede em si é cat 6 /1000


3. Re: Squid + Dansguardian - Muito Lento

Pedro
px

(usa Debian)

Enviado em 04/02/2014 - 11:18h

vmarques escreveu:

Ninguém passou por isso?

Esqueci de falar que todas as eth e a rede em si é cat 6 /1000


Bom de cara sugiro que adote o squid mais novo, a minha versão esta na 3.4.2-1... tente achar algo entre 3.2 e 3.4 no Debian...

acrescente a linha abaixo no seu squid.conf:

#DANS
acl_uses_indirect_client on

Vou dar mais uma olhada na sua cfgs se perceber algo mais lhe aviso... há tente dar uma organizada nisto, segue abaixo como deixo minha config (altere os valores para sua rede, lógico):

## Squid.conf - Configurado por PX

http_port 192.168.254.1:3128

#Memória do cache
cache_mem 0 MB

#Usar o máximo de memória possível
#memory_pools on
#memory_pools_limit 128 MB

#Tamanho máximo de arquivos alocados na RAM
maximum_object_size_in_memory 0 KB

#---- Disco

#Diretório do cache - Tamanho em MB do cache em disco (esta como 4GB altere se necessário) - número de pastas - número de subpastas
#cache_dir ufs /var/spool/squid3 100 16 256 read-only

#Bloqueando o cache
no_cache deny all

#Porcentagem de atualização do cache -limpo ao atingir o máximo
cache_swap_low 85
cache_swap_high 95

#Maximo e Minimo armazenados no disco
maximum_object_size 0 MB
minimum_object_size 0 KB

#Diretório de erros
error_directory /var/log/squid/errors/

#Log
cache_access_log /var/log/squid/access.log

refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280

#----- Regras

# Portas Liberadas
acl SSL_ports port 443
acl Safe_ports port 443 # https
acl Safe_ports port 80 # http
acl Safe_ports port 1025-65535 # unregistered ports
acl CONNECT method CONNECT

http_access deny !Safe_ports

## REGRAS ##

#ACL PARA CONEXAO METODO SSL
acl CONNECT method CONNECT
http_access deny CONNECT !SSL_ports

#ACL PARA LIBERACAO TOTAL POR MAC
#acl mac_liberados arp "/etc/squid/mac_liberados"

#ACL PARA SITES LIBERADOS
#acl sites_liberados url_regex -i "/etc/squid/sites_liberados"

#ACL PARA SITES BLOQUEADOS
#acl sites_bloqueados url_regex -i "/etc/squid/sites_bloqueados"

#DANS
acl_uses_indirect_client on

#follow_x_forwarded_for allow localhost

#ACL REDE LOCAL
acl rede_local src 192.168.254.0/24

# Liberando Acessos
http_access allow localhost
http_access allow rede_local
#http_access allow mac_liberados
#http_access allow sites_liberados

# Negando Acessos
#http_access deny sites_bloqueados
http_access deny all



4. Re: Squid + Dansguardian - Muito Lento

Haroldo
vmarques

(usa Outra)

Enviado em 05/02/2014 - 14:31h

Boa tarde.
Primeiramente, obrigado pela atenção.

Olha, coloquei meu squid.conf exatamente como o seu. Menos uma ACL. E coloquei a versão
3.1.20 do Squid3.

Após restartar o squid, fica bom. Passa 2 minutos, fica lento de uma forma que não da pra navegar.
Não é o servidor em si.. É algo com o SQUID e Dansguardian. Pois nas regras de firewall que eu libero determinados IPs para não utilizar o proxy, estes navegam a toda velocidade...




-----------------
----------------
SQUID.CONF


## Squid.conf - Configurado por PX

http_port 192.168.0.253:3128

#Memória do cache
cache_mem 0 MB

#Usar o máximo de memória possível
#memory_pools on
#memory_pools_limit 128 MB

#Tamanho máximo de arquivos alocados na RAM
maximum_object_size_in_memory 0 KB

#---- Disco

#Diretório do cache - Tamanho em MB do cache em disco (esta como 4GB altere se necessário) - número de pastas - número de subpastas
#cache_dir ufs /var/spool/squid3 100 16 256 read-only

#Bloqueando o cache
no_cache deny all

#Porcentagem de atualização do cache -limpo ao atingir o máximo
cache_swap_low 85
cache_swap_high 95

#Maximo e Minimo armazenados no disco
maximum_object_size 0 MB
minimum_object_size 0 KB

#Diretório de erros
error_directory /var/log/squid3/errors

#Log
cache_access_log /var/log/squid3/access.log

refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280

#----- Regras

# Portas Liberadas
acl SSL_ports port 443
acl Safe_ports port 443 # https
acl Safe_ports port 80 # http
acl Safe_ports port 1025-65535 # unregistered ports
acl CONNECT method CONNECT

http_access deny !Safe_ports

## REGRAS ##

#ACL PARA CONEXAO METODO SSL
acl CONNECT method CONNECT
http_access deny CONNECT !SSL_ports

#ACL PARA LIBERACAO TOTAL POR MAC
#acl mac_liberados arp "/etc/squid/mac_liberados"

#ACL PARA SITES LIBERADOS
#acl sites_liberados url_regex -i "/etc/squid/sites_liberados"

#ACL PARA SITES BLOQUEADOS
#acl sites_bloqueados url_regex -i "/etc/squid/sites_bloqueados"

#DANS
acl_uses_indirect_client on

#follow_x_forwarded_for allow localhost

#ACL REDE LOCAL
acl rede_local src 192.168.0.0/24

# Liberando Acessos
#http_access allow localhost
http_access allow rede_local
#http_access allow mac_liberados
#http_access allow sites_liberados

# Negando Acessos
#http_access deny sites_bloqueados
http_access deny all



5. Re: Squid + Dansguardian - Muito Lento

Pedro
px

(usa Debian)

Enviado em 05/02/2014 - 18:40h

Não era pra botar exatamente como o meu era pra adaptar... me responde umas perguntas pra montar o squid.conf pra você

Quanta memória ram quer deixar para o squid?

Quantas máquinas irão passar pelo proxy?

Quantos Gigas de disco deixará para o proxy?

Qual a faixa de rede para rede local? (tipo 192.168.1.0/24 ou 192.168.0.1/24...)

Poste seu script de iptables, por favor.

Acho que é só por enquanto.


6. Re: Squid + Dansguardian - Muito Lento

Haroldo
vmarques

(usa Outra)

Enviado em 06/02/2014 - 08:31h

Bom dia.
Olha as infos

Esse servidor possui 4GB de RAM. E só faz isso.. Apenas firewall/proxy, então pode jogar o máximo possível.

Em média 60 máquinas passam pelo Proxy

O HD possui 250GB

A partição / possui 140 GB e a /home + 90 GB... Tb não tenho outra função pro disco nesse HD. Então pode dimensionar como ficar melhor.

Faixa 192.168.0.1/24

Ip do Proxy 192.168.0.253

E no servidor, pensando ser problema no script. Retirei da inicialização e está subindo sem. Como se fosse um proxy puro. E está do mesmo modo...

Um detalhe que não citei.

Umas 18 pessoas ficam conectados por uma fibra que possui em média 150 metros de comprimento. E usei o adaptador para entrar a Fibra e entrar no switch como Gigalan normal, como se fosse outro cabo de rede..

Obrigado mesmo pela ajuda, a coisa aqui está ficando feia.


7. Re: Squid + Dansguardian - Muito Lento

Perfil removido
removido

(usa Nenhuma)

Enviado em 06/02/2014 - 09:05h

Recomendo sempre análisar os logs. Pesquise por squid em modo debug. Verifique o DNS, teste setando um público (Ex.: 8.8.8.8) no seu squid.conf.

Tente eliminar as barreiras para facilitar sua vida. Se você não começou uma análise mais apurada, elimine o dansguardian e concentre os testes no squid.

Instale o ntop no seu gateway e análise o tráfego.

Abraço!


8. Re: Squid + Dansguardian - Muito Lento

Pedro
px

(usa Debian)

Enviado em 06/02/2014 - 09:30h

Blz cara aqui segue o squid.conf modificado:

## Squid.conf - Configurado por PX

http_port 192.168.0.253:3128

#Nome do host
visible_hostname Proxy

#Memória do cache
cache_mem 2048 MB

#Usar o máximo de memória possível
memory_pools on
memory_pools_limit 2048 MB

#Tamanho máximo de arquivos alocados na RAM
maximum_object_size_in_memory 2048 KB

#---- Disco

#Diretório do cache - Tamanho em MB do cache em disco (esta como 100GB altere se necessário) - número de pastas - número de subpastas
cache_dir ufs /var/spool/squid3 100000 16 256

#Porcentagem de atualização do cache -limpo ao atingir o máximo
cache_swap_low 90
cache_swap_high 95

#Maximo e Minimo armazenados no disco
maximum_object_size 250 MB
minimum_object_size 10 MB

#Diretório de erros
error_directory /var/log/squid3/errors

#Log
cache_access_log /var/log/squid3/access.log

#Configuração cgi e refresh

hierarchy_stoplist cgi-bin ?
access_log /var/log/squid/access.log squid
acl QUERY urlpath_regex cgi-bin \?
cache deny QUERY
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320

hosts_file /etc/hosts

#----- Regras

# Portas Liberadas
acl SSL_ports port 443 # https ssl
acl SSL_ports port 563 # snews
acl SSL_ports port 873 # rsync
acl Safe_ports port 80 # http
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 631 # cups
acl Safe_ports port 873 # rsync
acl Safe_ports port 901 # SWAT
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 70 # gopher
acl Safe_ports port 210 # wais
acl Safe_ports port 445
acl Safe_ports port 1025-65535 # unregistered ports

http_access deny !Safe_ports

## REGRAS ##

#ACL PARA CONEXAO METODO SSL
acl CONNECT method CONNECT
http_access deny CONNECT !SSL_ports

#ACL PARA LIBERACAO TOTAL POR MAC
#acl mac_liberados arp "/etc/squid/mac_liberados"

#DANSGUARDIAN
acl_uses_indirect_client on

#Mantem o Squid funcionando caso o Squidguard pare
redirector_bypass on

#ACL REDE LOCAL
acl rede_local src 192.168.0.1/24

# Liberando Acessos
http_access allow localhost
http_access allow rede_local
#http_access allow mac_liberados

# Negando Acessos
http_access deny all


Também de uma atualizada no seu dansguardian, já ta na versão 2.12.0.0, baixa e compile do site deles. Toma o link direto

http://dansguardian.org/downloads/2/Alpha/dansguardian-2.12.0.0.tar.gz

Basta estrair para uma pasta e compilar normalmente

./configure
make
make install

PS: Faça backup das configurações do dansguardian antigo


9. Re: Squid + Dansguardian - Muito Lento

Perfil removido
removido

(usa Nenhuma)

Enviado em 06/02/2014 - 10:39h

Continuo recomendando análise. Vocês conseguiram identificar o problema que justifique atualizar algo? Monte um ambiente controlado para esse tipo de teste.

Em grandes empresas atualizar algo em produção requer explicações técnicas, roteiro de atualização, roteiro de rollback, estimativa de tempo, áreas afetadas e ainda tem que ter aprovação.


10. Re: Squid + Dansguardian - Muito Lento

Pedro
px

(usa Debian)

Enviado em 06/02/2014 - 11:06h

amarildosertorio escreveu:

Continuo recomendando análise. Vocês conseguiram identificar o problema que justifique atualizar algo? Monte um ambiente controlado para esse tipo de teste.

Em grandes empresas atualizar algo em produção requer explicações técnicas, roteiro de atualização, roteiro de rollback, estimativa de tempo, áreas afetadas e ainda tem que ter aprovação.


Bom um squid 2.7 com dansguardian 2.10 merecem uma atualização pois nem sei se são compatíveis entre si. E como é só uma máquina para proxy e o squid já foi atualizado basta acompanhar o dansguardian agora, fora que acima no primeiro post ele diz que já tentou reinstalar tudo e não tinha conseguido melhoras.

Se o problema persistir com configurações adequadas ai sim, recomendaria a análise da infra dele.


11. Re: Squid + Dansguardian - Muito Lento

Perfil removido
removido

(usa Nenhuma)

Enviado em 06/02/2014 - 12:00h

Se perde muito tempo trabalhando dessa forma. Profissionais não trabalham com "achismo" e sim com evidências. Se existem incompatibilidades leia os manuais e release notes. Continuo recomendando análise.

Abraço!


12. Re: Squid + Dansguardian - Muito Lento

Pedro
px

(usa Debian)

Enviado em 06/02/2014 - 12:06h

amarildosertorio escreveu:

Se perde muito tempo trabalhando dessa forma. Profissionais não trabalham com "achismo" e sim com evidências. Se existem incompatibilidades leia os manuais e release notes. Continuo recomendando análise.

Abraço!


Eu sei que não é o ideal, mas como o colega já havia formatado tudo, ou seja, pra recomeçar do zero instale a versão mais nova...

Se fosse em outro caso recomendaria primeiro averiguarmos a falha ou o overload dessas aplicações.

T+



01 02 03



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts