Использование ключей SSH из резервной копии на другом компьютере для доступа к серверу

Я создал сервер и настроил SSH, чтобы не разрешать вход в систему root и отключать доступ по паролю, поэтому принимает только SSH-ключ для входа.

У меня есть машина A с ключом, и я могу получить доступ к моему серверу с этой машины без каких-либо проблем.

Также на всякий случай есть резервная копия этих ключей.

Допустим, моя машина A завтра умирает, а у меня есть новая машина B, и, конечно же, нужен доступ к моему серверу.

Здесь я не знаю, как все работает. Должен ли я просто скопировать ключи из моей резервной копии на машину B, и это позволит мне получить доступ к моему серверу? Или ключи должны быть импортированы с помощью какой-нибудь команды OpenSSH?

Итак, мои первые сомнения касаются импорта резервных копий, потому что я боюсь полностью потерять доступ к моему серверу.

Второе касается ключевой фразы, которую я установил для своего ключи на машине А. Это все еще действительно для моих скопированных ключей? Или через импорт мне нужно установить новую парольную фразу на новой машине.

Спасибо.

0
задан 10 July 2018 в 08:19
4 ответа

SSH-ключ состоит из двух частей:

  • закрытый ключ , который должен быть защищен надежным паролем
  • открытый ключ (обычно заканчивающийся с суффиксом .pub), который следует скопировать на сервер

Вы можете свободно перемещать обе части по своему усмотрению, хотя я бы не рекомендовал вам размещать частную часть публично (даже зашифрованной).

Частная часть - это размещен на любой из ваших локальных машин в каталоге ~ / .ssh /. Ожидаемые имена ключей:

  • id_rsa
  • id_rsa-cert
  • id_dsa
  • id_dsa-cert
  • id_ecdsa
  • id_ecdsa-cert
  • id_ed25519
  • id_ed25519-cert

Если ваш key имеет одно из соответствующих имен, и вам хорошо идти. Если вам нужно использовать какой-то конкретный ключ, вы должны использовать параметр -i

/usr/bin/ssh -i <path_to_key_file>

То же самое и для части общедоступного сервера. В домашнем каталоге пользователей должен существовать файл ~ / .ssh / authorized_keys. Этот файл содержит все ключи publc, которым разрешено входить в систему как пользователь - по одному в каждой строке. Часть комментария можно опустить.

При этом на любом сервере вы хотели бы использовать любой из ваших ключей SSH,скопируйте публичную часть на новую строку в файле authorized_keys.

Я бы посоветовал вам изучить справочную страницу SSHD (man sshd), особенно часть «AUTHORIZED_KEYS FILE FORMAT».

Также я думаю, что я также должен предупредить вас, что есть некоторые правила для разрешений файловой системы для домашний каталог, каталог ~ / .ssh и файл ~ / .ssh / authorized_keys, как указано на странице руководства sshd, короче говоря, он не может быть доступен для записи другими.

  ~ / .ssh / authorized_keys
  Перечисляет открытые ключи (DSA / ECDSA / RSA), которые можно использовать для входа в систему в качестве этого пользователя.  Формат этого файла описан
  выше.  Содержимое файла не очень важно, но рекомендуемые разрешения для чтения / записи для пользователя и
  недоступен для других.
  Если этот файл, каталог ~ / .ssh или домашний каталог пользователя доступны для записи другим пользователям, то этот файл может быть изменен.
  заменены или заменены неавторизованными пользователями.  В этом случае sshd не позволит использовать его, если для параметра StrictModes не указано
  был установлен на «нет».
 
0
ответ дан 4 December 2019 в 11:09

Копирование резервных копий ключей на место будет работать нормально. Никакой специальной команды импорта не требуется. Парольная фраза - это собственно ключевой файл (в частности, это вход для функции получения ключа для генерации ключа шифрования для данных закрытого ключа).

4
ответ дан 4 December 2019 в 11:09

Просто скопируйте закрытый ключ (с машины A) на другую машину (B). и вы можете войти на сервер с помощью команды

ssh -i private_keyfile.key username@xxx.xxx.xxx.xxx 

. Примечание: Предположим, вы уже скопировали открытый ключ из машины A в authorized_key на сервере.

2
ответ дан 4 December 2019 в 11:09

Все, что вам нужно, это пара из двух ключей . Общественные и частные. Не стесняйтесь копировать его в другую среду (особенно частную, которая лежит только на гостевой машине) и попробуйте проверить. Для этой пары генерируется кодовая фраза, поэтому она нужна вам всегда.

1
ответ дан 4 December 2019 в 11:09

Теги

Похожие вопросы