Problema com Squid Autenticado via NTLM [RESOLVIDO]

1. Problema com Squid Autenticado via NTLM [RESOLVIDO]

Jorge Marcellino
jorge.lm

(usa CentOS)

Enviado em 12/06/2012 - 15:45h

Estou utilizando um servidor com autenticação de usuários por NTLM via Kerberos e me deparei com o seguinte problema: o servidor estava rodando corretamente, não exigia senhas na hora de acessar o navegador (como eu gostaria) para os usuários autenticados no AD, enfim...Tudo certinho! Porém, inventei de atualizar as bibliotecas do sistema (yum update) e somente o serviço de autenticacão parou de funcionar. Tive que retirar a linha que requer autenticação do meu squid.conf para conseguir fazer o proxy funcionar novamente. O prompt de senha fica aparecendo o tempo todo no navegador e conferi os arquivos (desde o resolv.conf até o krb5.conf) e nada do serviço voltar como antes. Há alguma forma de reverter todas as atualizações feitas para o estado anterior? Alguém pode me indicar uma solução plausível para o problema!? AGRADEÇO DESDE JÁ! Abs




  


2. MELHOR RESPOSTA

Rafael Mendes
rafael.mendes

(usa Debian)

Enviado em 12/06/2012 - 23:00h

Então....

Se os comandos wbinfo -t (checa a conexão com o AD) e wbinfo -u (lista usuários do AD) estão trazendo as informações esperadas, suas configurações de samba + winbind devem estar ok...

No seu arquivo squid.conf, percebi que vc só utiliza ntlm_aut com a chamada de ntlmssp (auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp) ou seja, vc só autentica usuários que estão no domínio... certo?

Caso queira mostrar janela de autenticação para quem não esta no domínio... logo ABAIXO da linha (auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp)vc pode colocar a linha (auth_param basic program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-basic) exibir caixa de login/senha para autenticar usuários que não estão no domínio....(tem mais alguns parâmetros depois...)

Mas então, pelo que vc falou que mesmo colocando usuário e senha não navega, pode ser problema de permissão no diretório winbindd_privileged....

Execute o comando (ls -lah /var/lib/samba/) e poste a saída dele aqui para verificarmos... o diretório winbindd_privileged deve estar com a seguinte permissão (grupo squid):

drwxr-x---. 2 root squid 4,0K Jun 8 16:30 winbindd_privileged

Veja essa permissão, caso esteja ok... tente navegar mesmo dando o problema, e colete o conteúdo do log do arquivo /var/log/samba/winbindd.log e coloque aqui para que possa verificar se detectamos o problema...

Valeu!

3. Re: Problema com Squid Autenticado via NTLM [RESOLVIDO]

4. Re: Problema com Squid Autenticado via NTLM [RESOLVIDO]

Jorge Marcellino
jorge.lm

(usa CentOS)

Enviado em 12/06/2012 - 19:48h

Valeu, cara! Só uma pergunta: vc sabe se esse procedimento funciona corretamente sem ter sido setado nos respectivos confs antes? Por exemplo, se eu alterar os confs ( conforme a explicação) e executar a restauração ela irá funcionar a partir das alterações dos confs ou a partir de qq data anterior? Pergunto isso pra aplicar o procedimento com mais segurança, ok? Jah q o server eh de uma empresa. Outra questão: não existe uma solução mais prática para recuperar a autenticação de usuários sem que o proxy ñ funcione e fique aparecendo o tempo todo o prompt no navegador pedindo nome de usuario e senha? Agradeço mesmo a ajuda! Valeu!



5. Autenticação Squid CentOS.

Rafael Mendes
rafael.mendes

(usa Debian)

Enviado em 12/06/2012 - 22:07h

Oi Jorge.

Vc poderia postar seu arquivo squid.conf e seu arquivo smb.conf para entendermos melhor sua topologia?

Pra entender melhor:

No caso você esta efetuando a autenticação em um domínio nt... (Active Directory)... usando winbind... isso?

