certutil sobre ssh (servidor RPC indisponível)

certutil sobre ssh (servidor RPC indisponível)

Ao executar uma certutilsolicitação de um PowerShell local, está tudo bem.

PS C:\Users\admuser> certutil -ping -config 'caserver\ca'
Connecting to caserver\ca ...
Server "ca" ICertRequest2 interface is alive (32ms)
CertUtil: -ping command completed successfully.
PS C:\Users\admuser>

Fazendo o mesmo de um host Linux conectado com OpenSSH ao mesmo servidor Windows, obtemos um erro.

PS C:\Users\admuser> certutil -ping -config 'caserver\ca'
Connecting to caserver\ca ...
Server could not be reached: The RPC server is unavailable. 0x800706ba (WIN32: 1722 RPC_S_SERVER_UNAVAILABLE) -- (16ms)

CertUtil: -ping command FAILED: 0x800706ba (WIN32: 1722 RPC_S_SERVER_UNAVAILABLE)
CertUtil: The RPC server is unavailable.
PS C:\Users\admuser>

Alguma idéia do que há de errado em conectar-se por ssh e depois executar o comando, ambos executados a partir de um PowerShell local?

Responder1

O problema aqui é a autenticação com uma chave ssh. Se você fizer isso, não poderá usar autenticação adicional, que é exigida pelo certutile, portanto, pelo serviço RPC. Este comportamento está um tanto oculto, documentado pela MS.

https://learn.microsoft.com/en-us/windows-server/administration/openssh/openssh_keymanagement

Uma sessão remota aberta por meio de autenticação baseada em chave não possui credenciais de usuário associadas e, portanto, não é capaz de autenticação de saída como usuário; isso ocorre por design.

Portanto, se você precisar de autenticação adicional no ecossistema MS, não poderá usar a autenticação baseada em chave. Você tem que usar nome de usuário e senha para ssh.

informação relacionada