Você está na página 1de 7

14/08/12

SQUID + AUTENTICAÇÃO NCSA_AUTH « Tecnologia e Diversão em um só lugar …

Tecnologia e Diversão em um só lugar …

25/08/2009

SQUID + AUTENTICAÇÃO NCSA_AUTH

Filed under:Linux­ Server e Desktop — Tags:.CONF SQUID, AUTENTICAÇÃO SQUID, NCSASQUID, NCSA_AUTH, SQUID, SQUIDCOM AUTENTICAÇÃO, SQUID.CONF, USUÁRIO ESENHASQUID— rnobrega @ 14:13 Cenário:Servidor LinuxDebian5 (Firewall+ Proxyc/ cache)

Depois de muito tempo seminstalar o SQUID+ NCSA_AUTH, hoje preciseifazer as presas uma instalação para utilização de umnovo link comumnovo servidor.

Começeiinstalando o ótimo S.O Debian5 e configurando as interfaces de rede comos devidos endereços IP (não vouentrar emdetalhes desse processo neste post).

Depois de terminada a parte mais “simples”, começeia instação dos programas necessários para colocar o servidor “no ar”, primeiro verifiqueitodas as atualizações disponíveis dos repositórios que uso, atualizeitodos os programas e partipara o meumaior problema, configurar o SQUID+ IPTABLES + NCSA_AUTH.

Abaixo está umarquivo squid.confcomentado e ja comautenticação ncsa_auth, alguns arquivos foramcriados para o controle de acesso a determinados sites oubloqueio por palavra, é possívelcriar esses arquivos embrando, dentro do diretório /etc/squid e acrescentar as informações conforme sua necessidade.

#etc/squid/squid.conf

# Este é o principal arquivo de configuração do Squid.

# Esta versão incluída no Kurumininclui apenas as opções mais usadas,

# comentadas de forma a facilitara configuração.

#Se quiservero arquivo original incluído no pacote, leia o arquivo /etc/squid.conf.debian

# Comentários porCarlos E. Morimoto

visible_hostname XXX(ALTERAR O NOMEXXXPARAO NOMEDO SEUSERVIDOR)

# Porta:

# Esta é a porta tcponde o squidficará ativo. O padrão é a porta 3128

