Squid (squid.conf)
Squid 3.0.STABLE13 (comentado)
Categoria: Networking
Software: Squid
[ Hits: 45.584 ]
Por: Andrio Prestes Jasper
Depois de muito pesquisar (outros configs e para que serve cada regra/acl/etc), escrevi meu primeiro .conf (comentado). Um Squid transparente adaptado às novas versões, não barra nada (skype, msn, hotmail), controla o cache e ainda vem com algumas melhorias de segurança/velocidade. Ainda estou em busca de melhorá-lo, quem tiver dicas do que pode mudar, acrescentar ou retirar, por favor, diga!
############################## # Copyright © 2009 - Andrio Jasper ## # Todos os direitos reservados. ## # Ao utilizar este aquivo manter os ## # direitos autorais ## ############################ # Opcoes para suportar proxy transparente. #nao esquecer de trocar a faixa de ip pela da sua rede http_port 192.168.70.1:3128 transparent #Está porta é usada para troca de informações entre servidores proxy. #Não use o ICP se você tem um único proxy-pai que você sempre usa. #Para desabilitar, bastacolocar um 0. Padrão: 3130 icp_port 0 #Especifica o número da porta através do qual o Squid irá receber e #enviar requisições HTCP de e para caches vizinhos. Para desabilitar, #colocar 0. O padrão é 4827. htcp_port 0 #Ela é responsável por dizer ao Squid que ele deve buscar os dados diretamente #na origem, sem passar pelos vizinhos na hierarquia. Padrao do squid hierarchy_stoplist cgi-bin ? #Esta ACL diz ao squid para não armazenar em cache o conteúdo dos CGI's, pois #obviamente não é interessante por tratar-se de conteúdo dinâmico acl QUERY urlpath_regex cgi-bin \? no_cache deny QUERY #Quantidade de memoria usada pelo squid cache_mem 256 MB #esvazia o cache cache_swap_low 80 cache_swap_high 85 #tamanho maximo para gravacao no cache squid maximum_object_size 64 MB #tamanho minimo para gravacao no cache squid minimum_object_size 0 KB # Tamanho maximo dos objetos mantidos em memoria. maximum_object_size_in_memory 128 KB ipcache_size 3072 ipcache_low 90 ipcache_high 93 # politica de substituicao dos objetos quando se esgota o espaco destinado ao cache em disco. # lru: mantem os objetos referenciados recentemente. # heap GDSF: otimiza o "hit rate" por manter objetos pequenos e # e populares no cache, guardando assim um numero maior de objetos. # heap LFUDA: otimiza o "byte hit rate" por manter objetos populares # no cache sem levar em conta o tamanho. Se for utilizado este, o # maximum_object_size devera ser aumentado para otimizar o LFUDA. cache_replacement_policy heap LFUDA #define a politica de substituicao dos objetos em memoria #da mesma forma como o cache_replacement_policy memory_replacement_policy heap GDSF #Esta TAG determina onde e como será feito o cache e o tamanho #a cada 1GB (1024), deve separar 15mb de memoria cache_dir ufs /var/spool/squid/cache1 2048 16 64 cache_dir ufs /var/spool/squid/cache2 2048 16 64 cache_dir ufs /var/spool/squid/cache3 2048 16 64 cache_dir ufs /var/spool/squid/cache4 2048 16 64 cache_dir ufs /var/spool/squid/cache5 2048 16 64 # Log de requisicoes. cache_access_log /var/log/squid/access.log # Log do cache. cache_log /var/log/squid/cache.log # Log de objetos guardados. Pode ser desativado. cache_store_log none #Pode ser usada para especificar uma lista de servidores DNS no #lugar no /etc/resolv.confdns_nameservers Endereço_IP #nao esquecer de trocar a faixa de dns pela da sua faixa dns_nameservers 201.10.128.2 dns_nameservers 201.10.120.3 #TAG's referentes ao processo de autenticação. auth_param basic children 5 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 hours auth_param basic casesensitive off #Estas opções são o padrão do Squid e #configuram como serão tratados os tempos de vida dos objetos no cache refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern (cgi-bin|\?) 0 0% 0 refresh_pattern . 0 20% 4320 #O cache pode ser configurado para continuar com o download de requisições abortadas quick_abort_min 0 KB quick_abort_max 0 KB quick_abort_pct 100 #Tempo de vida para requisições falhas. Certos tipos de erros (como #conexão recusada ou página não encontrada) são marcados como #"sem-cache" por um determinado tempo. Padrão de 5 minutos negative_ttl 3 minutes #Tempo de vida para resultados bem sucedidos de resolução DNS. Se você #realmente precisar alterar esse valor, não deixe inferior a 1 minuto. #Padrão de 6 horas. positive_dns_ttl 5 minutes #Alguns clientes podem parar o envio de pacotes TCP enquanto deixam o recebimento em aberto. #Algumas vezes o Squid não consegue diferenciar conexões TCP totalmente fechadas e parcialmente fechadas. #Mudando essa opção para off fará com que o Squid imediatamentefeche a conexão quando a leitura do socket #retornar "sem mais dados para leitura" half_closed_clients off #Estas ACL's fazem parte da configuração padrão do Squid e é o mínimo #recomendável para seu uso não sendo necessária nenhuma alteração nas mesmas 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 BADPORTS port 7 9 11 19 22 23 25 53 110 119 513 514 3128 8080 acl SSL_ports port 443 563 acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 563 # 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 CONNECT method CONNECT # ---- Cache do Windows Update ---- refresh_pattern au.download.windowsupdate.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims refresh_pattern download.microsoft.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims refresh_pattern msgruser.dlservice.microsoft.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims refresh_pattern windowsupdate.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims refresh_pattern www.microsoft.com/.*\.(cab|exe|msi) 10080 100% 43200 reload-into-ims ##nao esquecer de trocar a faixa de ip pela da sua rede acl rede src 192.168.70.0/255.255.255.0 http_access allow localhost http_access allow rede #Definição de regras de acesso referentes as ACL's da parte da configuração #padrão do Squid, também não é necessária nenhuma alteração, portanto apenas #acrescente as suas próprias regras a estas; http_access allow manager localhost http_access deny manager http_access deny !Safe_ports http_access deny BADPORTS http_access deny CONNECT !SSL_ports #Esta regra de acesso é recomendada para uso como última regra da lista define #o acesso ao proxy. Ela diz ao Squid que se nenhuma das regras anteriores for #aplicada o acesso será então negado http_access deny all #Permite o acesso a porta icp de acordo com a configuração feita na ACL all #que no nosso caso representa qualquer origem. Está porta é usada para troca #de informações entre servidores proxy. #Não use o ICP se você tem um único proxy-pai que você sempre usa. #icp_access allow rede # Usuario sob o qual ira rodar o Squid. cache_effective_user squid # Grupo sob o qual ira rodar o Squid. cache_effective_group squid #Mostra o nome do servidor configurado nas mensagens de erro visible_hostname andrio.jasper@lgmtecnologia.com.br #Desligando essa variavel, faz com que o squid descarregue a memoria nao #utilizada, chamando uma funcao interna free() do squid, ao inves de ficar #com ela para futuras operaçoes. memory_pools off #Por padrão o Squid irá incluir o ip ou nome da sua máquina nas solicitações HTTP. #Ele irá saber o ip da sua máquina interna como também saber qual classe ip você usa internamente. #Para o site visitado não interessa para ele qual seu ip interno, o importante é que você visitou o site. forwarded_for off #Apresenta as mensagens de erro em Portugues error_directory /usr/share/squid/errors/Portuguese #Por padrão o Squid já possui essa configuração como ativa. Ela serve para não colocar no log os #parâmetros que são passados junto ao endereço acessado pelo usuário. Assim garante a privacidade. #As vezes quando se usa filtro por palavras e um site apresenta acesso negado é interessante setar #essa opção como off para verificar no log o endereço completo. strip_query_terms off #Local para gravar os arquivos core em caso de falhas do squid (/var/spool/squid) # ou Evitar que sejam feitos coredumps (none). coredump_dir none # Resolve um problema com conexões persistentes que ocorre com certos servidores, # e que provoca delays em nosso cache. detect_broken_pconn on # Provoca um ganho de performance ao usar conexões Pipeline (requisições em paralelo) #o Squid irá trabalhar com 2 requisições paralelamente pipeline_prefetch on
Vou voltar moderar conteúdos de Dicas e Artigos (0)
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Instalação Uefi com o instalador clássico do Mageia (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta