Olá a todos,
Onde eu trabalho implantei o Squid3 com autenticação no AD, delay pools, proxy https, etc. Temos alguns logins genéricos, que são usados em máquinas compartilhadas que também estão no AD. A idéia era bloquear o acesso à Internet para esses logins genéricos para que a pessoa quando abrisse o navegador inserisse o login e senha individuais. O bloqueio funcionou, e quando abria o navegador a janela de autenticação aparecia, mas não conseguia autenticar.
Depois de muito quebrar a cabeça, cheguei à conclusão de que o navegador não conseguia autenticar porque ele simplesmente não entendia que deveria usar a autenticação básica, já que a máquina está no domínio e já tem um usuário do domínio logado nela. Foi aí que eu comecei a fuçar na Internet atrás de uma solução, e quando estava quase desistindo, consegui encontrar algo sobre http-violations.
Essa opção de compilação, habilita o Squid a violar o cabeçalho http e mudar alguns parâmetros nele. Vi algumas pessoas mudando o tipo de autenticação para o Java, pois ele também não autentica usando NTLM, testei com o meu cenário e funcionou! A dica é simples, depois do Squid compilado com a opção --enable-http-violations, basta inserir no squid.conf:
acl maquinas-compartilhadas srcdomain -i "/etc/squid3/acls/maquinas_compartilhadas"
reply_header_access Proxy-Authenticate deny maquinas-compartilhadas
reply_header_replace Proxy-Authenticate Basic realm="DOMINIO.COM.BR"
http_access deny rede_local logins_genericos
Com essas opções, o tipo de autenticação nas máquinas informadas (por FQDN) na ACL "maquinas-compartilhadas" vai ser mudado para o tipo "Basic", e o navegador vai conseguir autenticar tranquilamente quando a janela de autenticação for aberta. Dica simples que pode salvar bastante gente.
Até a próxima!!!
Nenhum comentário:
Postar um comentário