[1] Comentário enviado por
leo_jfa em 24/05/2010 - 17:28h:
Prezado troppy,
Muito interessante seu artigo, na pratica tenho q colocar senha no browser ou o processo de autenticação é automatico, o usuário logou no dominio ta logado?
Att.
Leandro Moreira
[2] Comentário enviado por
gontijobh em 25/05/2010 - 01:51h:
Uma pequena duvida, com essa configuração, um relatório feito com o sarg viria especificados os usuários do AD?
[3] Comentário enviado por
humano10 em 25/05/2010 - 11:39h:
troppy ,
Parabéns pelo artigo. Você chegou a fazer autenticando atráves de um domínio configurado no Windows 2008?
Pelo que pesquisei na internet o windows 2008 mudou a maneira de autenticar está diferente do windows 2003. Não consegui fazer funcionar. Se tiver alguma coisa poste aqui mesmo.
Valeu
Abraços
[4] Comentário enviado por
troppy em 25/05/2010 - 15:58h:
Muito interessante seu artigo, na pratica tenho q colocar senha no browser ou o processo de autenticação é automatico, o usuário logou no dominio ta logado?
R= Para o internet explorer 7 ou superior e firefox3 ou superior a autenticação é automática não aparece a caixinha com usuário e senha, o modo LDAP Basic que tem no artigo faz isso caso falhe a autenticação é bom quando for implantar comentar o modo LDAP e testar somente o kerberos. Essa autenticação direta eu consegui no windows XP, Vista e windows 7. No linux eu consegui utilizando um pacote chamado likewise open que coloca a máquina no domínio do AD.
Uma pequena duvida, com essa configuração, um relatório feito com o sarg viria especificados os usuários do AD?
R=Sim os relatórios vem descriminados por cada usuário.
Parabéns pelo artigo. Você chegou a fazer autenticando atráves de um domínio configurado no Windows 2008?
R= Infelizmente não tenho ambiente com o 2008 pra teste, mas creio que a alteração seja na hora de gerar o keymap, há outras maneiras de gerar o keymap, via samba mais creio que para tentar no 2008 eu verificava o modo de gerar o key map. "ktpass -princ HTTP/srvsquid.meudominio.com.br@MEUDOMINIO.COM.BR -mapuser srvsquid -crypto rc4-hmac-nt -pass SENHA_DO_USR_SRVSQUID -ptype KRB5_NT_PRINCIPAL -out c:\srvsquid.keytab" tentaria substituir a tag -crypto rc4-hmac-nt por outro método de criptografia.
Muito obrigado a todos pelo feedback
[5] Comentário enviado por
aldivone em 25/05/2010 - 16:28h:
Esse é o cara. Trezentos castelão e num bate nas beiradas.
[6] Comentário enviado por
leo_jfa em 26/05/2010 - 15:51h:
troppy,
a linha :
sudo chmod proxy:proxy /etc/squid3/srvsquid.keytab
ta com um erro, e pra trocar o dono do arquivo:
sudo chown proxy:proxy /etc/squid3/srvsquid.keytab
Att.
Leandro Moreira.
[7] Comentário enviado por
troppy em 27/05/2010 - 08:32h:
Obrigado Leandro,
realmente foi um erro na hora da digitação.
[8] Comentário enviado por
HC em 27/05/2010 - 15:33h:
Muito bom o seu artigo Troppy, deixa eu postar um problema que ocorre aqui na empresa, aqui sempre usamos o squid com o método de autenticação NTLM, recentemente migramos todos os nossos Domain Controllers para Windows Server 2008 R2, e começaram a surgir problemas.
Depois de muita pesquisa e testes, constatamos que após a migração, só as estações com o Windows XP não autenticavam, o problema ainda persiste, só tirei essas estações da regra para passarem pelo proxy.
Caso alguem já passou por esse problema e quiser dar uma força é só postar.
Abraço a todos.
[9] Comentário enviado por
leo_jfa em 31/05/2010 - 14:19h:
Troppy,
Segui o seu artigo na integra, quando vou acessar a internet, ele fica com a popup pedindo senha e ao entrar com login/senha além de nao logar ele retorna a seguinte mensagem no log do squid:
2010/05/31 14:17:01| squid_kerb_auth: Got 'YR TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAGAHEXAAAADw==' from squid (length: 59).
2010/05/31 14:17:01| squid_kerb_auth: Decode 'TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAAGAHEXAAAADw==' (decoded length: 40).
2010/05/31 14:17:01| squid_kerb_auth: received type 1 NTLM token
2010/05/31 14:17:01| authenticateNegotiateHandleReply: Error validating user via Negotiate. Error returned 'BH received type 1 NTLM token'
[10] Comentário enviado por
troppy em 01/06/2010 - 11:17h:
Olá Leo,
qual o browser que você está usando?
aqui homologamos o IE7 e o firefox 3.0 ou superior, tivemos um problema com alguns IE 8 no windows XP e estamos tentando resolver.
lembrando que deve setar o proxy SRVSQUID.DOMINIO.COM.BR e estar com o dns reverso direitinho pra funcionar o kerberos.
O ambiente de teste é o mesmo ubuntu 10.04 squid3 e windows 2003?
tu ainda tem máquina 98 na rede? Recebi uns reports de quem tem máquina windows 98 o Domain Controler tem que habilitar umas autenticações mais fracas para compatibilidade e não funcionou também.
[11] Comentário enviado por
leo_jfa em 01/06/2010 - 14:42h:
Troppy,
Estou testando de um IE 8 e no SO e windows 2008, setei na configuração do proxy o ip do servidor proxy, vou testar agora com o nome ja que esta td criado, inclusive o reverso no DNS.
Att.
Leandro Moreira
[12] Comentário enviado por
cavanso em 14/06/2010 - 23:46h:
Voce ja tentou utilizando o domian controller com ms w2k8 ?
[13] Comentário enviado por
brunofreitas em 16/06/2010 - 11:34h:
Fala ae cara,
primeiramente parabens pelo seu artigo.
porem estou com alguns problemas e pelo que percebi semelhantes aos do Leandro Moreira, o navegador fica pedindo usuario e senha e não aceita nenhum usuario do ad, o ambiente é exatamente o mesmo porem o navegador é o IE8, ja inclusive abilitei a autenticação LDAP e mesmo assim nada, poderia dar uma ajuda?
desde já agradeço
Bruno
[14] Comentário enviado por
troppy em 16/06/2010 - 15:12h:
Voce ja tentou utilizando o domian controller com ms w2k8 ?
R: Não, infelizmente não possuo esse ambiente e nem muito tempo pra montar um em VM pra teste.
Bruno,
muito obrigado, quanto aos erros da um tail -f no /var/log/squid3/access.log e no cache.log e tenta realizar o acesso.
eu tive problemas com o IE8 no windows XP no windows7 funcionou, teria como tu fazer o teste do firefox, só pra ver se funciona??
outra coisa é muito importante setar o proxy no navegador com o nome completo srvsquid.meudominio.com.br, pois o kerberos precisa fazer um reverso do dns pra funcionar. Não deve setar o IP nem o nome WINS.
Tanta aí e posta o results do log pra ver qual o prob.
Vlws
[15] Comentário enviado por
brunofreitas em 17/06/2010 - 16:54h:
troppy,
bom quanto ao log não pude pegar pois após testar sem sucesso também no IE7 resolvi começar do zero novamente, quanto a setagem do proxy no navegador eu tinha feito exatamente como voce falou, nesse momento eu estou fazendo por partes e começei a ver se consigo fazer o kerberos funcionar ele tem me retornado erros dizendo que não consegue chegar até o meu KDC, vou colar o conf dele aqui. outro ponto é que no AD eu tenho a opção de liberar o acesso de qualquer máquina especifica para acessar o kerberos, e dei essa permissão ao meu servidor proxy também, no mais o dns reverso está funcionando e o squid está adicionado no computers do AD, o arquivo do 2003 foi gerado, que no momento está sem uso uma vez que ainda não instalei o squid e pelo que itnendi é ele quem vai usar o arquivo. sou iniciante em linux por isso talvez esteja cometendo erros simples hehehe. segue o conf do kerberos e o erro:
[libdefaults]
default_realm = SYGMAMOTORS.LOCAL
dns_lookup_realm = no
dns_lookup_kdc = no
ticket_lifetime = 24h
forwardable = yes
# The following krb5.conf variables are only for MIT Kerberos.
krb4_config = /etc/krb.conf
krb4_realms = /etc/krb.realms
kdc_timesync = 1
ccache_type = 4
forwardable = true
proxiable = true
# for Windows 2003
default_tgs_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
default_tkt_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
permitted_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
# For Windows XP:
default_tgs_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
default_tkt_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
permitted_enctypes = rc4-hmac des-cbc-crc des-cbc-md5
# The following libdefaults parameters are only for Heimdal Kerberos.
v4_instance_resolve = false
v4_name_convert = {
host = {
rcmd = host
ftp = ftp
}
plain = {
something = something-else
}
}
fcc-mit-ticketflags = true
[realms]
SYGMAMOTORS.LOCAL = {
kdc = 192.168.1.2
admin_server = 192.168.1.2
dafault_domain = sygmamotors.local
}
[domain_realm]
.sygmamotors.local = SYGMAMOTORS.LOCAL
sygmamotors.local = SYGMAMOTORS.LOCAL
[kdc]
profile = /etc/krb5kdc/kdc.conf
[appdefaults]
pam = {
debug = false
ticket_lifetime = 36000
renew_lifetime = 36000
forwardable = true
krb4_convert = false
}
[login]
krb4_convert = true
krb4_get_tickets = false
[logging]
default = FILE:/var/log/krb5libs.log
kdc = FILE:/var/log/krb5kdc.log
admin_server = FILE:/var/log/kadmind.log
----------------------------------------------------
Erro:
sygma@srvsquid:/etc$ cd
sygma@srvsquid:~$ sudo /etc/init.d/krb5-kdc restart
* Restarting Kerberos KDC krb5kdc
krb5kdc: cannot initialize realm SYGMAMOTORS.LOCAL - see log file for details
...fail!
isso ai cara
novamente obrigado desde já
att,
Bruno
[16] Comentário enviado por
kepler001 em 07/09/2010 - 22:22h:
com windows server 2008 tem como fazer autenticação via ntlm ????
com squid 2 ???
[17] Comentário enviado por
troppy em 08/09/2010 - 08:41h:
Eu nunca tive um ambiente windows 2008 para teste, aqui na empresa utilizamos 2000 e 2003.
Porém tivemos alguns problemas com o windows7, este tinha que mudar uma opção no registro para funcionar o ntlm, talves fazendo esse procedimento no seu 2008 funcione também.
1) Em HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa
caso nao exista crie uma DWORD value com o nome LmCompatibilityLevel e coloque o valor de 1 para LM NTLM e NTLMv2 se é negociavel. Deve ser colocado valores entre 0 e 2
2) reinicie
[18] Comentário enviado por
andrefreire em 02/10/2010 - 07:46h:
Bom dia !
Troppy testei seu modelo de autenticação e funcionou muito bem porém quando tentei fazer o controle dos usuários pelos grupos criados no AD não consegui fazer funcionar. Na autenticação NTLM, embora um pouco menos segura funciona perfeito inclusive com o Win7 mesmo sem alterações no registro.
[19] Comentário enviado por
troppy em 02/10/2010 - 13:00h:
Se tu tiver trazendo os usuários por consulta via winbind ou ntlm tem que ver aonde tu tá jogando esses grupos. tipo digamos que tu quer colocar os grupos
GRUPO DIRETORIA
/etc/squid3/diretoria.txt
PEDRO
CARLOS
PAULO
MATHEUS
GRUPOGALERADETI
/etc/squid3/galerati.txt
KILLER
JONNYDARK
SPPLATERGORE
quando tu utiliza o Kerberos se tu deres um tail -f /var/log/squid3/access.log tu vais ver os acessos via kerberos possui @MEU.DOMINIO.COM aí pra funcionar nos grupos criados além de ter o nome do usuário tu tem que fazer um script com o SED para adicionar @MEU.DOMINIO.COM. por exemplo o grupo diretoria ficaria
/etc/squid3/diretoria.txt
PEDRO
CARLOS
PAULO
MATHEUS
PEDRO@MEU.DOMINIO.COM
CARLOS@MEU.DOMINIO.COM
PAULO@MEU.DOMINIO.COM
MATHEUS@MEU.DOMINIO.COM
Eu não sei se tu tah fazendo consulta na base LDAP via winbind e jogando em grupos no arquivo txt se tiver fazendo isso é só testar adicionar o domínio. tente também deixar tudo maiúsculo.
[20] Comentário enviado por
jonathan.giga2 em 16/11/2010 - 13:43h:
Boa tarde Troppy,
Gostei muito do seu post....com certeza vc está de Parabéns.
Entretanto eu segui passo a passo ou seu Tuto...e deu tudo certo, contudo na hora de restartar o squid3 deu o seguinte erro:
Restarting Squid HTTP Proxy 3.0: squid32010/11/16 13:39:21| Parsing Config File: Unknown authentication scheme 'negotiate'.
2010/11/16 13:39:21| Parsing Config File: Unknown authentication scheme 'negotiate'.
2010/11/16 13:39:21| Parsing Config File: Unknown authentication scheme 'negotiate'.
2010/11/16 13:39:21| Can't use proxy auth because no authentication schemes are fully configured.
FATAL: ERROR: Invalid ACL: acl auth proxy_auth REQUIRED
Squid Cache (Version 3.0.STABLE8): Terminated abnormally.
CPU Usage: 0.012 seconds = 0.000 user + 0.012 sys
Maximum Resident Size: 0 KB
Page faults with physical i/o: 0
failed!
Me dá uma ajuda ai...porque eu ja revisei tudo e até agora não vi o erro.
Vou postar aqui o squid.conf
auth_param negotiate program /usr/lib/squid3/squid_kerb_auth -d -s HTTP/cnc.com@CNC.COM
auth_param negotiate children 20
auth_param negotiate keep_alive on
#Segue a configuração BASIC LDAP, basta descomentar as 4 linhas abaixo.
#O usuário fornecido deve ter permissão de consultar a base LDAP.
#auth_param basic program /usr/lib/squid3/squid_ldap_auth -R -b "DC=cnc,DC=com" -D "CN=Proxy-User,OU=Proxy-User,OU=internet,DC=cnc,DC=com" -w "123456" -f sAMAccountName=%s -P -v 3 -h 192.168.0.5
#auth_param basic children 20
#auth_param basic realm Autenticacao internet
#auth_param basic credentialsttl 2 hours
acl auth proxy_auth REQUIRED
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 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
http_access allow auth
http_access deny all
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
auth_param negotiate program /usr/lib/squid3/squid_kerb_auth -d -s HTTP/cnc.com@CNC.COM
auth_param negotiate children 20
auth_param negotiate keep_alive on
#Segue a configuração BASIC LDAP, basta descomentar as 4 linhas abaixo.
#O usuário fornecido deve ter permissão de consultar a base LDAP.
#auth_param basic program /usr/lib/squid3/squid_ldap_auth -R -b "DC=cnc,DC=com" -D "CN=Proxy-User,OU=Proxy-User,OU=internet,DC=cnc,DC=com" -w "123456" -f sAMAccountName=%s -P -v 3 -h 192.168.0.5
#auth_param basic children 20
#auth_param basic realm Autenticacao internet
#auth_param basic credentialsttl 2 hours
acl auth proxy_auth REQUIRED
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 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
http_access allow auth
http_access deny all
http_access allow manager localhost
http_access deny manager
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
A máquina já está no dominio etc.
[21] Comentário enviado por
ulisses.santos em 10/02/2011 - 17:36h:
Amigo boa tarde, quando eu rodo o comando DIG ele me retorna isso, que besterira posso estar fazendo?
; <<>> DiG 9.7.0-P1 <<>> -x 192.168.10.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 50203
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:
;1.10.168.192.in-addr.arpa. IN PTR
;; AUTHORITY SECTION:
168.192.in-addr.arpa. 7691 IN SOA prisoner.iana.org. hostmaster.root-servers.org. 2002040800 1800 900 604800 604800
;; Query time: 1 msec
;; SERVER: 192.168.7.1#53(192.168.7.1)
;; WHEN: Thu Feb 10 17:38:07 2011
;; MSG SIZE rcvd: 120
[22] Comentário enviado por
plague70 em 18/04/2011 - 14:38h:
como faco se eu tiver visitantes na empressa como eles vão fazer para usar a internet com proxy autenticado se eles não estão no mesmo dominio?????????
[23] Comentário enviado por
plague70 em 18/04/2011 - 14:38h:
e pra quem esta tendo erro com 2008 para gerar o key tem que ser feito com runas........
[24] Comentário enviado por
troppy em 18/04/2011 - 15:04h:
Aqui criamos como uma outra OU=
tipo:
usuarios.minhaempresa.com.br "OU=usuarios,DC=minhaempresa,DC=com,DC=br"
visitantes.minhaempresa.com.br "OU=visitantes,DC=minhaempresa,DC=com,DC=br"
o acesso será dado conforme a política de segurança da informação da tua empresa. aqui quando é algum parceiro, instrutor, auditor, visitante, whatever... é colocado na OU Visitante. a pessoa responsável pelo visitante abre um chamado na central de TI e é criada uma conta com uma senha padrão, e repassado para o usuário. criamos um portal em java para o usuário alterar a senha sem ter que entrar no domínio, essa senha não entra no domínio.
por enquanto a classe faz alteração em clear text por conta de uma config de compatibilidade do AD para funcionamento da autenticação de impressão do mainframe, mas resolvemos a parte cliente servidor com ssl, o trafego clear é só entre o srvapl e o AD
Quanto ao 2008 infelizmente eu não posso falar pois não possuo esse cenário para testar, usamos 2003 aqui. Mas se alguém puder dar um feedback para ver se funcionou.
[25] Comentário enviado por
hiroshibata em 05/08/2011 - 12:39h:
Pessoal,
Quando tento gerar uma keytab no Server AD Windows 2008 Server dá uma mensagem de erro.
c:\Users\Hiro\Desktop>ktpass -princ HTTP/proxy-auth.domain.com.br@DOMAIN.COM.BR
-mapuser squid2 -crypto rc4-hmac-nt -pass ???????????? -ptype KRB5_NT_PRINCIPAL
-out c:\proxy-auth.keytab
Targeting domain controller: SRVAD.domain.com.br
Using legacy password setting method
Failed to set property 'servicePrincipalName' to 'HTTP/proxy-auth.domain.com.br' on
Dn 'CN=Squid2,OU=Admin IT,OU=TI,DC=domain,DC=com,DC=br': 0x32.
WARNING: Unable to set SPN mapping data.
If squid2 already has an SPN mapping installed for HTTP/proxy-auth.domain.com.br, t
his is no cause for concern.
Failed to retrieve user info for squid2: 0x5.
Aborted.
O que isso significa? Alguém já se deparou com esse problema?
Provavelmente esse keytab é que está gerando erro no meu /var/log/squid3/cache.log,
onde diz:
2011/08/05 11:33:37| squid_kerb_auth: DEBUG: Got 'YR TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAARABDdAAAADw==' from squid (length: 59).
2011/08/05 11:33:37| squid_kerb_auth: DEBUG: Decode 'TlRMTVNTUAABAAAAl4II4gAAAAAAAAAAAAAAAAAAAAARABDdAAAADw==' (decoded length: 40).
2011/08/05 11:33:37| squid_kerb_auth: WARNING: received type 1 NTLM token
2011/08/05 11:33:37| authenticateNegotiateHandleReply: Error validating user via Negotiate. Error returned 'BH received type 1 NTLM token'
Você podem me ajudar?
Att,
Hiro