PowerScale: Falha de autenticação de atributo indefinido após o upgrade para o OneFS 9.5 ou posterior para usuários do Active Directory
Summary: Ao fazer upgrade de qualquer versão anterior para o OneFS 9.5.x ou versões posteriores, as verificações de código pré-upgrade podem identificar um valor NULL/0 para "msds-SupportedEncryptionTypes". Se não for resolvida, isso pode resultar em falhas de autenticação (DU). ...
Symptoms
Se um cluster receber upgrade para o OneFS 9.5 e o valor do atributo da conta de máquina msDS-SupportedEncryptionTypes não está definido, a autenticação pode falhar. O provedor do Active Directory pode parecer estar em um estado sem estilo ou pode estar ausente no isi auth Saída de status.
Por padrão, esse valor é definido como 31 (ou 0xF1 em hexadecimal) quando o cluster ingressa pela primeira vez no Active Directory. De acordo com o Guia de configuração de segurança do OneFS 9.5, encontrado na página do produto Suporte Dell PowerScale OneFS, temos muitos tipos de criptografia compatíveis com SMB e Kerberos.
Se alguém quiser modificar o atributo para
msDS-SupportedEncryptionTypes, isso é aceitável se não excluir os tipos de criptografia necessários para funcionar. Por exemplo, alguns podem querer ajustar o valor para omitir o suporte para RC4.
Exemplo do atributo de Propriedades com recursos avançados habilitados:

