Squid não funciona, bloqueia todos os sites!!

1. Squid não funciona, bloqueia todos os sites!!

Valdir Duarte
Valdir.D

(usa Debian)

Enviado em 24/10/2017 - 10:27h

Bom dia pessoal, tudo joia.
Sou novo aqui, e novo também no Linux.
Bom estou tentando configurar o squid para bloquear sites porem não estou com sorte.
Aparentemente ela esta bloqueando todos os sites que tento navegar. Digo aparentemente, pq não sei de fato se ele ta bloquando ou não ta funcionando.
Peço orientações, porquê não tenho a mínima ideia do que fazer. Ja tentei todas as configurações possíveis.

Detalhes: Estou tentando fazer esse bloqueio no "servidor", não tenho maquinas clientes.
Configurei o browser com o mesmo ip e proxy do squid ip192.168.1.1/proxy3128

Segue abaixo as configurações do squid.

#PROXY TRANSPARENTE
http_port 3128 transparent

# Nome do Proxy visível no bloqueio
visible_hostname SQUID

#E-MAIL
cache_mgr sergio.abraao@yahoo.com.br

#USUARIO E GRUPO DOS ARQUIVOS E PROCESSOS DO SERVICO
cache_effective_user squid
cache_effective_group squid

#ACESSO LOG
# cache_log /var/log/squid3/cache.log
cache_log /etc/squid3/logs/cache.log
cache_access_log /etc/squid3/logs/access.log
cache_store_log none

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 ks_to_localhost dst 127.0.0.0/8 0.0.0.0/32

#DECLARAÇAO DE ACL-INTRANET
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 ks_to_localhost dst 127.0.0.0/8 0.0.0.0/32

#DECLARAÇÃO DE ACLS PARA LIBERAÇÃO DE PORTAS
acl SSL_ports port 443
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 purge method PURGE
acl CONNECT method CONNECT

# BLOQUEIO DE SITES
acl redelocal src 192.168.1.1/24
acl palavrasproibidas dstdom_regex "/etc/squid3/palavrasproibidas"
acl proibidos url_regex "/etc/squid3/bloqueados"
#acl DownloadsLiberados url_regex "/etc/squid3/downloads1"
#acl DownloadsBloqueados url_regex "/etc/squid3/downloads2"
acl PalavrasBloqueadas dstdomain "/etc/squid3/palavras"
acl SitesBloqueados url_regex "/etc/squid3/sitesbloqueados"
#acl Diretoria src "/etc/squid3/ip.diretoria"

#USO DAS REGAS
http_access allow manager localhost
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 allow redelocal

#LINK DO BLOQUEIO
#http_access allow Diretoria
#http_access allow DownloadsLiberados
#http_access allow DownloadsBloqueados
http_access allow PalavrasBloqueadas
http_access allow SitesBloqueados
http_access allow palavrasproibidas
http_access allow proibidos

cache_swap_high 95
cache_swap_low 90

#CACHE SQUID
cache_mem 256 MB

#PROXY TRANSPARENTE
http_port 3128 transparent
#http_port 3128 intercept

#PROXY TRANSPARENTE
$iptables -t nat -A PREROUTING -i $IF_EXTERNA -p tcp --dport 80 -j REDIRECT --to-port 3128
$iptables -t nat -A PREROUTING -i $IF_INTERNA -p tcp --dport 443 -j REDIRECT --to-port 3128

#ATIVA MASCARAMENTO DE SAIDA
$iptables -A POSTROUTING -t nat -o $IF_INTERNA -j MASQUERADE




  


2. Re: Squid não funciona, bloqueia todos os sites!!

Leandro Silva
LSSilva

(usa Outra)

Enviado em 24/10/2017 - 16:11h

Onde:
acl redelocal src 192.168.1.1/24
Deveria:
acl redelocal src 192.168.1.0/24

Houve confusão aqui também:
Onde:
#PROXY TRANSPARENTE
$iptables -t nat -A PREROUTING -i $IF_EXTERNA -p tcp --dport 80 -j REDIRECT --to-port 3128
$iptables -t nat -A PREROUTING -i $IF_INTERNA -p tcp --dport 443 -j REDIRECT --to-port 3128

#ATIVA MASCARAMENTO DE SAIDA
$iptables -A POSTROUTING -t nat -o $IF_INTERNA -j MASQUERADE

Deveria:
#PROXY TRANSPARENTE
$iptables -t nat -A PREROUTING -i $IF_INTERNA -p tcp --dport 80 -j REDIRECT --to-port 3128

#ATIVA MASCARAMENTO DE SAIDA
$iptables -A POSTROUTING -t nat -o $IF_EXTERNA -j MASQUERADE

No seu caso o proxy será transparente, não deverá configurar nada no browser. E como não utiliza ssl-bump não deve direcionar a porta 443 para a 3128(http), caso transparente seu proxy, da forma que está, ira filtrar só http(80). Caso precise bloquear https sem muita complicação crie um proxy autenticado, que não pode ser transparente.


3. Re: Squid não funciona, bloqueia todos os sites!!

Valdir Duarte
Valdir.D

(usa Debian)

Enviado em 29/10/2017 - 21:09h

LSSilva obrigado pelas orientações. Fiz todas as alterações que vc listou acima, porém nada, não funcionou. Realmente não tenho ideia do que fazer para resolver essa questão. meu quid funciona normalmente, bloqueia sites, direciona portas. Mas basta tentar aplicar isso que trava tudo. Basta colocar "intercept" ou "transparent", que para, navega mais nada, entra em site nenhum. Realmente não sei o que fazer.


4. Re: Squid não funciona, bloqueia todos os sites!!

Valdir Duarte
Valdir.D

(usa Debian)

Enviado em 29/10/2017 - 21:11h

A s vezes acho que deve estar faltanto no meu sistema algum suporte para isso, mas qual seria?? Fiz todas as atualizações possiveis
Será que esta chocando com outro app do debian??


5. Re: Squid não funciona, bloqueia todos os sites!!

Leandro Silva
LSSilva

(usa Outra)

Enviado em 29/10/2017 - 23:47h

Valdir.D escreveu:

A s vezes acho que deve estar faltanto no meu sistema algum suporte para isso, mas qual seria?? Fiz todas as atualizações possiveis
Será que esta chocando com outro app do debian??


Como você faria:

#PROXY TRANSPARENTE
http_port 3128 transparent

# Nome do Proxy visível no bloqueio
visible_hostname SQUID

#E-MAIL
cache_mgr sergio.abraao@yahoo.com.br

#USUARIO E GRUPO DOS ARQUIVOS E PROCESSOS DO SERVICO
cache_effective_user squid
cache_effective_group squid

#ACESSO LOG
# cache_log /var/log/squid3/cache.log
cache_log /etc/squid3/logs/cache.log
cache_access_log /etc/squid3/logs/access.log
cache_store_log none

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 ks_to_localhost dst 127.0.0.0/8 0.0.0.0/32

#DECLARAÇAO DE ACL-INTRANET
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 ks_to_localhost dst 127.0.0.0/8 0.0.0.0/32

#DECLARAÇÃO DE ACLS PARA LIBERAÇÃO DE PORTAS
acl SSL_ports port 443
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 purge method PURGE
acl CONNECT method CONNECT

# BLOQUEIO DE SITES
acl redelocal src 192.168.1.1/24
acl palavrasproibidas dstdom_regex "/etc/squid3/palavrasproibidas"
acl proibidos url_regex "/etc/squid3/bloqueados"
#acl DownloadsLiberados url_regex "/etc/squid3/downloads1"
#acl DownloadsBloqueados url_regex "/etc/squid3/downloads2"
acl PalavrasBloqueadas dstdomain "/etc/squid3/palavras"
acl SitesBloqueados url_regex "/etc/squid3/sitesbloqueados"
#acl Diretoria src "/etc/squid3/ip.diretoria"

