Squid (squid.conf)

Configuração do meu servidor Squid em produção

Categoria: Segurança

Software: Squid

[ Hits: 10.826 ]

Por: Samuel Souza Almeida


Arquivo de configuração para o servidor de proxy Squid que tenho em produção.


# Configuracao do Squid #

#transparent para a versao 2.5
#httpd_accel_host virtual
#httpd_accel_port 80
#httpd_accel_with_proxy on
#httpd_accel_uses_host_header on

http_port 3128 transparent

hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

# Diretivas de Cache:
cache_dir ufs /var/spool/squid 128 16 256 
cache_access_log /var/log/squid/access.log
cache_log /var/log/squid/cache.log
cache_store_log /var/log/squid/store.log
# Autenticacao do Squid:
##auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/passwd
##auth_param basic children 5
##auth_param basic realm Sanol: Usuario e Senha da REDE.
##authenticate_ttl 1 hour
refresh_pattern ^ftp:      1440   20%   10080
refresh_pattern ^gopher:   1440   0%   1440
refresh_pattern .      0   20%   4320

# ACL autenticacao:
##acl senha proxy_auth REQUIRED

# ACL proibidissimos - todos os sites setados nessa acl sao bloqueados a todos.
acl proibidissimos dstdomain "/etc/squid/listanegra/proibidissimos"

# ACL IP-Horario  - os ips com acesso a internet de segunda a sexta-feira das 08:00 as 17:15 hs.
acl ipshora src "/etc/squid/listanegra/ipshora"

# ACL hora
acl hora time MTWHF 08:00-17:15

# ACL LISTA BRANCA - sites liberados para os ips bloquados.
acl lista_branca dstdomain "/etc/squid/listanegra/lista_branca"

# ACL Bloqueio por IP - ips bloquados, sem acesso a internet.(exceto os sites da lista branca).
acl ipsbloqueados src "/etc/squid/listanegra/ipsbloqueados"

# ACL Acesso Full - ips com acesso total, menos os sites setados na acl proibidissimos.
acl acesso_full src "/etc/squid/listanegra/acesso_full"

# ACL's minha rede: - rede interna.
acl minharede src 129.20.0.0/255.255.255.0

# ACL Sites Liberados - sites que nao deveriam ser bloqueados mas que coicidem com algumas regras de bloqueio.
acl liberados dstdomain "/etc/squid/listanegra/liberados"

# ACL Palavras Liberadas - palavras que nao deveriam ser bloqueadas mas que coicidem com algumas regras de bloqueio.
acl palavraslib url_regex -i "/etc/squid/listanegra/palavraslib"

# ACL Palavras Bloqueadas - palavras bloqueadas, menos para ips com acesso total.
acl palavraquente url_regex -i "/etc/squid/listanegra/palavraquente"

# ACL Extensoes - extensoes bloqueadas para download.
acl extensoes url_regex -i "/etc/squid/listanegra/extensoes"

# ACL controle de banda em 3 niveis:(1- banda total | 2- 1/2 da banda | 3- 1/3 da banda.

# ACL ips
acl ipsliberados src "/etc/squid/listanegra/ipsliberados"
acl ipslimitados src "/etc/squid/listanegra/ipslimitados"
acl ipslimitadissimos src "/etc/squid/listanegra/ipslimitadissimos"

delay_pools 3

delay_class 1 1
delay_parameters 1 -1/-1 -1/-1
delay_access 1 allow ipsliberados

delay_class 2 1
delay_parameters 2 60000/60000 50000/50000
delay_access 2 allow ipslimitados

delay_class 3 1
delay_parameters 3 30000/30000 30000/30000
delay_access 3 allow ipslimitadissimos

#
# ACL tratamento a partir de uma url ou endereco IP:
acl urlquente dstdomain "/etc/squid/listanegra/urlquente"

# ACL - Bloqueio de sites [*****]:
acl urlporno dstdomain "/etc/squid/listanegra/urlporno"

# ACL Bloqueio de webmails:
acl webmails dstdomain "/etc/squid/listanegra/webmails"

# ACL's gerais do Squid 
#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 SSL_ports port 443 444 447 563 7443 10000 # https, snews
acl Safe_ports port 80 # 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 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 901 # SWAT
acl purge method PURGE
acl CONNECT method CONNECT

# HTTP_ACCESS
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 deny proibidissimos
http_access allow ipshora hora
http_access allow ipsbloqueados lista_branca
http_access deny ipsbloqueados
http_access allow acesso_full
http_access allow liberados
http_access allow palavraslib
http_access deny  palavraquente
http_access deny extensoes
http_access deny urlquente
http_access deny urlporno
http_access deny webmails
http_access allow localhost
http_access allow minharede
http_access deny all

cache_mgr webmaster postmaster@hostname
# HostName
visible_hostname firewall-stux
# Nao fazer cache de Paginas seguras
no_cache deny SSL_ports
  


Comentários
[1] Comentário enviado por claudiotecnico em 17/12/2009 - 09:33h

Olá amigo.

Obrigado por compartilhar sua experiência conosco.

Aqui na escola em que trabalho utilizo o Squid sem regras, e para o controle de acesso utilizo o DansGuardian.

Abraços,

Claudio


Contribuir com comentário

  



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts