Squid travando navegação e acesso pelo browser no pfSense
-
Boa tarde a todos, estou com um problema no PFsense, todos os dias estou tendo que reiniciar o squid, pois pelo menos uma vez por dia ele trava a navegação de todos via proxy e tenho que logar pelo terminal para reiniciar o squid e tudo volta ao normal. Já revisei várias configurações e não encontrei o que poderia estar errado, por isso peço a ajuda de quem puder me dar uma luz para solucionar este problema. Estou rodando o Squid + SquidGuard + Lightsquid + Clamav
Configurações:
Dell Power Edge R240
Intel(R) Xeon(R) E-2224
16Gb RAM
1 TB HD RAID 1
6 Portas de REDESegue Squid.conf:
This file is automatically generated by pfSense
Do not edit manually !
http_port 192.168.222.254:3128
http_port 192.168.10.254:3128
http_port 127.0.0.1:3128
tcp_outgoing_address 192.168.222.254
icp_port 0
digest_generation off
dns_v4_first on
pid_filename /var/run/squid/squid.pid
cache_effective_user squid
cache_effective_group proxy
error_default_language pt-br
icon_directory /usr/local/etc/squid/icons
visible_hostname CAT_PROXY_SERVER
cache_mgr eduardorossidantas@gmail.com
access_log /var/squid/logs/access.log
cache_log /var/squid/logs/cache.log
cache_store_log none
netdb_filename /var/squid/logs/netdb.state
pinger_enable on
pinger_program /usr/local/libexec/squid/pingerlogfile_rotate 0
debug_options rotate=0
shutdown_lifetime 3 secondsAllow local network(s) on interface(s)
acl localnet src 192.168.222.0/24 192.168.10.0/24 127.0.0.0/8
forwarded_for on
uri_whitespace strip
dns_nameservers 127.0.0.1cache_mem 6144 MB
maximum_object_size_in_memory 1024 KB
memory_replacement_policy heap GDSF
cache_replacement_policy heap LFUDA
minimum_object_size 0 KB
maximum_object_size 16 MB
cache_dir ufs /var/squid/cache 10240 16 256
offline_mode off
cache_swap_low 90
cache_swap_high 95
acl donotcache dstdomain "/var/squid/acl/donotcache.acl"
cache deny donotcache
cache allow allAdd any of your own refresh_pattern entries above these.
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|?) 0 0% 0
refresh_pattern . 0 20% 4320#Remote proxies
Setup some default acls
ACLs all, manager, localhost, and to_localhost are predefined.
acl allsrc src all
acl safeports port 21 70 80 210 280 443 488 563 591 631 777 901 3128 3129 1025-65535 8180 8280 8380 9096 143 587 8080 3000 446 82 81
acl sslports port 443 563 8443 9196 993 995 465 446 8370 8410 8360 8373 82acl purge method PURGE
acl connect method CONNECTDefine protocols used for redirects
acl HTTP proto HTTP
acl HTTPS proto HTTPS
acl unrestricted_hosts src "/var/squid/acl/unrestricted_hosts.acl"
acl whitelist dstdom_regex -i "/var/squid/acl/whitelist.acl"
acl sslwhitelist ssl::server_name_regex -i "/var/squid/acl/whitelist.acl"
http_access allow manager localhosthttp_access deny manager
http_access allow purge localhost
http_access deny purge
http_access deny !safeports
http_access deny CONNECT !sslportsAlways allow localhost connections
http_access allow localhost
request_body_max_size 0 KB
delay_pools 1
delay_class 1 2
delay_parameters 1 -1/-1 -1/-1
delay_initial_bucket_level 100Do not throttle unrestricted hosts
delay_access 1 deny unrestricted_hosts
delay_access 1 allow allsrcReverse Proxy settings
Package Integration
url_rewrite_program /usr/local/bin/squidGuard -c /usr/local/etc/squidGuard/squidGuard.conf
url_rewrite_bypass off
url_rewrite_children 16 startup=8 idle=4 concurrency=0Custom options before auth
These hosts do not have any restrictions
http_access allow unrestricted_hosts
Always allow access to whitelist domains
http_access allow whitelist
Set YouTube safesearch restriction
acl youtubedst dstdomain -n www.youtube.com m.youtube.com youtubei.googleapis.com youtube.googleapis.com www.youtube-nocookie.com
request_header_access YouTube-Restrict deny all
request_header_add YouTube-Restrict strict youtubedstSetup allowed ACLs
Allow local network(s) on interface(s)
http_access allow localnet
Default block all to be sure
http_access deny allsrc
icap_enable on
icap_send_client_ip on
icap_send_client_username on
icap_client_username_encode off
icap_client_username_header X-Authenticated-User
icap_preview_enable on
icap_preview_size 1024icap_service service_avi_req reqmod_precache icap://127.0.0.1:1344/squid_clamav bypass=off
adaptation_access service_avi_req allow all
icap_service service_avi_resp respmod_precache icap://127.0.0.1:1344/squid_clamav bypass=on
adaptation_access service_avi_resp allow all -
Bom dia, problema está sendo causado pelo squidguard, em determinado momento ele fica utilizando 100% de leitura do disco e causa este problema. Ao parar somente ele tudo volta ao normal, pesquisando o que pode estar errado com ele, porém ainda não descobri.
-
@rossidantas Ta em qual versão do PFsense ?
-
@ismarcs 2.5.2-RELEASE (amd64)
-
@rossidantas Se foi upgrade no PFsense, os pacotes foram removidos antes de atualizar ?
Limpa o cache o squid e faz um teste -
@ismarcs ontem desabilitei o cache do squid, o espaço em disco está tranquilo o problema é que o squidguard está causando é utilização de IN/OUT do disco em 100%, o espaço usado é muito pouco, mas a leitura e escrita está matando o servidor, estou pensando em refazer o servidor retirando o RAID 1 e colocando SSD para ver o resultado. Outra opção que estou vendo é a utilização do e2guardian, ainda estou estudando este pacote, nunca utilizei e parece que tem vantagens, qualquer novidade volto postando.
-
@rossidantas interessante a falha. Eu uso discos normais, uso Mirror GEOM com 2 HDs. na instalação do PFsense vc ja consegue fazer
-
@rossidantas Recomendo a troca para o E2guardian, considero ele superior ao squid.
-
@gustavohco Realmente isso que estou vendo, já vi vários comentário dizendo o mesmo que você. Estou estudando este pacote para poder implementar, no meu caso a opção pelo squid com Squidguard foi pelo fato que já ter experiência com eles e nossa rede é com DHCP fixo, sendo assim temos listas bem variadas de acesso por IP. Tenho alguns casos que fazem acesso sem proxy e por este fato optei por deixar o proxy automático por WPAD ao invés de transparente. Minha ideia é deixar o e2guardian também automático pelo WPAD mesmo.
-
@ismarcs a única coisa de concreto que consegui levantar é que o problema gira em torno do SquidGuardian, em determinado caso parei somente ele e o sistema ficou normal, após iniciar novamente tudo fica lindo. Para evitar estas paradas montei um script que roda no cron duas vezes por dia e reinicia estes serviços, e assim pelo menos não tenho mais paradas.
-
@rossidantas Aqui na empresa muitos usuários utilizam ip fixo mas mesmo assim utilizo o proxy transparente, instalei em cada máquina o certificado do proxy mesmo vendo várias pessoas dizendo que não precisaria, não temos AD e o squid dava muito problema com certificado ssl. A maneira que o e2guardian audita é bem melhor e aqueles que não trafegam pelo proxy você pode criar um aliases e colocar no baypass
-
@gustavohco realmente desisti de tentar fazer o squid dar certo, enquanto estou implementando o e2guardian para testes criei um script para ficar reiniciando o squid duas vezes por dia e não tive mais problemas.
-
Estou tendo esse problema, ele bloqueia conexão com internet e depois volta. Se reiniciar o squid volta de imediato.
O erro que aparece nas páginas quando isso acontece é do ICAP, que faz a conexão do squid com OCOMON.