Eu tenho um entendimento básico de como o Kerberos funciona em um ambiente do Active Directory e os métodos que ele usa para autenticar usuários e estações de trabalho na rede, mas minha pergunta é .. como o Kerberos depende da emissão de um token de segurança que o usuário final usa para acessar recursos de rede, como os sistemas (laptops) que não estão no domínio conseguem acessar os mesmos recursos de rede usando apenas o nome de usuário e a senha de um usuário do diretório ativo?
Eu acho que faria mais sentido se, apenas usando as credenciais do usuário, o Kerberos gera um token de segurança e o emite ao sistema, mas parece que deve haver mais segurança para impedir que um sistema não-domínio acesse os recursos de rede.
Se alguém pudesse me esclarecer, eu apreciaria!
Respostas:
NTLM é usado neste caso ...
http://msdn.microsoft.com/en-us/library/windows/desktop/aa378749(v=vs.85).aspx
http://en.wikipedia.org/wiki/NTLM
fonte
Depende de quais "recursos de rede" estão envolvidos. Em um computador Windows ingressado no domínio em que você está conectado, há pelo menos duas identidades de Kerberos do cliente em jogo:
Também há host / estação de trabalho @ DOMAIN, mas geralmente é a identificação de um serviço em execução no host, sendo acessado de outro lugar. Se um processo privilegiado no host quiser fazer algo - digamos, adicione seu nome ao DNS usando o DNS dinâmico autenticado pelo Kerberos - ele usará sua identidade para fazer isso, a estação de trabalho $ @ DOMAIN. Se você, em sua sessão de login, acessar algum recurso por conta própria - digamos um compartilhamento de rede CIFS ou um URL HTTP autenticado -, a identidade do cliente será o seu nome principal, usuário @ DOMAIN (credenciais para as quais são adquiridas automaticamente para você usando o senha que você inseriu para efetuar login). Da sua pergunta, você parece pensar que alguma combinação está envolvida; não é, eles são separados.
É por isso que não há problema em usar o Kerberos para acessar recursos baseados no Windows de outras plataformas. Você também pode digitar "usuário kinit" em uma caixa Linux, digite sua senha para obter uma credencial Kerberos (TGT) de um controlador de domínio e, em seguida, use o Firefox para acessar uma página da Web autenticada por Kerberos no IIS. Os protocolos para tudo isso são padrão e você não precisa de nada, exceto sua credencial de usuário.
Uma resposta anterior alegou que o NTLM é necessário neste caso; isso é falso (embora certamente possa ser usado). No entanto, quando você acessa algum recurso de um computador que não é de domínio e é solicitado seu nome de usuário e senha, você não sabe necessariamente qual método de autenticação está realmente sendo usado. Pode usar o Kerberos. Ele também pode retornar a um mecanismo baseado em senha, no qual ele envia seu nome de usuário e senha ao servidor para verificação e, em seguida, armazena em cache sua senha para que você não precise digitá-la novamente. Muitos protocolos permitem ambos via esquemas de abstração como SASL. Você teria que olhar no fio para ver o que está acontecendo.
fonte
As instruções abaixo são sobre como autenticar em um servidor Samba usando o Kerberos de um cliente Windows 7/10 (talvez outros). Não testei para outra versão do cliente e servidor:
No cliente Windows, "Executar como administrador" cmd.exe. Em seguida, insira este comando para fornecer ao Windows o conhecimento do controlador de domínio Kerberos (KDC) para o kerberos REALM.COM.
Se o KDC estiver no DNS:
De outra forma:
(Digite mais KDCs para a região REALM.COM, se existirem. Além disso, pode adicionar outras regiões nos dois estilos.)
Em seguida, use o Explorer para acessar o compartilhamento de rede de interesse. (Por exemplo,
\\samba.realm.com\share
na barra de endereço.) Um prompt de senha será aberto se o compartilhamento estiver protegido.Você precisará especificar a região no nome de usuário. Isso pode ser feito como
[email protected]
ouREALM.COM\user
.Em seguida, digite a senha.
fonte
Conheço pelo menos um sistema que pode usar o kerberos que funciona em estações de trabalho que não são de domínio. O nome deste aplicativo é "Portal SAP NETWEAVER". Realizei um sniffing de rede na estação de trabalho e na comunicação, quando me conecto ao aplicativo Web, que fica entre a estação de trabalho e os controladores de domínio. Antes disso, é feita uma consulta DNS para os registros srv _krb do domínio que eu passei para o campo de nome de usuário (deve ser o formato de domínio FQDN, por exemplo, meudominio.local \ nome_de_usuário). Depois disso, alguns quadros kerberos ocorrem.
fonte