El llavero de desbloqueo de OSX Sierra dejó de funcionar dentro de ssh

El llavero de desbloqueo de OSX Sierra dejó de funcionar dentro de ssh

Nos conectamos a una MAC con SSH y ejecutamos un script que contiene la línea

security unlock-keychain -p XXX

Pero desde que actualizamos la máquina a "macOS Sierra" aparece un error

security: SecKeychainUnlock <NULL>: The user name or passphrase you entered is not correct.

¿Algunas ideas?

Respuesta1

Cuando se conecta a través de SSH, parece que securityno sabe acerca de los llaveros del usuario que inició sesión: si emite un security list-keychainscomando, solo verá el llavero del sistema, en lugar de los llaveros del usuario.

Lo que debes hacer es especificar el archivo de llavero que deseas desbloquear:

security unlock-keychain -p XXX "keychain_path_here"

¿Dónde keychain_path_herehay algo así /Users/username/Library/Keychains/login.keychain-db?

Respuesta2

Si no desea especificar un llavero para desbloquear cada vez que ingresa a una máquina mediante ssh, puede crear una clave ssh y copiarla en la máquina de destino:

ssh-keygen
ssh-copy-id [email protected]

Después de copiar su identificación ssh al host, podrá desbloquear el llavero de inicio de sesión predeterminado para el usuario con el que inicia sesión. Si tiene varias cuentas de usuario con las que necesita iniciar sesión, puede usar ssh-copy-id para cada uno de los usuarios.

(ssh-copy-id no está incluido en macOS de forma predeterminada. Puedes instalarlo con homebrew)

información relacionada