O chaveiro de desbloqueio do OSX Sierra parou de funcionar no ssh

O chaveiro de desbloqueio do OSX Sierra parou de funcionar no ssh

Conectamos a um MAC com SSH e executamos um script que contém a linha

security unlock-keychain -p XXX

Mas como atualizamos a máquina para “macOS Sierra” recebemos um erro

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

Alguma ideia?

Responder1

Quando você se conecta via SSH, parece que securitynão sabe sobre as chaves do usuário logado: se você emitir um security list-keychainscomando, verá apenas as chaves do sistema, em vez das chaves do usuário.

O que você precisa fazer é especificar o arquivo das chaves que deseja desbloquear:

security unlock-keychain -p XXX "keychain_path_here"

Onde keychain_path_hereestá algo parecido /Users/username/Library/Keychains/login.keychain-db.

Responder2

Se você não quiser especificar uma chave para desbloquear cada vez que fizer ssh em uma máquina, você pode criar uma chave ssh e copiá-la para a máquina de destino:

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

Depois de copiar seu ID ssh para o host, você poderá desbloquear as chaves de login padrão para o usuário com o qual está fazendo login. Se você tiver várias contas de usuário com as quais precisa fazer login, poderá usar ssh-copy-id para cada um dos usuários.

(ssh-copy-id não está incluído no macOS por padrão. Você pode instalá-lo com homebrew)

informação relacionada