Squid autenticando em Windows 2003 com msnt_auth

Configurando o msnt_auth

Primeiramente iremos configurar o msnt_auth, que é responsável pela autenticação dos usuários no Windows 2003.

No diretório do Squid (/etc/squid/) temos o arquivo msntauth.conf, onde devemos inserir os nomes dos servidores 2003 e o nome do domínio.

Suponhamos que meus servidores estejam configurados da seguinte maneira:

  • PDC = srv01 > 192.168.0.1
  • BDC = srv02 > 192.168.0.2
  • domínio = meudominio

Deixe o conteúdo do msnauth.conf da forma como esta no exemplo abaixo, apenas alterando as informações dos servidores.

OBS: Caso você tenha apenas 1 controlador de domínio, informe o mesmo nome no BDC.

#################################################### # Sample MSNT authenticator configuration file # Antonino Iannella, Stellar-X Pty Ltd # Sun Sep 2 15:52:31 CST 2001 # NT hosts to use. Best to put their IP addresses in /etc/hosts.
server my_PDC           my_BDC          my_NTdomain
server srv01 srv02 meudominio

# Denied and allowed users. Comment these if not needed. #denyusers /usr/local/squid/etc/msntauth.denyusers #allowusers /usr/local/squid/etc/msntauth.allowusers ###################################################
Após configurado o arquivo, coloque em /etc/hosts o nome e o ip dos servidores da seguinte forma:
# Do not remove the following line, or various programs # that require network functionality will fail.
127.0.0.1       firewall localhost.localdomain localhost
192.168.0.1     srv01
192.168.0.2     srv02
Configuração do Squid

Agora devemos editar o arquivo squid.conf. Devemos inserir as seguintes linhas:
auth_param basic program /usr/lib/squid/msnt_auth
auth_param basic children 5
auth_param basic realm Proxy Cache Teste
A última linha pode ser alterada de acordo com sua preferência, pois é a mensagem que o mesmo mostrará na tela onde deverá ser informado usuário e senha.

Após criaremos 2 arquivos no diretório do Squid, “usuarios”, onde colocaremos os usuários que terão o acesso e no “usuarios-total” os usuários que não passaram por nenhuma restrição do proxy.

Criando as acl’s de acesso no squid.conf:

#usuarios-total
acl user-total proxy_auth “/etc/squid/usuarios-total”

#usuarios
acl users proxy_auth “/etc/squid/usuarios”

Não devemos esquecer de criar a ACL de autenticação:
acl autenticar proxy_auth REQUIRED
Após isso é só criar as acl’s de bloqueio normalmente e liberar a autenticação dos usuários como exemplo abaixo:
http_access allow autenticar user-total
bloqueia o que for preciso
http_access allow autenticar user
http_access deny all
Exemplo de squid.conf

Estou disponibilizando aqui meu squid.conf com alguns bloqueios por site, palavras, extensões e msn.
http_port 3128
visible_hostname squid
acl QUERY urlpath_regex cgi-bin \?

cache_dir ufs /var/spool/squid 2048 16 256
cache_mem 32 MB

auth_param basic program /usr/lib/squid/msnt_auth
auth_param basic children 5
auth_param basic realm Proxy Cache Teste
#auth_param basic credentialsttl 10 hours

#ACL PADRAO

acl all src 0.0.0.0/0.0.0.0
acl autenticar proxy_auth REQUIRED
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

#ACLS RISOTO

#ACL liberados

acl liberados url_regex “/etc/squid/control/liberados”

#ACL acesso TI

acl ti-usuarios proxy_auth “/etc/squid/control/ti/usuarios”

#ACL acesso DIRETORIA

acl diretoria src “/etc/squid/control/diretoria/usuarios”

#ACL acesso Usuarios

acl usuarios proxy_auth “/etc/squid/control/usuarios/usuarios”
acl usuarios-msn proxy_auth “/etc/squid/control/usuarios/usuarios-msn”
acl proibidos_usuarios url_regex “/etc/squid/control/usuarios/proibidos”
acl palavras_usuarios url_regex -i “/etc/squid/control/usuarios/palavras”
acl arquivos_usuarios urlpath_regex -i “/etc/squid/control/usuarios/arquivos”

#ACL acesso Gerencia

acl gerencia proxy_auth “/etc/squid/control/gerencia/usuarios”
acl proibidos_gerencia url_regex “/etc/squid/control/gerencia/proibidos”
acl palavras_gerencia url_regex -i “/etc/squid/control/gerencia/palavras”
acl arquivos_gerencia urlpath_regex -i “/etc/squid/control/gerencia/arquivos”

no_cache deny QUERY

#sem msn
acl bqmsn dstdomain passport.com
acl msnmessenger url_regex -i gateway.dll
acl msn req_mime_type -i ^application/x-msn-messenger$

#LIBERA/BLOQUEIA ACESSO A NET

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSl_ports
http_access allow localhost

http_access allow liberados
http_access allow diretoria
http_access allow autenticar ti-usuarios
http_access deny proibidos_gerencia
http_access deny palavras_gerencia
http_access deny arquivos_gerencia
http_access allow autenticar gerencia

http_access deny proibidos_usuarios
http_access deny palavras_usuarios
http_access deny arquivos_usuarios

http_access allow autenticar usuarios-msn

http_access deny bqmsn
http_access deny msnmessenger
http_access deny msn

http_access allow autenticar usuarios
http_access deny all

Rolar para cima