No comando wbinfo -t e -u vc tem resposta ou da erro?

Valeu!


6. Re: Problema com Squid Autenticado via NTLM [RESOLVIDO]

Jorge Marcellino
jorge.lm

(usa CentOS)

Enviado em 12/06/2012 - 22:39h

Opa, Rafael! Segue as confs do squid e samba:


SQUID (squid.conf)
###############################################
http_port 3128

cache_effective_user proxy
cache_effective_group proxy

cache_log /var/log/squid/cache.log
cache_access_log /var/log/squid/access.log
cache_store_log /var/log/squid/store.log

hierarchy_stoplist cgi-bin ?
acl QUERY urlpath_regex cgi-bin \?
no_cache deny QUERY

auth_param ntlm program /usr/bin/ntlm_auth --helper-protocol=squid-2.5-ntlmssp
auth_param ntlm children 30

refresh_pattern ^ftp: 1440 20% 10080
refresh_pattern ^gopher: 1440 0% 1440
refresh_pattern . 0 20% 4320

acl all src 192.168.0.0/255.255.255.0
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
acl Safe_ports port 80 # http
acl Safe_ports port 21 # ftp
acl Safe_ports port 443 # https
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
acl Autorizado proxy_auth REQUIRED

#BIBLIOTECA_SITES
acl sitesbiblioteca url_regex -i "/etc/squid/sitesbiblioteca"
acl ipsbiblioteca src "/etc/squid/ipsbiblioteca"
http_access deny sitesbiblioteca ipsbiblioteca

#BIBLIOTECA_EXT
acl extbiblioteca url_regex -i "/etc/squid/extbiblioteca"
http_access deny extbiblioteca ipsbiblioteca

acl sitesliberados url_regex -i "/etc/squid/liberados"
http_access allow sitesliberados all

http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow all Autorizado
http_access allow all
http_reply_access allow all
icp_access allow all

coredump_dir /usr/local/squid/var/cache
######################################################################

SAMBA (smb.conf)

[global]

workgroup = EMPRESA
netbios name = PROXY
server string = Samba Server
log level = 3
log file = /var/log/samba/%m.log
max log size = 50
socket options = TCP_NODELAY SO_RCVBUF=8192 SO_SNDBUF=8192
security = ads
password server = 192.168.0.1
realm=SAGRADO.COM
encrypt passwords = yes
ldap ssl = no
idmap uid = 16777216-33554431
idmap gid = 16777216-33554431
winbind use default domain = yes
dns proxy = yes
preferred master = no

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

Vamos lá...Os comandos que vc citou retornam sim respostas de que tudo está ok. Visualizo os usuários, grupos do AD, horário sincronizado, enfim...Tudo pronto pra funcionar (por sinal, estava funcionando perfeitamente até eu realizar as tais atualizações pelo yum update). Sim, eu utilizo o winbind. O problema é que depois dessas atualizações, nas estações quando eu seto o proxy, abre um prompt pedindo usuário e senha (o que não era pra acontecer e não acontecia) e mesmo que eu coloque usuário e senha, ele volta a mesma tela pedindo novamente, enfim, deu erro...Agradeço novamente a força de vcs! abs




7. Re: Problema com Squid Autenticado via NTLM [RESOLVIDO]

Jorge Marcellino
jorge.lm

(usa CentOS)

Enviado em 12/06/2012 - 23:24h

Poxa, Rafael, valeu pelas dicas, cara! Vou acrescentar essas linhas assim que estiver no local (agora estou conectando via ssh apenas). Em relação a permissão da pasta está assim:

drwxr-x--- 2 root squid 4096 Jun 12 11:16 winbindd_privileged

Só uma dúvida: o grupo permitido aí não poderia seria o grupo "proxy" (como configurado no squid.conf)?

Em relação aos logs requeridos, verifiquei o arquivo e ele consta apenas o conteúdo a seguir:

[2012/06/12 17:34:19, 3] nsswitch/winbindd_group.c:winbindd_getgroups(1273)
[ 2900]: getgroups root
[2012/06/12 17:34:19, 3] nsswitch/winbindd_group.c:winbindd_getgroups(1273)
[ 2900]: getgroups root
[2012/06/12 17:34:19, 3] nsswitch/winbindd_group.c:winbindd_getgroups(1273)
[ 2900]: getgroups root
[2012/06/12 17:34:19, 3] nsswitch/winbindd_group.c:winbindd_getgroups(1273)
[ 2900]: getgroups root
[2012/06/12 17:45:26, 3] nsswitch/winbindd_misc.c:winbindd_interface_version(491)
[ 6970]: request interface version
[2012/06/12 17:45:26, 3] nsswitch/winbindd_misc.c:winbindd_priv_pipe_dir(524)
[ 6970]: request location of privileged pipe
[2012/06/12 17:45:26, 3] nsswitch/winbindd_misc.c:winbindd_domain_info(385)
[ 6970]: domain_info [WORKGROUP]
[2012/06/12 17:45:26, 3] nsswitch/winbindd_misc.c:winbindd_domain_info(391)
Did not find domain [WORKGROUP]
[2012/06/12 17:45:26, 3] nsswitch/winbindd_misc.c:winbindd_ping(470)
[ 6970]: ping
[2012/06/12 17:45:26, 3] nsswitch/winbindd_sid.c:winbindd_sid_to_gid(308)
[ 6970]: sid to gid S-1-1-0
[2012/06/12 17:45:26, 3] nsswitch/winbindd_misc.c:winbindd_ping(470)
[ 6970]: ping
[ 6970]: sid to gid S-1-5-2
[2012/06/12 17:45:26, 3] nsswitch/winbindd_misc.c:winbindd_ping(470)
[ 6970]: ping
[2012/06/12 17:45:26, 3] nsswitch/winbindd_sid.c:winbindd_sid_to_gid(308)
[ 6970]: sid to gid S-1-5-32-546
[2012/06/12 17:45:26, 3] nsswitch/winbindd_misc.c:winbindd_ping(470)
[ 6970]: ping
[2012/06/12 17:49:50, 3] nsswitch/winbindd_misc.c:winbindd_interface_version(491)
[ 6983]: request interface version
[2012/06/12 17:49:50, 3] nsswitch/winbindd_misc.c:winbindd_priv_pipe_dir(524)
[ 6983]: request location of privileged pipe
[2012/06/12 17:49:50, 3] nsswitch/winbindd_group.c:winbindd_list_groups(1162)
[ 6983]: list groups
[2012/06/12 17:49:50, 3] nsswitch/winbindd_ads.c:enum_dom_groups(275)
ads: enum_dom_groups
[2012/06/12 17:49:50, 3] libsmb/namequery.c:get_dc_list(1495)
get_dc_list: preferred server list: ", 192.168.0.1"
[2012/06/12 17:49:50, 3] libads/ldap.c:ads_connect(394)

E por aí vai...Porém, comentei as linhas de autenticação do squid.conf pro pessoal poder navegar sem alterar as configurações nos browsers das estações (até resolver esse problema).

Acho que não ajuda né? Enfim...agradeço novamente, cara!




8. Re: Problema com Squid Autenticado via NTLM [RESOLVIDO]

Jorge Marcellino
jorge.lm

(usa CentOS)

Enviado em 13/06/2012 - 14:25h

RESOLVIDO! Era realmente o problema de permissão do winbindd_privilieged, Rafael! Alterei a permissão para o grupo proxy (no meu caso). Graças a sua dica o serviço voltou a funcionar normalmente! Agradeço a todos vcs que ajudaram, em especial ao Rafael! Valeu mesmo! abs!




9. Problema com Squid Autenticado via NTLM

Rafael Mendes
rafael.mendes

(usa Debian)

Enviado em 13/06/2012 - 18:41h

Valeu!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts