Servidor Squid - Autenticação e níveis de privilégio

Instalação e configuração Squid com autenticação NCSA e níveis de privilégios para usuários.

[ Hits: 99.115 ]

Por: Fayos em 27/09/2007


Exemplo do meu .conf



http_port 3128

visible_hostname FMAL

cache_mem 32 MB

cache_swap_low 90

cache_swap_high 98

maximum_object_size 1048576 KB

minimum_object_size 0 KB

maximum_object_size_in_memory 128 KB

ipcache_size 2048

ipcache_low 90

ipcache_high 98

fqdncache_size 1024

cache_replacement_policy lru

memory_replacement_policy lru

cache_dir ufs /var/squid/cache 10000 16 256

cache_access_log /var/squid/logs/access.log

auth_param basic program /usr/libexec/ncsa_auth/ncsa_auth /etc/squid/passwd

auth_param basic children 5

auth_param basic realm ENTRE COM SEU LOGIN E SENHA.

auth_param basic credentialsttl 2 hours

auth_param basic casesensitive off

acl grpacessorestrito proxy_auth "/etc/squid/grpacessorestrito"

acl grpacessototal proxy_auth "/etc/squid/grpacessototal"

acl grpsuper proxy_auth "/etc/squid/grpsuper"

acl bloqueios_url url_regex "/etc/squid/bloqueios_url"

acl liberados_url url_regex "/etc/squid/liberados_url"

acl blacklistspy url_regex "/etc/squid/blacklistspy"

refresh_pattern ^ftp: 1440 20% 10080

refresh_pattern ^gopher: 1440 0% 1440

refresh_pattern . 0 20% 4320

acl all src 0.0.0.0/0.0.0.0

acl autenticacao proxy_auth REQUIRED

http_access allow grpsuper

http_access deny blacklistspy

http_access allow grpacessototal

http_access deny bloqueios_url

http_access allow grpacessorestrito

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 SSL_ports port 443 563

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 CONNECT method CONNECT

http_access allow manager localhost

http_access deny manager

http_access deny !Safe_ports

http_access deny CONNECT !SSL_ports

http_access allow autenticacao

http_access deny all

http_reply_access allow all

icp_access allow all

Página anterior    

Páginas do artigo
   1. Instalação do Squid
   2. Configuração - Criação de arquivos e usuários
   3. Configuração - Compilar o módulo NCSA
   4. Configuração - O .conf
   5. Configuração - Atribuir usuários a grupos
   6. Finalização
   7. Observações e bibliografia
   8. Exemplo do meu .conf
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Autenticando usuários do Squid em um banco de dados MySQL

Bloqueando Windows Live Messenger com Squid (Debian ou Ubuntu)

Manual traduzido do Squid - Parte 2

Squid balanceado com LVS

Proxy transparente com Squid, com controle de banda e bloqueio por horários

  
Comentários
[1] Comentário enviado por claudio oliveira em 27/09/2007 - 09:21h

Cara este seu artigo foi tudo de bom, me ajudou bastante.
valeu!!!

[2] Comentário enviado por nps em 27/09/2007 - 11:54h

?comentario=Beleza, este seu tutorial,mas como eu faço para ele ficar
transparente e ao mesmo tempo pedindo autenticação?

[3] Comentário enviado por fm.esteves em 27/09/2007 - 12:45h

bom...estou com problemas no meu squid, preciso de ajuda urgente.

quando eu o reinicio ele diz que tá rodando direito mas, no final dá um erro = coud not send signal 15 to precess 1313.

to maluco com isso já.

pelo amor de DEUS alguem me ajude!!!!!!!!!!!

[4] Comentário enviado por faosfbi em 28/09/2007 - 14:22h

Resposta para "NPS", você instala e configura assim como está no Tutorial, agora você vai condicionar todo mundo a passar pelo proxy do seu servidor, se algum engraçadinho remover o proxy a internet não vai funcionar.

Para este fim abra:

/etc/rc.d/rc.local

Dentro de rc.local coloque as seguintes linhas:

sysctl -w net.ipv4.ip_forward=1

modprobe iptable_nat

Salve o arquivo e reinicie o serviço com o comando:

/etc/rc.d/rc.inetd restart

Agora configure nas maquinas de usuário o Proxy com o endereço IP do seu servidor e a porta 3128. Esta configuração é relativa, pois há diversos browsers no mercado, mas não difere muito de um para o outro.

Pronto, agora todos os usuários da sua rede estão condicionados ao seu servidor Proxy, e se alguém tentar remover o Proxy do browser simplesmente a internet deste não irá funcionar.

Temos um outro caso que geralmente é comum, o de precisar de um IP sem Proxy, para este fim abra novamente o arquivo:

/etc/rc.d/rc.local

No final deste arquivo coloque a seguinte linha para cada IP que necessite ser liberado:

iptables -t nat -A POSTROUTING -o eth0 -s 10.28.30.14 -j MASQUERADE

Note que existe na linha a expressão eth0. Se o seu servidor de internet tiver duas placas de rede, eth0 onde sai a internet para as estações e eth1 onde entra a linha WAN, deixe como está, caso contrario se a eth1 é onde sai a internet para as estações, mude na linha para eth1. Outro ponto importante da linha é o IP, note que na linha está um IP qualquer apenas como exemplo, poderá mudar para o IP da sua rede ao qual quer liberar, se o caso for liberar mais de um IP terá que digitar outra linha abaixo semelhante só que com o IP diferente ao qual quer liberar.

[5] Comentário enviado por nps em 29/09/2007 - 20:21h

Obrigado pela resposta, mas na realidade eu precisaria de configurar
com proxy transparente com autenticação, pois sao muitas maquinas
e colocar ip manualmente uma a uma seria muito dificil, e também ainda teria que se configurar nos navegadores para se usar um servidor
proxy.
att.NPS

[6] Comentário enviado por paulonapa em 02/10/2007 - 08:02h

Prezados amigos,desculpem a ignorância mas não entendi como essa configuração faz o squid entender os níveis de acesso. Pelo que vi aqui ele está apenas pedindo autenticação e liberando tudo.

[7] Comentário enviado por minduim em 07/04/2009 - 17:36h

Socorro alguém poderia me ajudar? Estou com um problema com Squid e autenticação de usuários. Alguém poderia me ajudar? http://www.vivaolinux.com.br/topico/Servidores-Linux-para-iniciantes/Problemas-com-autenticacao-de-s...

[8] Comentário enviado por jfernandes em 01/07/2009 - 13:49h

Amigão
Entendi quase tudo, só não entendi como "amarro" o usuário dos grupos às regras de liberação, bloqueios ?
Por exemplo dentro do meu arquivo grpacessorestrito tem 01 usuário, como o squid sabe que esse carinha não pode acessar sites do arquivo bloqueio_url ?
Abraços


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts