certutil sobre ssh (el servidor RPC no está disponible)

certutil sobre ssh (el servidor RPC no está disponible)

Al ejecutar una certutilsolicitud desde un powershell local, todo está bien.

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>

Al hacer lo mismo desde un host Linux conectado con OpenSSH al mismo servidor Windows obtenemos un error.

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>

¿Alguna idea de qué hay de malo en conectarse a través de ssh y luego ejecutar el comando, ambos se ejecutan desde un PowerShell local?

Respuesta1

El problema aquí es la autenticación con una clave ssh. Si hace esto, no podrá utilizar más autenticación, que es requerida por el certutilservicio RPC. Este comportamiento está algo oculto y documentado por MS.

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

Una sesión remota abierta mediante autenticación basada en claves no tiene credenciales de usuario asociadas y, por lo tanto, no es capaz de realizar autenticación saliente como usuario; esto es así por diseño.

Por lo tanto, si necesita una autenticación adicional en el ecosistema de MS, no podrá utilizar la autenticación basada en claves. Tienes que ir con nombre de usuario y contraseña para ssh.

información relacionada