3

Мы подключаемся к MAC с SSH и запускаем скрипт, содержащий строку

security unlock-keychain -p XXX

Но так как мы обновили машину до "macOS Sierra", мы получили ошибку

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

Есть идеи?

2 ответа2

5

Когда вы подключаетесь через SSH, похоже, что security не знает о цепочках ключей вошедшего в систему пользователя: если вы выполните команду security list-keychains , вы увидите только цепочку ключей System, а не цепочки ключей пользователя.

Что вам нужно сделать, это указать файл цепочки для ключей, который вы хотите разблокировать:

security unlock-keychain -p XXX "keychain_path_here"

Где keychain_path_here есть что-то вроде /Users/username/Library/Keychains/login.keychain-db .

0

Если вы не хотите указывать цепочку для ключей для разблокировки каждый раз, когда вы подключаете ssh к компьютеру, вы можете создать ключ ssh и скопировать его на целевой компьютер:

ssh-keygen
ssh-copy-id username@remote.host

Скопировав свой ssh-идентификатор на хост, вы сможете разблокировать цепочку ключей входа по умолчанию для пользователя, с которым вы входите в систему. Если у вас есть несколько учетных записей, с которыми вам нужно войти, вы можете использовать ssh-copy-id для каждого из пользователей.

(ssh-copy-id не включен в macOS по умолчанию. Вы можете установить его с доморощенного)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .