Falha na autenticação - Browser - Squid integrado ao Active Directory [RESOLVIDO]

1. Falha na autenticação - Browser - Squid integrado ao Active Directory [RESOLVIDO]

Miqueias Azevedo
myqueyas

(usa Ubuntu)

Enviado em 05/10/2015 - 14:01h

Seguindo o tutorial abaixo, configurei o squid3, winbind e samba integrando ao AD Windows Server 2008.
vivaolinux.com.br/artigo/Integrando-autenticacao-do-Squid-ao-Active-Directory?pagina=1

O problema é na autenticação sem poup-up, não obtive êxito ao configurá-la. A estação windows solicita toda vez a autenticação e mesmo informando as credenciais de um usuário válido, não autentica e nem permite a navegação.

Todos os serviços testados no Linux, estão funcionando corretamente. Obtenho as listas de usuários e grupos do ad, o servidor linux está incluso no domínio, etc.

Versões: samba Version 4.1.17-Debian
Squid Cache: Version 3.4.8

Mesmo assim, somente abre a janela do login e mesmo informando credenciais validas, não ocorre o login no browser.
Caso alguém já tenha passado por isso, fico no aguardo e desde já agradeço.


  


2. Re: Falha na autenticação - Browser - Squid integrado ao Active Directory [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 05/10/2015 - 15:32h

O q está acontecendo é q a comunicação entre o helper e o domínio não está funcionando. Coloque o seu squid.conf aqui.
--
Renato Carneiro Pacheco
Certificado Linux LPIC-1
Especialista em Segurança em Redes de Computadores
Graduado em Redes de Comunicação

http://br.linkedin.com/in/renatocarneirop
http://www.facebook.com/renatocarneirop

"Não acredite no que eu digo, pois é a minha experiência e não a sua. Experimente, indague e busque." - Osho Rajneesh


3. Conteúdo do Squid.conf

Miqueias Azevedo
myqueyas

(usa Ubuntu)

Enviado em 05/10/2015 - 16:25h

O squid.conf é bem padrão, obtido a partir do site mencionado no começo. Não há nenhuma configuração mais elaborada e ao acessar o browser quando configurado o endereço do proxy fica solicitando usuário e senha e mesmo informando credenciais validas não autentica.


http_port 192.168.1.2:3128

hierarchy_stoplist cgi-bin ?
refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320

# Logs
access_log /var/log/squid3/access.log
cache_log /var/log/squid3/cache.log

# ACLs
# qualquer rede
acl all src all
# rede loopback
acl localhost src 127.0.0.1/32

# portas seguras
acl SSL_ports port 443 563
# demais serviços
acl Safe_ports port 80 # http
acl Safe_ports port 8080 # tomcat
acl Safe_ports port 8443 # tomcat - ssl
acl Safe_ports port 10000 # webmin
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 631 # cups
acl Safe_ports port 777 # multiling http
acl Safe_ports port 4500 # Biblioteca USP dedalus
acl Safe_ports port 2083 # CPANEL
acl Safe_ports port 2631 # Conectividade Social
acl Safe_ports port 1494 # Sigov
acl Safe_ports port 8333 # WMWARE SERVER

acl purge method PURGE
acl CONNECT method CONNECT
http_access allow manager
http_access allow purge


# parametros de autenticacao
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 10
auth_param ntlm keep_alive on
auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic
auth_param basic children 250
auth_param basic realm "Autenticacao Proxy"
external_acl_type grupo_ad %LOGIN /usr/lib/squid3/wbinfo_group.pl
# fim parametros de autenticacao

acl grp-diretores external grupo_ad ti
acl grp-funcionarios external grupo_ad faturamento
acl grp-estagiarios external grupo_ad farmacia
acl negados dstdomain -i "/etc/squid3/acls/sites-proibidos"
acl negados1 dstdomain -i "/etc/squid3/acls/sites-proibidos1"
acl negados2 dstdomain -i "/etc/squid3/acls/sites-proibidos2"
acl liberados dstdomain -i "/etc/squid3/acls/sites-permitidos"
http_access deny negados
http_access allow grp-diretores
http_access deny negados1
http_access allow grp-funcionarios
http_access deny negados2
http_access deny grp-estagiarios !liberados
http_access allow liberados


# Sites problematicos que precisam acesso direto
acl caixa dstdomain -i .caixa.gov.br
acl update dstdomain -i Windowsupdate.microsoft.com au.download.Windowsupdate.com


http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports

http_access allow caixa
always_direct allow caixa


http_reply_access allow all
icp_access allow all
miss_access allow all
dns_nameservers 192.168.1.3
acl snmpro snmp_community local
snmp_access allow snmpro all
snmp_port 3401

# CONFIGS Diversas
########################################
# Email do administrador
cache_mgr ti@empresa.com.br
# Host visível
visible_hostname proxy.empresa.corp
# Linguagem dos erros
error_directory /usr/share/squid3/errors/Portuguese
# Evita que sejam feitos coredumps.
coredump_dir /var/spool/squid3
# Numero de arquivos de log rotacionados a guardar.
logfile_rotate 4


4. Re: Falha na autenticação - Browser - Squid integrado ao Active Directory [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 05/10/2015 - 16:55h

Eu acho q sei qual é o seu problema. Vc seguiu esse procedimento abaixo?

http://www.vivaolinux.com.br/artigo/Integrando-autenticacao-do-Squid-ao-Active-Directory?pagina=2

Se ainda não deu certo, desfaça essa alteração e execute os comandos abaixo:


gpasswd -a proxy winbindd_priv
service samba restart
service winbind restart

--
Renato Carneiro Pacheco
Certificado Linux LPIC-1
Especialista em Segurança em Redes de Computadores
Graduado em Redes de Comunicação

http://br.linkedin.com/in/renatocarneirop
http://www.facebook.com/renatocarneirop

"Não acredite no que eu digo, pois é a minha experiência e não a sua. Experimente, indague e busque." - Osho Rajneesh


5. Orientações do tutorial

Miqueias Azevedo
myqueyas

(usa Ubuntu)

Enviado em 05/10/2015 - 17:27h






Exatamente, segui o tutorial: http://www.vivaolinux.com.br/artigo/Integrando-autenticacao-do-Squid-ao-Active-Directory?pagina=2

Substitui a linha original:
chgrp winbindd_priv $PIDDIR/winbindd_privileged/ || return 1

Por:
chgrp proxy $PIDDIR/winbindd_privileged/ || return 1

Já retornei a linha original e efetuei os comandos abaixo, mas o resultado foi o mesmo.

gpasswd -a proxy winbindd_priv
service samba restart
service winbind restart


6. Re: Falha na autenticação - Browser - Squid integrado ao Active Directory [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 05/10/2015 - 17:34h

Coloque a informação do seu domínio na linha da autenticação do squid, ficando assim:


auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --domain=DOMINIO


Não esquecendo d substituir DOMINIO pelo seu domínio em questão.
--
Renato Carneiro Pacheco
Certificado Linux LPIC-1
Especialista em Segurança em Redes de Computadores
Graduado em Redes de Comunicação

http://br.linkedin.com/in/renatocarneirop
http://www.facebook.com/renatocarneirop

"Não acredite no que eu digo, pois é a minha experiência e não a sua. Experimente, indague e busque." - Osho Rajneesh


7. Registros de Log

Miqueias Azevedo
myqueyas

(usa Ubuntu)

Enviado em 05/10/2015 - 18:36h












Inclui as informações também, mas ainda não obtive êxito.
Consultando os arquivos de log, constam os registros abaixo:

#tail -100 /var/log/squid3/cache.log

Got user=[usuario] domain=[DOMINIO] workstation=[ESTI001] len1=24 len2=24
Login for user [DOMINIO]\[usuario]@[ESTI001] failed due to [Reading winbind reply failed!]
../auth/ntlmssp/ntlmssp_server.c:454: Checking NTLMSSP password for DOMINIO\usuario failed: NT_STATUS_UNSUCCESSFUL
GENSEC login failed: NT_STATUS_UNSUCCESSFUL
2015/10/05 18:29:17 kid1| ERROR: NTLM Authentication validating user. Result: {result=BH, notes={message: NT_STATUS_UNSUCCESSFUL NT_STATUS_UNSUCCESSFUL; }}
could not obtain winbind netbios name!
could not obtain winbind domain name!
Starting GENSEC mechanism ntlmssp
Starting GENSEC mechanism ntlmssp
Got NTLMSSP neg_flags=0xa2088207
NTLMSSP_NEGOTIATE_UNICODE
NTLMSSP_NEGOTIATE_OEM
NTLMSSP_REQUEST_TARGET
NTLMSSP_NEGOTIATE_NTLM
NTLMSSP_NEGOTIATE_ALWAYS_SIGN
NTLMSSP_NEGOTIATE_NTLM2
NTLMSSP_NEGOTIATE_VERSION
NTLMSSP_NEGOTIATE_128
NTLMSSP_NEGOTIATE_56
Got user=[usuario] domain=[DOMINIO] workstation=[ESTI001] len1=24 len2=24
Login for user [DOMINIO]\[usuario]@[ESTI001] failed due to [Reading winbind reply failed!]
../auth/ntlmssp/ntlmssp_server.c:454: Checking NTLMSSP password for DOMINIO\usuario failed: NT_STATUS_UNSUCCESSFUL
GENSEC login failed: NT_STATUS_UNSUCCESSFUL
2015/10/05 18:29:24 kid1| ERROR: NTLM Authentication validating user. Result: {result=BH, notes={message: NT_STATUS_UNSUCCESSFUL NT_STATUS_UNSUCCESSFUL; }}





8. Solução do Problema da autenticação a todo momento - Squid Integrado ao AD (Kerberos + Winbind + Sam

Miqueias Azevedo
myqueyas

(usa Ubuntu)

Enviado em 05/10/2015 - 19:08h


18:55 05/10/2015

Editei o arquivo
# vi /etc/init.d/winbind

Alterando a configuração padrão para a configuração abaixo como orientado:
chgrp proxy $PIDDIR/winbindd_privileged/ || return 1



Ajustei o arquivo squid.conf incluindo informação do meu domínio conforme orientado:
auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp --domain=<NOME DO DOMINIO>


Até aqui sem sucesso, mas verifiquei os arquivos de log do cache as mensagens abaixo:

#tail -100 /var/log/squid3/cache.log

Got user=[usuario] domain=[DOMINIO] workstation=[ESTI001] len1=24 len2=24
Login for user [DOMINIO]\[usuario]@[ESTI001] failed due to [Reading winbind reply failed!]
../auth/ntlmssp/ntlmssp_server.c:454: Checking NTLMSSP password for DOMINIO\usuario failed: NT_STATUS_UNSUCCESSFUL
GENSEC login failed: NT_STATUS_UNSUCCESSFUL
2015/10/05 18:29:17 kid1| ERROR: NTLM Authentication validating user. Result: {result=BH, notes={message: NT_STATUS_UNSUCCESSFUL NT_STATUS_UNSUCCESSFUL; }}
could not obtain winbind netbios name!
could not obtain winbind domain name!
Starting GENSEC mechanism ntlmssp
Starting GENSEC mechanism ntlmssp
Got NTLMSSP neg_flags=0xa2088207
NTLMSSP_NEGOTIATE_UNICODE
NTLMSSP_NEGOTIATE_OEM
NTLMSSP_REQUEST_TARGET
NTLMSSP_NEGOTIATE_NTLM
NTLMSSP_NEGOTIATE_ALWAYS_SIGN
NTLMSSP_NEGOTIATE_NTLM2
NTLMSSP_NEGOTIATE_VERSION
NTLMSSP_NEGOTIATE_128
NTLMSSP_NEGOTIATE_56
Got user=[usuario] domain=[DOMINIO] workstation=[ESTI001] len1=24 len2=24
Login for user [DOMINIO]\[usuario]@[ESTI001] failed due to [Reading winbind reply failed!]
../auth/ntlmssp/ntlmssp_server.c:454: Checking NTLMSSP password for DOMINIO\usuario failed: NT_STATUS_UNSUCCESSFUL
GENSEC login failed: NT_STATUS_UNSUCCESSFUL
2015/10/05 18:29:24 kid1| ERROR: NTLM Authentication validating user. Result: {result=BH, notes={message: NT_STATUS_UNSUCCESSFUL NT_STATUS_UNSUCCESSFUL; }}



Verificando o status do winbind, obtive as mensagens abaixo:

# /etc/init.d/winbind status
â winbind.service - LSB: start Winbind daemon
Loaded: loaded (/etc/init.d/winbind)
Active: active (exited) since Seg 2015-10-05 18:28:12 BRT; 11min ago
Process: 1159 ExecStop=/etc/init.d/winbind stop (code=exited, status=0/SUCCESS)
Process: 1168 ExecStart=/etc/init.d/winbind start (code=exited, status=0/SUCCESS)

Out 05 18:28:11 medusa winbindd[906]: Got sig[15] terminate (is_parent=1)
Out 05 18:28:11 medusa winbind[1159]: Stopping the Winbind daemon: winbind.
Out 05 18:28:12 medusa winbind[1168]: Starting the Winbind daemon: winbind.
Out 05 18:28:12 medusa winbindd[1179]: [2015/10/05 18:28:12.260278, 0] ../source3/winbindd/winbindd_cache.c:3196(initialize_winbindd_cache)
Out 05 18:28:12 medusa winbindd[1179]: initialize_winbindd_cache: clearing cache and re-creating with version number 2
Out 05 18:28:12 medusa winbindd[1179]: [2015/10/05 18:28:12.269355, 0] ../lib/util/util.c:282(directory_create_or_exist_strict)
Out 05 18:28:12 medusa winbindd[1179]: invalid permissions on directory '/var/lib/samba/winbindd_privileged': has 0777 should be 0750
Out 05 18:28:12 medusa winbindd[1179]: [2015/10/05 18:28:12.270845, 0] ../lib/util/become_daemon.c:124(exit_daemon)
Out 05 18:28:12 medusa winbindd[1179]: STATUS=daemon failed to start: Winbindd failed to setup listeners, error code 32


Então percebi que eu havia alterado as permissões do arquivo /var/lib/samba/winbindd_privileged para 777 ao invez de 0750
Retornei a permissão para o padrão conforme registro de log:

# chmod 0750 /var/lib/samba/winbindd_privileged


Feito isso, a autenticação ocorreu normalmente sem solicitar login e senha a todo momento conforme problema inicial.
Vou validar as demais configurações se houver mais alguma informação relevante, posterei aqui no forum.

Agradeço pela ajuda renato_pacheco. Suas sugestões foram muito valiosas.


9. Re: Falha na autenticação - Browser - Squid integrado ao Active Directory [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 06/10/2015 - 08:45h

Opa. Lição aprendida: os logs são a nossa salvação! Sempre consulte-os!
--
Renato Carneiro Pacheco
Certificado Linux LPIC-1
Especialista em Segurança em Redes de Computadores
Graduado em Redes de Comunicação

http://br.linkedin.com/in/renatocarneirop
http://www.facebook.com/renatocarneirop

"Não acredite no que eu digo, pois é a minha experiência e não a sua. Experimente, indague e busque." - Osho Rajneesh


10. Re: Falha na autenticação - Browser - Squid integrado ao Active Directory [RESOLVIDO]

Marcelo Moura
marcelohcm

(usa Ubuntu)

Enviado em 09/03/2016 - 08:47h

olá!
meu ambiente é igual ao do criador do post, com um ad win 2008 server e um proxy squid3.
a autenticação funciona no modo transparente pra todos os pcs que estão no domínio, porém tem alguns pcs que insistem em pedir autenticação mesmo no dominio e usando o login do usuario.
já criei uma gpo no win server 2008 modificando essa chave no registro, mas mesmo assim fica pedindo.
alguem sabe o pq?




11. Re: Falha na autenticação - Browser - Squid integrado ao Active Directory [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 09/03/2016 - 09:01h

marcelohcm escreveu:

olá!
meu ambiente é igual ao do criador do post, com um ad win 2008 server e um proxy squid3.
a autenticação funciona no modo transparente pra todos os pcs que estão no domínio, porém tem alguns pcs que insistem em pedir autenticação mesmo no dominio e usando o login do usuario.
já criei uma gpo no win server 2008 modificando essa chave no registro, mas mesmo assim fica pedindo.
alguem sabe o pq?



Abra outro tópico, amigo. Além de evitar a bagunça no post dos outros, vc pode conseguir uma visualização maior e mais pessoas poderão t ajudar.

--
Renato Carneiro Pacheco
Certificado Linux LPIC-1
Especialista em Segurança em Redes de Computadores
Graduado em Redes de Comunicação

http://br.linkedin.com/in/renatocarneirop
http://www.facebook.com/renatocarneirop

"Não acredite no que eu digo, pois é a minha experiência e não a sua. Experimente, indague e busque." - Osho Rajneesh






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts