Eu tenho uma configuração de floresta multidomínio MS ADDS simples com um domínio pai e um subdomínio. Juntei um servidor RHEL 8 com sucesso ao subdomínio usando esta documentação oficial . Todos os SOs foram configurados usando o máximo possível de padrões. Eu posso SSH com sucesso no servidor RHEL usando uma conta AD do subdomínio. Mas quando tento usar uma conta do domínio pai, o login falha. Assim que envio o nome de usuário do domínio pai, journalctl
relata o seguinte erro:
sssd_be[...]: GSSAPI Error: Unspecified GSS failure. Minor code may provide more information (KDC has no support for encryption type)
Verifiquei os DCs de cada domínio e posso confirmar que todos os DCs suportam os mesmos três tipos de criptografia padrão (que são armazenados no msDS-SupportedEncryptionTypes
atributo de cada conta de computador DC):
- RC4_HMAC_MD5
- AES128_CTS_HMAC_SHA1_96
- AES256_CTS_HMAC_SHA1_96
Também confirmei que o RHEL 8 oferece tipos de criptografia adequados ( /etc/crypto-policies/back-ends/krb5.config
):
[libdefaults]
permitted_enctypes = aes256-cts-hmac-sha1-96 aes256-cts-hmac-sha384-192 camellia256-cts-cmac aes128-cts-hmac-sha1-96 aes128-cts-hmac-sha256-128 camellia128-cts-cmac
Portanto, deve haver duas correspondências: aes128-cts-hmac-sha1-96
e aes256-cts-hmac-sha1-96
. Como já disse, está funcionando bem para o subdomínio. Então, por que não há um tipo de criptografia adequado para o domínio pai?
As propriedades de uma confiança do AD incluem uma propriedade chamada "O outro domínio oferece suporte à criptografia Kerberos AES". Por padrão, esta opção não está marcada. Nesse cenário, isso leva ao fato de que o domínio pai não pode oferecer tipos de criptografia AES para Kerberos. Portanto, a única opção é
RC4_HMAC_MD5
. No RHEL 8, a criptografia RC4 foi preterida e desabilitada por padrão. Portanto, não há realmente nenhum tipo de criptografia disponível para ser acordado entre o RHEL e o domínio pai.Depois de marcar a opção "O outro domínio suporta criptografia Kerberos AES", a autenticação também funcionou para o domínio pai.
Se você deseja definir essa configuração programaticamente, aqui está.