Squid autenticando no win2008R2

1. Squid autenticando no win2008R2

Andre chagas ramos
andre_ramos

(usa openSUSE)

Enviado em 01/08/2011 - 11:52h

Bom Dia Galera blz?

Estou configurando meu primeiro squid autenticado, mas ao abrir a internet no usuário ele pedi usuário e senha, coloco mas volta para a tela pedindo senha. oque pode ser?

# Minha estrutura e a seguinte:

Windows 2008 R2 Configurado o AD.
openSUSE 11.3 configurado o Squid e também coloquei a maquina no dominio do 2008 R2.

# Objetivo:

Configurar o Squid para autenticar com os usuários do AD.

# Script do squid.conf

#Servidores DNS
dns_nameservers 192.168.0.201

#CONFIGURAÇÕES GERAIS
http_port 3128
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
minimum_object_size 0 KB
maximum_object_size 4096 KB
cache_swap_low 90
cache_swap_high 95
fqdncache_size 1024
log_fqdn off
cache_replacement_policy lru
memory_replacement_policy lru
cache_dir ufs /var/cache/squid 100 16 256
cache_access_log /var/log/squid/access.log
cache_store_log /var/log/squid/store.log
logfile_rotate 9

#AUTENTICAÇÃO DO DOMINIO
#Atenção! A linha de autenticação começa aqui
auth_param basic program /usr/sbin/squid_ldap_auth -R -b "dc=server,dc=toctao" -D "cn=Proxy_User,cn=Internet,dc=server,dc=toctao" -w "123456" -f sAMAccountName=%s -h 192.168.0.201:389
#Atenção! Aqui termina a linha de autenticação

auth_param basic realm ATENCAO! Este acesso sera registrado. Digite seu usuario e senha.
auth_param basic children 5
auth_param basic casesensitive off
auth_param basic credentialsttl 1 minutes
emulate_httpd_log off
mime_table /etc/squid/mime.conf
pid_filename /var/run/squid.pid
ftp_passive on
unlinkd_program /usr/sbin/unlinkd

#ACLS EXTERNA PARA AUTENTICACAO NAS BASES LDAP DO PDC
#Atenção! A linha de verificação dos grupos começa aqui.
external_acl_type ldap_group %LOGIN /usr/sbin/squid_ldap_group -R -b "dc=server,dc=toctao" -D "cn=Proxy_User,cn=Internet,dc=server,dc=toctao" -w "123456" -f "(&(objectclass=person) (sAMAccountName=%v)(memberof=cn=%a,ou=UsuLocais,dc=server,dc=toctao))" -h 192.168.0.201
#Atenção! A linha de verificação dos grupos termina aqui.

#ACLS
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl localnet src 192.168.0.0/24 # que vem da rede local
acl to_localnet dst 192.168.0.0/24 #que vão para a rede local
acl SSL_ports port 443
acl Safe_ports port 21 22 70 80 210 289 443 488 591 777 1025-65535

acl CONNECT method CONNECT

acl liberados url_regex -i unimedmedianeira hilum hospitalpadretezza
acl DomBloq dstdomain -i .xpto.com.br
acl DomLibe dstdomain -i.vivaolinux.com.br
acl ExtBloq url_regex -i .mp3$ .zip$
acl ldapAcessoRestrito external ldap_group SquidAcessoRestrito
acl SolicitarAutenticacao proxy_auth REQUIRED

#CONTROLES DE ACESSO HTTP

#Libera acessos a alguns sites sem autenticação para todos
http_access allow liberados

#Solicita autenticação. Se não autenticar, bloqueia conexão.
http_access deny !SolicitarAutenticacao

#Libera acesso a sites ou serviços http na rede interna
http_access allow to_localnet

#Bloqueia acesso aos usuários registrados no grupo SquidAcessoRestrito do Active Directory
http_access deny ldapAcessoRestrito
http_access allow DomLibe
http_access deny DomBloq
http_access deny ExtBloq
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 all
cache_effective_user nobody
cache_effective_group nobody
visible_hostname proxy_openSUSE113
unique_hostname proxy_openSUSE113

#CONTROLES DE ACESSO ICP
icp_access allow localnet
icp_access allow all

#CONTROLES DE ACESSO HTCP
htcp_access allow localnet
htcp_access deny all

#GRAVAÇÃO DE LOGS
cache_log /var/log/squid/cache.log

#REFRESHS
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320

icp_port 3130

#CONFIGURAÇÕES DE CACHE
cache_mem 64 MB
maximum_object_size_in_memory 32 KB
cache_mgr webmaster@hospitalpadretezza.com.br
mail_program mail

#OUTRAS CONFIGURAÇÕES
coredump_dir /var/cache/squid
connect_timeout 1 minutes
client_lifetime 5 minutes #days
icon_directory /usr/share/squid/icons
error_directory /usr/share/squid/errors/Portuguese


# Configuração do AD
Criei uma unidade organizacional com nome Internet > dentro dessa unidade criei o grupo chamado "SquidAcessoRestrito" e coloquei como membro desse grupo os usuários
Criei também o usuário chamado "Proxy_User" com a senha "123456"
Meu dominio: server.toctao


  


2. Re: Squid autenticando no win2008R2

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 01/08/2011 - 12:59h

O q pode tá acontecendo é d o seu proxy não estar no domínio e/ou, por algum motivo, não consegue fazer a verificação dos usuários contidos no AD. Reveja esses passos ae.


3. Re: Squid autenticando no win2008R2

Andre chagas ramos
andre_ramos

(usa openSUSE)

Enviado em 01/08/2011 - 14:27h

Renato,

De acordo minha estrutura dentro do AD, minha regra de autenticação esta correta? Pois estou achando que deve ser alguma coisa na minha regra de autenticação.

Pois como disse eu criei uma unidade organizacional e coloquei o grupo e o usuario do proxy la dentro e não sei se descrevi corretamente na regra, vc pode analizar para ver se esta correto?


4. Re: Squid autenticando no win2008R2

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 01/08/2011 - 14:49h

Não sei t dizer, mas vc pode fazer o teste. Execute o comando abaixo:

/usr/sbin/squid_ldap_auth -R -b "dc=server,dc=toctao" -D "cn=Proxy_User,cn=Internet,dc=server,dc=toctao" -w "123456" -f sAMAccountName=%s -h 192.168.0.201:389

Ele vai ficar esperando um comando. Digite o usuário, aperte <ENTER> e digite a senha do usuário. Se ele der o +OK, é pq ele conseguiu consultar a base e t passar a resposta, caso contrário (+ERR), vc deve rever se o proxy tá no domínio (winbind + samba).


5. Re: Squid autenticando no win2008R2

Andre chagas ramos
andre_ramos

(usa openSUSE)

Enviado em 01/08/2011 - 17:19h

Renato pelo comando que me passou nao consegui nada, mas estava verificando de acordo com o meu AD os caminhos, e descobri que estava cn=internet e na verdade e ou=Internet

agora consegui autenticar com os usuarios para liberar a internet, mas não esta bloqueando ainda os sites bloqueados

esta faltando somente as regras de bloqueios

alguem tem alguma sugestão de como fica as regras

preciso criar 3 grupos

1) ter acesso o youtube
2) bloquear todos os sites nao permitidos
3) liberar todos os sites

estou pedindo ajuda e pq nunca configurei um squid autenticado e não sei se muda alguma coisa.

abraços!


6. Re: Squid autenticando no win2008R2

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 01/08/2011 - 17:37h

preciso criar 3 grupos

1) ter acesso o youtube
2) bloquear todos os sites nao permitidos
3) liberar todos os sites

Crie os grupos d usuários (ex.: financeiro, diretoria, atendente) no seu AD. A partir disto, vc consegue já fazer o bloqueio. Segue a relação abaixo da solicitação:

1) Se vai liberar tudo, pra q explicitar a liberação do youtube?

2) Seguem as regras:

acl sitesproibidos url_regex -i "/etc/squid/sitesproibidos.txt"
http_access deny sitesproibidos
http_access allow all <-- responde a 3)


