Как я могу изменить мою личную ключевую фразу?

У меня есть пара открытых / закрытых ключей. Закрытый ключ защищен паролем, и шифрование может быть RSA или DSA. Эти ключи вы генерируете с помощью ssh-keygen и вообще хранить под ~/.ssh,

Я хотел бы изменить пароль закрытого ключа. Как мне это сделать, на стандартной оболочке Unix?

Кроме того, как я могу просто удалить пароль? Просто поменять его на пустое?

2 ответа

Решение

Чтобы изменить кодовую фразу для вашего ключа DSA по умолчанию:

$ ssh-keygen -p -f ~/.ssh/id_dsa

затем укажите ваши старые и новые парольные фразы (дважды) в командной строке. (Использовать ~/.ssh/id_rsa если у вас есть ключ RSA.)

Подробнее от man ssh-keygen:

[...]
SYNOPSIS
    ssh-keygen [-q] [-b bits] -t type [-N new_passphrase] [-C comment]
               [-f output_keyfile]
    ssh-keygen -p [-P old_passphrase] [-N new_passphrase] [-f keyfile]
[...]
     -f filename
             Specifies the filename of the key file.
[...]
     -N new_passphrase
             Provides the new passphrase.

     -P passphrase
             Provides the (old) passphrase.

     -p      Requests changing the passphrase of a private key file instead of
             creating a new private key.  The program will prompt for the file
             containing the private key, for the old passphrase, and twice for
             the new passphrase.
[...]

Если у вас нет ssh-keygen установлен, вы также можете использовать openssl прямо

key="/path/to/your.key"
algo="-des3" # or -aes256 or ...

openssl rsa $algo -in "$key" -out "$key.new"

# and replace old key with new one
mv "$key.new" "$key"

Удалите ваши открытые / закрытые ключи SSH:

rm ~/.ssh/id_rsa*

Восстановите пару ключей, выбрав новую фразу-пароль:

ssh-keygen -t rsa -f ~/.ssh/id_rsa

Добавьте только что созданный закрытый ключ в цепочку ключей OS X, чтобы сохранить фразу-пароль и автоматически разблокировать ее:

ssh-add -K ~/.ssh/id_rsa

Скопируйте открытый ключ в буфер обмена OS X для добавления в веб-сервисы, такие как GitHub и т. Д.

cat ~/.ssh/id_rsa.pub | pbcopy

Добавьте ваш недавно созданный открытый ключ к ~/.ssh/authorized_keys файл удаленного сервера. Будьте уверены, чтобы обеспечить правильные разрешения как удаленного ~/.ssh папка (700) и ~/.ssh/authorized_keys (600). Вы можете исследовать с помощью ssh-copy-id чтобы облегчить этот процесс.

Другие вопросы по тегам