http_port (ipdo servidor):8080 (pode colocarapenas o numero da porta ou ip:porta http_port 127.0.0.1:8080 (utilizara mesma porta)

hierarchy_stoplist cgi­bin? acl QUERYurlpath_regex cgi­bin\? no_cache deny QUERY

14/08/12

SQUID + AUTENTICAÇÃO NCSA_AUTH « Tecnologia e Diversão em um só lugar …

# >> Configuração do cache de páginas e arquivos <<

# O squidarmazena as páginas e arquivos já acessados, para agilizaro acesso.

# Ao ativaro proxy transparente no ícone mágico, o cache passara

# armazenartambémtodos os downloads feitos pelos clientes, via

# http, ftpe tambématravés do apt­get, que tambémusa http.

# >> Quantidade de memória RAM dedicada ao cache <<

# Se estiverusando umservidorcommuita RAM, você pode aumentarisso

# para até mais oumenos umterço da memória RAM total.

cache_mem512 MB

#LOCALPADRAO PARAPAGINAS DEERROS EETC error_directory /usr/share/squid/errors/Portuguese (mensagens de erro emPortugues)

#direcionando todos que se enquadremna ACLproibidos e Bloqueados para uma pagina especifica deny_info BLOQUEADAproibidos (página personalizada de erro, criada dentro do caminho /usr/share/squid/errors/Portuguese)

# O tamanho máximo dos arquivos que serão guardados no cache feito

# na memória RAM. O resto vai para o cache feito no HD.

# O cache na memória é muito mais rápido, mas como a quantidade de

# RAM é muito limitada, melhordeixa­la disponível para páginas web,

# figuras e arquivos pequenos emgeral.

maximum_object_size_in_memory 256 KB

# >> Tamanho máximo e mínimo para arquivos seremarmazenados no cache <<

# pordefault, o máximo são downloads de 16 MB e o mínimo é zero, o que

# fazcomque mesmo imagens e arquivos pequenos sejamarmazenados

# no cache. Sempre é mais rápido lera partirdo cache do que baixarde novo da web.

# Se você fazdownloadde arquivos grandes e deseja que eles fiquem

# armazenados no cache, aumente o valorda opção maximum_object_size

# Isto é especialmente útil para quemprecisa baixarmuitos arquivos

# através do apt­get ouWindows update emmuitos micros da rede.

maximum_object_size 128 MB minimum_object_size 0 KB

# Percentagemde uso do cache que fará o squidcomeçara descartaros

# arquivos mais antigos. Porpadrão isso começa a acontecerquando o cache está 90% cheio.

cache_swap_low80

cache_swap_high90

# >> Cache emdisco <<

# Esta opção é composta porquatro valores. O primeiro, (/var/spool/squid)

# Indica a pasta onde o squidarmazena os arquivos do cache. Você pode

# quereralterarpara uma pasta emuma partição separada porexemplo.

# O “512″ indica a quantidade de espaço no HD (emMB) que será usada para

# o cache. Aumente o valorse você temmuito espaço no HD do servidore

# querque o squidguarde os downloads pormuito tempo.

# Finalmente, os números 16 256 indicama quantidade de subpastas que

# serão criadas dentro do diretório. Porpadrão temos 16 pastas com256 subpastas cada uma.

14/08/12

SQUID + AUTENTICAÇÃO NCSA_AUTH « Tecnologia e Diversão em um só lugar …

#cache_dirufs /var/spool/squid512 16 256 cache_dirufs /var/spool/squid1536 16 256

# Arquivo onde são guardados os logs de acesso do Squid.

cache_access_log /var/log/squid/access.log

# O e­mail que o Squidenvia como senha ao acessarumservidor

# FTPanonimo:

ftp_userids­proxy@empresa11.com.br

# >> Padrão de atualização do cache <<

# Estas três linhas precisamsempre serusadas emconjunto. Ouseja,

# você podde alterá­las, mas sempre as três precisamestarpresentes

# no arquivo. Eliminando um, o squidignora as outras duas e usa o default.

# Os números indicamo tempo (emminutos) quando o squidirá verificar

# se umítemdo cache (uma página porexemplo) foi atualizado, para cada umdos três protocolos.

# O primeiro número (o 15) indica que o squidverificará se todas as

# páginas e arquivos commais de 15 minutos foramatualizados. Ele

# só verifica checando o tamanho do arquivo, o que é rápido. Se o

# arquivo não mudou, então ele continua mandando o que não está no cache para o cliente.

# O terceiro número (o 2280, equivalente a dois dias) indica o tempo

# máximo, depois disso o objeto é sempre verificado.

refresh_pattern^ftp: 15 20% 2280 refresh_pattern^gopher: 15 0% 2280 refresh_pattern. 15 20% 4320

# >> Controle de acesso <<

# Aqui vai vão as regras de quemacessa ounão o proxy. Pordefault

# o proxy vemconfigurado de uma forma liberal, para facilitaro uso.

# Érecomendável que você ative o firewall do Kurumine o configure

# para permitirapenas acessos a partirda rede local.

acl all src 0.0.0.0/0.0.0.0 acl managerproto cache_object acl localhost src 127.0.0.1/255.255.255.255 acl SSL_ports port 443 563 23000 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 # unregisteredports 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 23000 # SISCOMEX– WEB acl safe_ports port 8999 #SERPRO acl purge methodPURGE acl CONNECTmethodCONNECT

14/08/12

SQUID + AUTENTICAÇÃO NCSA_AUTH « Tecnologia e Diversão em um só lugar …

http_access allowmanagerlocalhost http_access deny manager http_access allowpurge localhost http_access deny purge http_access deny !Safe_ports http_access deny CONNECT!SSL_ports http_access allowlocalhost

auth_parambasic children5 auth_parambasic realmPROXY­NETUNO: SEUACESSO ESTASENDO MONITORADO. auth_parambasic credentialsttl 2 hours auth_parambasic program/usr/lib/squid/ncsa_auth/etc/squid/squid_passwd(nesta linha, está sendo habilitada a autenticação no modo ncsa_authe apontanto qual será o caminho do arquivo de senhas dos usuários do squid) acl autenticados proxy_authREQUIRED (colocando como autenticação requerida, para solicitarusuário e senha para liberaro acesso a internet)

#############################LIBERACAO PARAADMINS POR USUARIO################### FUNCIONANDO acl admproxy_auth“/etc/squid/admins” (arquivo criado para cadastraros usuários administrador, esses usuários não temcontrole de acesso, qualquersite está liberado) http_access allowadm

#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ACESSO AS PAGINAS DEJOGOS SOMENTENO HORÁRIO DEALMOÇO #acl url_lazerurl_regex ­i “/etc/squid/url_lazer” #acl hora time 11:20­13:00 #http_access allowurl_lazerhora #http_access deny url_lazer

############################ACESSO SOMENTEAOS SITES LIBERADOS PARAALGUNS USUARIOS########### acl acesso_bloqueado proxy_auth“/etc/squid/usr_bloqueado” (usuários apenas comacesso a alguns sites, ex. bancos e e­mail da empresa) acl url_liberado url_regex ­i “/etc/squid/url_liberado” (aqui serão determinados os endereços das url´s que os usuários acima terão acesso)

http_access allowurl_liberado http_access deny acesso_bloqueado !url_liberado http_access allowacesso_bloqueado ####### ##AREADETESTE acl ip_serpro dst 161.148.40.200 http_access allowip_serpro acl ip_serpro1 dst 200.198.230.15 http_access allowip_serpro1 acl ip_serpro2 dst 200.198.230.30 http_access allowip_serpro2 acl ip_serpro3 dst 200.198.194.27 http_access allowip_serpro3

#————————————————————————————————————­

#————————————————————————————————————­

14/08/12

SQUID + AUTENTICAÇÃO NCSA_AUTH « Tecnologia e Diversão em um só lugar …

http_access deny CONNECT!SSL_ports #acl para bloqueardownloads de extencoes perigosas #acl list urlpath_regex ­i “/etc/squid/lista” #http_access deny list

#————————————————————————————————————­

#————————————————————————————————————­

#################Aacl “proibidos” é usada para fazerbloqueio de sites (baseado no domínio)##

acl bloqueados url_regex ­i “/etc/squid/bloqueados” (colocarneste arquivo os dominios que serão bloqueados para acesso) http_access deny bloqueados

# Aacl “proibidos” é usada para fazerbloqueio baseado emdominios

acl proibidos dstdom_regex “/etc/squid/proibidos” (colocaras palavras não serão aceitas no endereço da url) http_access deny proibidos ####################################################################

# >> Bloqueio combase no horário <<

# Esta regra fazcomque o proxy recuse conexões feitas dentro de determinados

# horários. Você pode combinarvárias das regras abaixo para bloqueartodos

# os horários emque você não querque o proxy seja usado:

#acl madrugada time 00:00­06:00 #http_access deny madrugada

#acl manha time 06:00­12:00 #http_access deny manha

#acl almoco time 12:00­14:00 #http_access deny almoco

#acl tarde time 14:00­19:00 #http_access deny tarde

#acl noite time 19:00­24:00 #http_access deny noite

#####################################################################

# >> Proxy comautenticação <<

# Se você querhabilitaro uso de logine senha para acessaratravés

# do proxy, siga os seguintes pasos:

# 1­ Instale o pacote apache­utils (apt­get install apache­utils)

# 2­ Crie o arquivo que será usado: touch/etc/squid/squid_passwd

# 3­ Cadastre os logins usando o comando:

# htpasswd/etc/squid/squid_passwdkurumin(onde o “kurumin” é o usuário que está sendo adicionado).

# Depois de terminarde cadastraros usuários, descomente as três linhas

# abaixo e reinicie o squidcomo comando “service squidrestart”.

# Quando os usuários tentaremacessarserá aberto uma tela pedindo login.

#LIBERANDO ACESSO APOS AUTENTICACAO http_access allowautenticados (se o usuário forautenticado e a página solicitada não entrarnas regras acima, aqui será feita a liberação do acesso)

14/08/12

SQUID + AUTENTICAÇÃO NCSA_AUTH « Tecnologia e Diversão em um só lugar …

# >> Controle de acesso <<

# Aqui você pode ativara configuração do Squidque o deixará explicitamente

# disponível apenas para a faixa de endereços da sua rede local, recusando

# acessos provenientes de outras redes, mesmo que o firewall esteja desabilitado.

# Configure a linha abaixo coma faixa de endereços IPe a máscara de

# sub­rede (o 24 equivale à mascara 255.255.255.0) da sua rede local e deixe

# tambéma linha http_access deny all (mais abaixo) descomentada.

acl redelocal src (ipda rede local)/24 http_access allowredelocal

# Ao ativarqualqueruma das regras de controle de acesso, você deve

# descomentartampéma linha abaixo, que vai recusaras conexões que

# não sejamaceitas nas regras acima. Ao alterara configuração, comente ouapague

# a linha “http_access allowall”, que permite que todo mundo utilize o proxy.

http_access deny all (caso não encontre nenhuma regra válida, bloqueia o acesso) #http_access allowall

# >> Proxy Transparente <<

# As linhas abaixo, combinadas comuma regra de firewall adicionada pela opção

# no ícone mágico fazemo squidse comportarcomo umproxy transparente.

# Leia o capítulo 6 do livro do Kuruminpara mais detalhes.

#httpd_accel_host virtual #httpd_accel_port 80 #httpd_accel_with_proxy on #httpd_accel_uses_host_headeron

# Para habilitaro proxy transparente, você deve descomentaras 4 linhas acima e

# adicionara regra do firewall que redireciona o tráfego da porta 80 do servidor

# para a porta 3128 do squid.

# Isto é feito colocando os seguintes comandos no arquivo /etc/rc.d/rc.local:

#substitua o $placalocal pela placa da rede local, ex eth0 #substitua o $placainternet pela placa ligada na internet, ex eth1 ouppp0

# modprobe iptable_nat

#echo 1 > /proc/sys/net/ipv4/ip_forward# iptables ­t nat ­APREROUTING ­i $placalocal ­ptcp–dport 80 ­ jREDIRECT–to­port $porta # iptables ­t nat ­APOSTROUTING ­o $placainternet ­jMASQUERADE

Para o funcionamento perfeito do arquivo .conf, é necessário tirartodos os comentários colocados em vermelho no texto do .conf

Não pode esquecerde liberarno IPTABLES a porta para entrada dos pacotes vindos da rede interna, nesse caso a porta é 8080, mas fica a seucritério a alteração.

Qualquer dúvida/sugestão, deixar umcometário:

Comentários (1)

1 Comentário »

14/08/12

SQUID + AUTENTICAÇÃO NCSA_AUTH « Tecnologia e Diversão em um só lugar …

1. Cara muito bomme ajudoumuito, viesse seuartigo la no site http://www.prefirolinux.com.br que vc comentou, obrigado!

Arnaldo

Comentário por arnaldo — 01/03/2011 @ 13:40

Responder

Feed RSS (ReallySimple Syndication) para comentários sobre este post. URI (UniformResource Identifier) de trackback

Tema:Silver is the NewBlack. Blogno WordPress.com.