7. Re: Squid autenticando no win2008R2

Andre chagas ramos
andre_ramos

(usa openSUSE)

Enviado em 01/08/2011 - 18:28h

Desculpas não expressei bem

e o seguinte
preciso criar 3 grupos

1)vai bloqueaar os sites especificados para todos os grupos
2)preciso liberar o youtube para determinados usuarios
3)preciso deixar o acesso livre para a diretoria

ficou mais claro

minha maior duvida seria como fazer isso no script colocando as permissões das regras citada acima para cada grupo autenticando.


8. Re: Squid autenticando no win2008R2

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 02/08/2011 - 00:02h

Baseie-se no q t disse e faça suas regras. Vá tentando q vou t ajudando.


9. Re: Squid autenticando no win2008R2

Andre chagas ramos
andre_ramos

(usa openSUSE)

Enviado em 02/08/2011 - 10:05h

Karo Colega!

Consegui bloquear os arquivos mas não consegui liberar para determinados grupos, por exemplo, criei o grupo ldapAcessoLiberados, este grupo e para ser liberados geral, sem nenhum bloqueio, e crie outros grupos para liberar msn e youtube, oque não estou conseguindo e liberar o acesso para os grupos correspondentes.

outra coisa e que queria que ao abrir o internet explorer ele não aparecesse o login e senha e sim pegasse a autenticação automática do logon do windows.


outra duvida seria a regra
acl CONNECT method CONNECT

ela deveria ficar no final das acls ou poderia ficar entre elas?


meu script ficou assim:

#Servidores DNS
dns_nameservers 192.168.0.201

#CONFIGURAÇÕES GERAIS
http_port 3128
hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY
minimum_object_size 0 KB
maximum_object_size 4096 KB
cache_swap_low 90
cache_swap_high 95
fqdncache_size 1024
log_fqdn off
cache_replacement_policy lru
memory_replacement_policy lru
cache_dir ufs /var/cache/squid 100 16 256
cache_access_log /var/log/squid/access.log
cache_store_log /var/log/squid/store.log
logfile_rotate 9

#AUTENTICAÇÃO DO DOMINIO
#Atenção! A linha de autenticação começa aqui
auth_param basic program /usr/sbin/squid_ldap_auth -R -b "dc=server,dc=toctao" -D "cn=Proxy_User,ou=Internet,dc=server,dc=toctao" -w "123456" -f sAMAccountName=%s -h 192.168.0.201:389
#Atenção! Aqui termina a linha de autenticação

auth_param basic realm ATENCAO! Este acesso sera registrado. Digite seu usuario e senha.
auth_param basic children 5
auth_param basic casesensitive off
auth_param basic credentialsttl 1 minutes
emulate_httpd_log off
mime_table /etc/squid/mime.conf
pid_filename /var/run/squid.pid
ftp_passive on
unlinkd_program /usr/sbin/unlinkd

#ACLS EXTERNA PARA AUTENTICACAO NAS BASES LDAP DO PDC
#Atenção! A linha de verificação dos grupos começa aqui.
external_acl_type ldap_group %LOGIN /usr/sbin/squid_ldap_group -R -b "dc=server,dc=toctao" -D "cn=Proxy_User,ou=Internet,dc=server,dc=toctao" -w "123456" -f "(&(objectclass=person) (sAMAccountName=%v)(memberof=cn=%a,ou=UsuLocais,dc=server,dc=toctao))" -h 192.168.0.201
#Atenção! A linha de verificação dos grupos termina aqui.

#ACLS
acl manager proto cache_object
acl localhost src 127.0.0.1/32
acl to_localhost dst 127.0.0.0/8 0.0.0.0/32
acl localnet src 192.168.0.0/24 # que vem da rede local
acl to_localnet dst 192.168.0.0/24 #que vão para a rede local
acl SSL_ports port 443
acl Safe_ports port 21 22 70 80 210 289 443 488 591 777 1025-65535

acl CONNECT method CONNECT

acl ldapAcessoLiberados external ldap_group SquidAcessoLiberados
acl Youtube_bloq url_regex -i www.youtube.com
acl ldapAcessoLiberadosYoutube external ldap_group SquidAcessoLiberadosYoutube
acl ldapAcessoLiberadosMSN external ldap_group SquidAcessoLiberadosMSN
acl Bloqueados url_regex -i "/etc/squid/regras/Bloqueados.txt"
acl MSN_bloq url_regex -i "/etc/squid/regras/MSN_bloq.txt"
acl SolicitarAutenticacao proxy_auth REQUIRED

#CONTROLES DE ACESSO HTTP

#Solicita autenticação. Se não autenticar, bloqueia conexão.
http_access deny !SolicitarAutenticacao

#Libera acesso a sites ou serviços http na rede interna
http_access allow to_localnet

#Bloqueia acesso aos usuários registrados nos grupos do Active Directory
http_access allow ldapAcessoLiberados
http_access deny Bloqueados
http_access allow ldapAcessoLiberadosYoutube
http_access deny Youtube_bloq
http_access allow ldapAcessoLiberadosMSN
http_access deny MSN_bloq

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

http_access allow all
cache_effective_user nobody
cache_effective_group nobody
visible_hostname teste01
unique_hostname teste01

#CONTROLES DE ACESSO ICP
icp_access allow localnet
icp_access allow all

#CONTROLES DE ACESSO HTCP
htcp_access allow localnet
htcp_access deny all

#GRAVAÇÃO DE LOGS
cache_log /var/log/squid/cache.log

#REFRESHS
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern -i (/cgi-bin/|\?) 0 0% 0
refresh_pattern . 0 20% 4320

icp_port 3130

#CONFIGURAÇÕES DE CACHE
cache_mem 64 MB
maximum_object_size_in_memory 32 KB
cache_mgr webmaster@hospitalpadretezza.com.br
mail_program mail

#OUTRAS CONFIGURAÇÕES
coredump_dir /var/cache/squid
connect_timeout 1 minutes
client_lifetime 5 minutes #days
icon_directory /usr/share/squid/icons
error_directory /usr/share/squid/errors/Portuguese





10. Re: Squid autenticando no win2008R2

Andre chagas ramos
andre_ramos

(usa openSUSE)

Enviado em 08/08/2011 - 15:07h

Alguém que possa me ajudar?


11. Re: Squid autenticando no win2008R2

Jairo de Menezes Rodrigues
jairovisks

(usa Debian)

Enviado em 09/08/2011 - 10:01h

Para você autenticar sem pedir usuário e senha como você tente utilizar o método de autenticação por ntlm.
http://www.linuxman.pro.br/autenticando_o_squid_no_ad_via_ntlm.pdf

http://www.cyberciti.biz/faq/squid-ntlm-authentication-configuration-howto/


Agora sobre não liberar e tals... vc tem duas opções:

1ª - Limpar seu squid.conf e ir adcionando as regras uma a uma e testando... assim vc sabe exatamente o que cada uma está fazendo... esse método me ajuda muito para resolver problemas..

2ª - Verificar as mensagens do squid no arquivo access.log, você pode abrir com o tail -f em um terminal (# tail -f /var/log/squid/access.log | grep <ip_sua_maquina>) e ver as mensagens que o squid mostra... para efetuar as liberações corretas...

Abs


12. Re: Squid autenticando no win2008R2

Andre chagas ramos
andre_ramos

(usa openSUSE)

Enviado em 10/08/2011 - 12:05h

kara coloquei a regra a baixo e apague as outras como sugeriu!

regras:

acl ldapAcessoLiberados external ldap_group SquidAcessoLiberados
acl Bloqueados url_regex -i "/etc/squid/regras/Bloqueados.txt"
http_access allow ldapAcessoLiberados
http_access deny Bloqueados


criei um grupo chamado SquidAcessoLiberados e coloquei um usuarios como membro deste grupo, mas em vez de liberar o site bloqueado ele esta bloqueado.

oque esta de errado em minha regra?




  



Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts