Configuração Squid (Ele não esta bloqueando nenhum site) [RESOLVIDO]

1. Configuração Squid (Ele não esta bloqueando nenhum site) [RESOLVIDO]

Carlos Atila dos Santos
growjitsu

(usa Debian)

Enviado em 31/03/2013 - 22:24h

Olá Pessoal,

estou tentando configurar um proxy em servidor com debian 5, o serviço ate que esta funcionando, pois sem o endereço do proxy nas maquinas clientes elas não navegam, no entanto ele não esta bloqueando.

Abaixo segue a minha configuração de SQUID. Desde já agradeço a atenção de vocês.



http_port 3128
#http_port 3128 transparent
visible_hostname gdh
#viseble_hostname kratos
error_directory /usr/share/squid/errors/Portuguese/

cache_mem 64 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 512 MB
maximum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 2048 16 256
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

acl all src 0.0.0.0/0.0.0.0
http_access allow all
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 88 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
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 901 # swat
acl Safe_ports port 1025-65535 # portas altas
acl purge method PURGE

acl connect method CONNECT


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


#Bloqueia acessos de fora da rede local antes de passar pela autenticação
acl redelocal src 192.168.1.0/24
http_access deny redelocal


#Outras regras de restrição vem aqui abaixo, de forma que o acesso seja negado. Antes mesmo de passar pela autenticação.
#Autentica o usuario
auth_param basic realm Squid
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
acl autenticados proxy_auth REQUIRED
http_access allow autenticados

#Sites bloqueados
acl bloqueados url_regex -i "/etc/squid/bloqueados"
http_access deny bloqueados

#Bloqueio por palavras (palavras que são proibidas no squid no (PROXY))
acl palavrasproibidas dstdom_regex "/etc/squid/palavrasproibidas"
http_access deny palavrasproibidas

#Libera o acesso da rede local e do localhost para os autenticados e bloqueia os demais.
http_access allow localhost
http_access allow redelocal
http_access deny all


  


2. Re: Configuração Squid (Ele não esta bloqueando nenhum site) [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 31/03/2013 - 22:54h

growjitsu escreveu:

Olá Pessoal,

estou tentando configurar um proxy em servidor com debian 5, o serviço ate que esta funcionando, pois sem o endereço do proxy nas maquinas clientes elas não navegam, no entanto ele não esta bloqueando.

Abaixo segue a minha configuração de SQUID. Desde já agradeço a atenção de vocês.



http_port 3128
#http_port 3128 transparent
visible_hostname gdh
#viseble_hostname kratos
error_directory /usr/share/squid/errors/Portuguese/

cache_mem 64 MB
maximum_object_size_in_memory 64 KB
maximum_object_size 512 MB
maximum_object_size 0 KB
cache_swap_low 90
cache_swap_high 95
cache_dir ufs /var/spool/squid 2048 16 256
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

acl all src 0.0.0.0/0.0.0.0
http_access allow all
acl manager proto cache_object
acl localhost src 127.0.0.1/255.255.255.255
acl SSL_ports port 443 563
acl Safe_ports port 88 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 563 # https, snews
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 901 # swat
acl Safe_ports port 1025-65535 # portas altas
acl purge method PURGE

acl connect method CONNECT


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


#Bloqueia acessos de fora da rede local antes de passar pela autenticação
acl redelocal src 192.168.1.0/24
http_access deny redelocal


#Outras regras de restrição vem aqui abaixo, de forma que o acesso seja negado. Antes mesmo de passar pela autenticação.
#Autentica o usuario
auth_param basic realm Squid
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/squid_passwd
acl autenticados proxy_auth REQUIRED
http_access allow autenticados

#Sites bloqueados
acl bloqueados url_regex -i "/etc/squid/bloqueados"
http_access deny bloqueados

#Bloqueio por palavras (palavras que são proibidas no squid no (PROXY))
acl palavrasproibidas dstdom_regex "/etc/squid/palavrasproibidas"
http_access deny palavrasproibidas

#Libera o acesso da rede local e do localhost para os autenticados e bloqueia os demais.
http_access allow localhost
http_access allow redelocal
http_access deny all


Bom, a título de informação, o squid3 (que não é teu caso) não usa mais o 'transparent'. Agora é 'intercept'. Mas o 'intercept' é para proxy transparente, ou seja, não precisa colocar proxies nas máquinas clientes.
No teu caso:
Comenta a linha:
http_access allow all
você tem essa linha por primeiro e depois, por último, você tem http_access deny all.
O squid lê de cima pra baixo, logo, a primeira linha tem prioridade.


3. Buckminster

Carlos Atila dos Santos
growjitsu

(usa Debian)

Enviado em 31/03/2013 - 23:32h

Olá Buckminster,

Fiz o que você me pediu e funcionou, agora o proxy esta bloqueando tudo, eu criei uma acl que bloqueia sites e esta descrita abaixo.

#Sites bloqueados
acl bloqueados url_regex -i "/etc/squid/bloqueados"
http_access deny bloqueados

Eu queria saber se você consegue me ajudar a fazer essa acl funcionar ou me informa o por que ela não esta funcionando.

Desde ja te agradeço muito.


4. Re: Configuração Squid (Ele não esta bloqueando nenhum site) [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 31/03/2013 - 23:51h

growjitsu escreveu:

Olá Buckminster,

Fiz o que você me pediu e funcionou, agora o proxy esta bloqueando tudo, eu criei uma acl que bloqueia sites e esta descrita abaixo.

#Sites bloqueados
acl bloqueados url_regex -i "/etc/squid/bloqueados"
http_access deny bloqueados

Eu queria saber se você consegue me ajudar a fazer essa acl funcionar ou me informa o por que ela não esta funcionando.

Desde ja te agradeço muito.


A acl url_regex é para bloquear palavras na url, ou seja, todo caracter ou sequência de caracteres que estiver na url será(ão) bloqueado(s).
Para bloquear sites você deve colocar dentro do teu arquivo 'bloqueados' o domínio, por exemplo:
facebook.com
youtube.com

um domínio por linha dando enter a cada linha.
Lembrando que a opção -i é para o squid não distinguir maiúsculas de minúsculas.
Você criou o arquivo /etc/squid/bloqueados?


5. Configuração Squid (Ele não esta bloqueando nenhum site)

Carlos Atila dos Santos
growjitsu

(usa Debian)

Enviado em 01/04/2013 - 00:10h

Olá Buckminster,

Então o arquivo /etc/squid/bloqueados eu criei, e dentro dele esta escrito desta forma abaixo, um dominio por linha.

facebook.com
facebook.com.br
www.facebook.com.br">www.facebook.com.br
www.facebook.com
orkut.com
orkut.com.br
www.orkut.com.br">www.orkut.com.br
www.orkut.com
youtube.com.br
youtube.com
www.youtube.com.br">www.youtube.com.br
www.youtube.com

depois que eu comentei a linha que você me informou o proxy agora bloquei tudo, qualquer site que eu tento navegar ele não deixa, o que sera que pode ser feito quanto a isso.

Aproposito muito obrigado pela dica do -i eu tinha colocado mas ainda não sabia exatamente para que servia.


6. Re: Configuração Squid (Ele não esta bloqueando nenhum site) [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 01/04/2013 - 00:31h

growjitsu escreveu:

Olá Buckminster,

Então o arquivo /etc/squid/bloqueados eu criei, e dentro dele esta escrito desta forma abaixo, um dominio por linha.

facebook.com
facebook.com.br
www.facebook.com.br">www.facebook.com.br
www.facebook.com
orkut.com
orkut.com.br
www.orkut.com.br">www.orkut.com.br
www.orkut.com
youtube.com.br
youtube.com
www.youtube.com.br">www.youtube.com.br
www.youtube.com

depois que eu comentei a linha que você me informou o proxy agora bloquei tudo, qualquer site que eu tento navegar ele não deixa, o que sera que pode ser feito quanto a isso.

Aproposito muito obrigado pela dica do -i eu tinha colocado mas ainda não sabia exatamente para que servia.



#Bloqueia acessos de fora da rede local antes de passar pela autenticação
acl redelocal src 192.168.1.0/24
http_access deny redelocal
Comenta a linha acima http_access deny redelocal
Essa linha está bloqueando tudo na rede local


7. Configuração Squid (Ele não esta bloqueando nenhum site)

Carlos Atila dos Santos
growjitsu

(usa Debian)

Enviado em 01/04/2013 - 00:47h

Boa noite Buckminster,

fiz o que vc me pediu mas no entanto continua da mesma forma ele ainda esta bloqueando tudo.


8. Re: Configuração Squid (Ele não esta bloqueando nenhum site) [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 01/04/2013 - 00:54h

growjitsu escreveu:

Boa noite Buckminster,

fiz o que vc me pediu mas no entanto continua da mesma forma ele ainda esta bloqueando tudo.


Substitui a última linha http_access deny all por http_access allow all e testa de novo.
Enquanto vou dando uma olhada em todo teu script.


9. Configuração Squid (Ele não esta bloqueando nenhum site)

Carlos Atila dos Santos
growjitsu

(usa Debian)

Enviado em 01/04/2013 - 01:04h

Buckminster,

Eu substitui a ultima linha como vc me pediu mas ainda continua da mesma forma, bloqueia tudo.

Eu tambem to aqui pesquisando outras formas de resolver mas eu ja não sei mais nem como pesquisar rsrsrs....

Aproposito de qualquer forma agradeço muito a sua ajuda ai valew mesmo.


10. Re: Configuração Squid (Ele não esta bloqueando nenhum site) [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 01/04/2013 - 01:12h

growjitsu escreveu:

Buckminster,

Eu substitui a ultima linha como vc me pediu mas ainda continua da mesma forma, bloqueia tudo.

Eu tambem to aqui pesquisando outras formas de resolver mas eu ja não sei mais nem como pesquisar rsrsrs....

Aproposito de qualquer forma agradeço muito a sua ajuda ai valew mesmo.


Diga-me uma coisa, você tem o squid aí num servidor com iptables?


11. Configuração Squid (Ele não esta bloqueando nenhum site)

Carlos Atila dos Santos
growjitsu

(usa Debian)

Enviado em 01/04/2013 - 01:21h

Sim, tenho ia ate te perguntar se poderia ter alguma coisa a ver.
De qualquer forma segue ele abaixo.


#!/bin/bash
#
# Shell Script - Firewall
# =======================
#
#
#
iniciar(){

#Abre para uma faixa de endereços
iptables -A INPUT -s 192.168.1.0/255.255.255.0 -j ACCEPT

#Aceita tudo na interface de redelocal
iptables -A INPUT -i eth0:1 -j ACCEPT

#Verifica tanto a interface quanto a faixa de endereços de origem
iptables - A INPUT -s 192.168.1.0/255.255.255.0 -i eth0 -j ACCEPT

#Abre uma porta inclusive para internet
#iptables -A INPUT -p tcp --dport 22 -j ACCEPT

#abre um conjunto de portas separadas apenas por uma virugula para que você não precise abrir uma em cada linha.
#iptables -A INPUT -m multiport -p tcp --dport 22,80,443 -j ACCEPT

#Abre uma porta para um IP expecifico da rede
#iptables -A INPUT -p tcp 200.231.14.16 --dport 22 -j ACCEPT

#O comando abaixo abre um intervalo de portas ex: da 6881 ate a 6889
#iptables -A INPUT -p tcp --dport 6881:6889 -j ACCEPT

#Verifica tanto o endereço IP quanto o MAC da maquina antes de autorizar a conexão com o servidor.
#iptables -A INPUT -s 192.168.1.100 -m --mac-source 00:11:D8:76:59:2E -j ACCEPT

#Ignora Pings:
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

#Protege contra IP spoofing
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter

#Descarta pacotes mal formados, protegendo contra ataques mdiversos:
iptables -A INPUT -m state --state INVALID -j DROP

#Abre para inteface de loopback. Esta regra é essencial para que o KDE e outros programas funcionem adequadamente.
iptables -A INPUT -i lo -j ACCEPT

#impede a abertura de novas conexões, efetivamente bloqueando o acesso esterno ao seu servidor, com exceção das portas e faixas de endereços especificados anteriormente.

iptables -A INPUT -p tcp --syn -j ACCEPT
echo "REGRAS DO FIREWALL ATIVADAS"

}

parar(){
iptables -F
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
echo "Regras de firewall desativas"
}

case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar ;;
*) echo "use os parametros start ou stop"
esac



12. Re: Configuração Squid (Ele não esta bloqueando nenhum site) [RESOLVIDO]

Buckminster
Buckminster

(usa Debian)

Enviado em 01/04/2013 - 01:37h

growjitsu escreveu:

Sim, tenho ia ate te perguntar se poderia ter alguma coisa a ver.
De qualquer forma segue ele abaixo.


#!/bin/bash
#
# Shell Script - Firewall
# =======================
#
#
#
iniciar(){

#Abre para uma faixa de endereços
iptables -A INPUT -s 192.168.1.0/255.255.255.0 -j ACCEPT

#Aceita tudo na interface de redelocal
iptables -A INPUT -i eth0:1 -j ACCEPT

#Verifica tanto a interface quanto a faixa de endereços de origem
iptables - A INPUT -s 192.168.1.0/255.255.255.0 -i eth0 -j ACCEPT

#Abre uma porta inclusive para internet
#iptables -A INPUT -p tcp --dport 22 -j ACCEPT

#abre um conjunto de portas separadas apenas por uma virugula para que você não precise abrir uma em cada linha.
#iptables -A INPUT -m multiport -p tcp --dport 22,80,443 -j ACCEPT

#Abre uma porta para um IP expecifico da rede
#iptables -A INPUT -p tcp 200.231.14.16 --dport 22 -j ACCEPT

#O comando abaixo abre um intervalo de portas ex: da 6881 ate a 6889
#iptables -A INPUT -p tcp --dport 6881:6889 -j ACCEPT

#Verifica tanto o endereço IP quanto o MAC da maquina antes de autorizar a conexão com o servidor.
#iptables -A INPUT -s 192.168.1.100 -m --mac-source 00:11:D8:76:59:2E -j ACCEPT

#Ignora Pings:
iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

#Protege contra IP spoofing
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter

#Descarta pacotes mal formados, protegendo contra ataques mdiversos:
iptables -A INPUT -m state --state INVALID -j DROP

#Abre para inteface de loopback. Esta regra é essencial para que o KDE e outros programas funcionem adequadamente.
iptables -A INPUT -i lo -j ACCEPT

#impede a abertura de novas conexões, efetivamente bloqueando o acesso esterno ao seu servidor, com exceção das portas e faixas de endereços especificados anteriormente.

iptables -A INPUT -p tcp --syn -j ACCEPT
echo "REGRAS DO FIREWALL ATIVADAS"

}

parar(){
iptables -F
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
echo "Regras de firewall desativas"
}

case "$1" in
"start") iniciar ;;
"stop") parar ;;
"restart") parar; iniciar ;;
*) echo "use os parametros start ou stop"
esac


Antes de #Abre para inteface de loopback...
Você coloca as seguintes regras:
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128
iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 443 -j REDIRECT --to-port 3128
Isso faz com que o iptables redirecione o tráfego para o squid.
Você tem uma interface eth0:1, isso não é aconselhável. O melhor é colocar duas placas de rede na máquina.
Você tem DHCP instalado nessa máquina também?



01 02



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts