Как мне управлять безопасным, личным ключом SSH?


14

Мне нужен персональный ключ ssh, такой что:

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

Я знаю, что есть много ресурсов, объясняющих, как использовать инструменты управления ключами ssh. Однако я нахожу их довольно сложными, и я не смог сохранить свой закрытый ключ при выполнении новых установок в прошлом. Поэтому я бы предпочел услышать некоторые лучшие практики от кого-то с опытом, делающим именно то, что я хочу делать.

Ответы:


9

Проходя через ваши очки:

  • Когда вы генерируете ключ SSH, он сохраняется ~/.ssh/как id_rsa(или id_dsa). Вы можете перемещать это от машины к машине, как вы хотите.

  • Вы можете обеспечить его шифрование путем шифрования /home/. Есть несколько наборов инструкций о том, как сделать это в Интернете, но (никогда не делая этого сам) я не могу честно предлагать одно за другим. Тот, что на UbuntuForums, кажется таким же хорошим, как и любой другой. Сделать это на новой установке проще (вы можете сделать это в установщике), но это не обязательно.

  • Когда вы генерируете свою пару ключей, убедитесь, что вы установили ключевую фразу. Это означает, что даже если кто-то получит ваш закрытый ключ, ему все равно понадобится этот токен для его использования.

  • ssh-keygen -eсгенерирует ваш хэш открытого ключа из вашего личного ключа. Сделайте да, вам не нужно подтверждать это (хотя это тоже не сложно сделать - оно сохраняется как ~/.ssh/id_rsa.pub).


Разве установка пароля не считается шифрованием ключа?
Винсент Повирк

@ Винсент вроде, конечно. Я не уверен, насколько параноиком ты пытаешься быть здесь. Если вы хотите минимизировать вероятность того, что кто-то еще получит ключ, вставьте его в зашифрованный раздел. Если вы довольны тем, что люди могут получить его (если они получают физический доступ), но не могут использовать его без ключевой фразы, вы можете пропустить этот шаг.
Оли
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.