Figura 1: O valor para msDS-SupportedEncryptionTypes O atributo é exibido como <não definido>.
Exemplo do PowerShell:
DistinguishedName : CN=NINEFIVEOH,CN=Computers,DC=testdomain,DC=local DNSHostName : ninefiveoh.testdomain.local Enabled : True Name : NINEFIVEOH ObjectClass : computer ObjectGUID : 8dbed342-6a12-41ff-889f-8249cc39b673 SamAccountName : NINEFIVEOH$ SID : S-1-5-21-3532647020-1821455699-3245163308-1110 UserPrincipalName :
O resultado acima não inclui um campo para o atributo msDS-SupportedEncryptionTypes, que geralmente relataria um valor inteiro.
Veja abaixo um exemplo de outro cluster em que vemos que o valor definido é preenchido para o atributo:
DistinguishedName : CN=COREBUDDY,CN=Computers,DC=testdomain,DC=local DNSHostName : corebuddy.testdomain.local Enabled : True msDS-SupportedEncryptionTypes : 31 <<<<<<<<<<<<<<<< Name : COREBUDDY ObjectClass : computer ObjectGUID : e29236a7-cc36-4686-bca9-010ba4143ca3 SamAccountName : COREBUDDY$ SID : S-1-5-21-3532647020-1821455699-3245163308-1104 UserPrincipalName :
Outro sintoma é que há mensagens específicas preenchendo /var/log/lsass.d.log conforme mostrado abaixo:
2023-04-14T02:40:07.877593+00:00 <30.3> ninefiveoh-1(id1) lsass[13628]: [lsass] Failed to read msDS-SupportedEncryptionTypes for account CN=NINEFIVEOH,CN=Computers,DC=testdomain,DC=local 2023-04-14T02:40:07.877656+00:00 <30.3> ninefiveoh-1(id1) lsass[13628]: [lsass] Error 40044 (symbol: LW_ERROR_NO_SUCH_DOMAIN) occurred while putting an LDAP connection back in the domain free list. 2023-04-14T02:40:23.903189+00:00 <30.3> ninefiveoh-1(id1) lsass[13628]: [lsass] Failed to read msDS-SupportedEncryptionTypes for account CN=NINEFIVEOH,CN=Computers,DC=testdomain,DC=local 2023-04-14T02:40:23.903268+00:00 <30.3> ninefiveoh-1(id1) lsass[13628]: [lsass] Error 40044 (symbol: LW_ERROR_NO_SUCH_DOMAIN) occurred while putting an LDAP connection back in the domain free list.
Para confirmar se esse é o problema, o administrador deve verificar o objeto da conta de máquina do cluster no Active Directory. Isso pode ser feito de duas maneiras:
- Em um DC, abra Active Directory Users and Computers (ADUC).
- Na faixa superior da janela, selecione Exibir e clique em Recursos Avançados.
- Clique com o botão direito do mouse no objeto e vá para a guia Editor de atributos e role a tela até encontrar o
msDS-SupportedEncryptionTypesatributo. - Clique duas vezes no campo Attribute e examine o número decimal relatado na nova janela.
- Use o seguinte comando do PowerShell em um DC com o nome correto da conta de máquina.
Get-ADComputer -Identity <machine account name> -Properties msDS-SupportedEncryptionTypes
Para os itens acima, os administradores devem usar uma conta no Active Directory com privilégios em nível de domínio para resolver o problema.
Cause
Exclusão manual do msDS-SupportedEncryptionTypes no objeto de conta de máquina do cluster faz com que o Active Directory relate um valor NULL. Isso falha nas verificações no código mais recente como parte de um pacote de aprimoramentos para melhor suporte de segurança.
Clusters mais antigos que ingressaram no Active Directory sem definir esse valor também podem ficar suscetíveis a esse problema. Isso ocorre porque nenhum valor é definido, a menos que uma reassociação ao Active Directory tenha sido realizada.
Resolution
Solução temporária:
Altere o atributo para um valor diferente de um valor vazio. Uma opção segura é escolher o valor padrão de 31 ou 24, dependendo dos requisitos de segurança. Isso é feito por meio da interface do usuário ou pelo PowerShell.
Uma lista de valores e quais tipos de criptografia eles oferecem suporte são encontrados no blog do site da Microsoft.
O comando a seguir (com o nome correto da conta da máquina e o número inteiro inseridos) pode ser usado por um administrador do Active Directory em um DC em vez da interface do usuário para atribuir um valor ao atributo.
Set-ADComputer -Identity COMPUTERNAME$ -Add @{'msDS-SupportedEncryptionTypes'="<INTEGER>"}
O exemplo abaixo define o msDS-SupportedEncryptionTypes atributo ao valor padrão 31 para a conta da máquina do cluster NINEFIVEOH$:
Set-ADComputer -Identity NINEFIVEOH$ -Add @{'msDS-SupportedEncryptionTypes'="31"}
Depois que as alterações são aplicadas, elas devem ser replicadas para todos os controladores de domínio dentro do ambiente do Active Directory. Uma atualização de autenticação ou reinicialização de LSASS direcionada no cluster pode ser necessária para limpar a condição depois.
A engenharia da Dell publicou aprimoramentos de código no OneFS 9.5.0.3 que resolvem esse problema. Os administradores ainda poderão ver as pré-verificações de upgrade do IOCA falharem se não tiverem um valor definido antes do upgrade. Se um administrador tiver limitado os privilégios do cluster no AD para modificar atributos, ele DEVERÁ atualizar manualmente o atributo antes que qualquer atividade de upgrade ocorra. A falha em atualizar o atributo antes do upgrade, quando o cluster não tem privilégios suficientes para fazer isso, resulta em indisponibilidade de dados.
Nota: O OneFS 9.5 e versões posteriores exigem o atributo
msDS-SupportedEncryptionTypes. Os administradores que executam versões do Windows Server que não têm ou suportam esse atributo devem atualizar seus controladores de domínio. Não há solução temporária para esse requisito. A falha em ter controladores de domínio em versões compatíveis do Windows Server antes do upgrade do OneFS pode resultar em indisponibilidade de dados.
Additional Information
Aqui estão alguns recursos recomendados relacionados a este tópico que podem ser de interesse:
- PowerScale: Como executar a ferramenta Isilon On-Cluster Analysis (IOCA)
- Patches atuais do PowerScale OneFS