#USO DAS REGAS
http_access allow manager localhost
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 allow redelocal

#LINK DO BLOQUEIO
#http_access allow Diretoria
#http_access allow DownloadsLiberados
#http_access allow DownloadsBloqueados
http_access allow PalavrasBloqueadas
http_access allow SitesBloqueados
http_access allow palavrasproibidas
http_access allow proibidos

cache_swap_high 95
cache_swap_low 90

#CACHE SQUID
cache_mem 256 MB

#PROXY TRANSPARENTE
http_port 3128 transparent
#http_port 3128 intercept

#PROXY TRANSPARENTE
$iptables -t nat -A PREROUTING -i $IF_EXTERNA -p tcp --dport 80 -j REDIRECT --to-port 3128
$iptables -t nat -A PREROUTING -i $IF_INTERNA -p tcp --dport 443 -j REDIRECT --to-port 3128

#ATIVA MASCARAMENTO DE SAIDA
$iptables -A POSTROUTING -t nat -o $IF_INTERNA -j MASQUERADE


Como eu faria:

Squid.conf
#Proxy port + intercept
http_port 3128 intercept

# Nome do Proxy visível no bloqueio
visible_hostname SQUID

#E-mail
cache_mgr sergio.abraao@yahoo.com.br

#Cache/Log
cache_log /etc/squid3/logs/cache.log
cache_access_log /etc/squid3/logs/access.log
cache_store_log none
cache_swap_low 90
cache_swap_high 95
cache_mem 70 MB
maximum_object_size_in_memory 50 KB
maximum_object_size 50 MB
minimum_object_size 2 KB
cache_dir aufs /var/spool/squid3 5000 16 256
cache_replacement_policy heap LFUDA
memory_replacement_policy heap GDSF
refresh_pattern ^ftp: 15 20% 2280
refresh_pattern ^gopher: 15 0% 2280
refresh_pattern . 15 20% 2280
forward_max_tries 25
half_closed_clients off
client_db off
memory_pools off

#Manager
acl manager proto cache_object

#Portas/Metodos
acl SSL_ports port 443
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 purge method PURGE
acl CONNECT method CONNECT

#Acl's
acl redelocal src 192.168.1.0/24
acl palavrasproibidas dstdom_regex "/etc/squid3/palavrasproibidas"
acl proibidos url_regex "/etc/squid3/bloqueados"
acl PalavrasBloqueadas dstdomain "/etc/squid3/palavras"
acl SitesBloqueados url_regex "/etc/squid3/sitesbloqueados"

#Bloqueios
http_access deny PalavrasBloqueadas
http_access deny SitesBloqueados
http_access deny palavrasproibidas
http_access deny proibidos
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

#Finalmentes
http_access allow manager localhost
http_access allow localhost
http_access deny !redelocal
http_access deny all


Firewall

#PROXY TRANSPARENTE
iptables -t nat -A PREROUTING -i $IF_INTERNA -p tcp --dport 80 -j REDIRECT --to-port 3128

#Ip_Fowarding
echo 1 > /proc/sys/net/ipv4/ip_forward

#ATIVA MASCARAMENTO DE SAIDA
$iptables -A POSTROUTING -t nat -o $IF_EXTERNA -j MASQUERADE


Observações:

Seu squid em modo transparente não irá filtrar sites HTTPS.
É necessário criar as variáveis com suas interfaces corretas no script de firewall.
As configurações do squid que removi provavelmente (salvo engano) não são mais necessárias nesta versão que utilizas.
Existem noções básicas de proxy/firewall que precisa dominar antes de configurar/manter um servidor com estes serviços (não que eu tenha estas noções, porém você precisa ter).







Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts