У меня есть настольный компьютер и ноутбук, которые я использую для разработки. Я сгенерировал ssh-ключ на основном компьютере (рабочем столе) для моего vps, который использует парольную фразу. С точки зрения лучших практик или соображений безопасности, лучше ли сгенерировать новый ssh-ключ на моем ноутбуке на тот же vps, или я должен просто скопировать ssh-ключи с настольного компьютера на портативный компьютер.
Все, что я прочитал в теме просто объясняется, как скопировать ключи ssh с одного компьютера на другой. Я не видел ничего, объясняющего плюсы / минусы создания нового ключа по сравнению с копированием существующего. (обе машины используются исключительно мной).
Я согласен с https://unix.stackexchange.com/questions/208495/ssh-key-authentication-with-multiple-computers . Вы можете сделать что угодно, но у каждого есть свои плюсы и минусы.
Я бы предпочел создать новый закрытый ключ SSH для каждой доверенной машины. Таким образом, если кто-то скомпрометирован, потребуется заменить только ключ для этой машины. Копирование закрытых ключей может также увеличить вероятность того, что кто-то другой получит к нему доступ. По сути, это становится единственной точкой отказа. Есть причина, по которой сайты, подобные BitBucket , рекомендуют своим пользователям ежегодно заменять ключи SSH.
Пока ваш закрытый ключ защищен парольной фразой хорошего качества, его можно безопасно копировать с одной машины на другую.
Копирование ключа в другое место увеличивает его уязвимость для третьей стороны, получающей доступ. Если вы повторно используете ключи и они скомпрометированы, у вас нет возможности узнать, какая рабочая станция была взломана. Я настоятельно рекомендую иметь набор ключей для каждой рабочей станции, чтобы было легко отозвать ключи, не теряя доступа где-либо еще.
Поскольку вы используете ключи вместо пароля для входа на свой сервер, я настоятельно рекомендую отключить аутентификацию по паролю на вашем сервере. SSH-сервер. Это поможет предотвратить атаки методом грубой силы на вашу службу SSH. Убедитесь, что вы уже успешно вошли в систему со своим ключом, иначе вы будете заблокированы.
$ sudo nano /etc/ssh/sshd_config
Затем в файле конфигурации найдите строку #PasswordAuthentication yes
И измените его на PasswordAuthentication no
Проверьте свой файл конфигурации, чтобы убедиться в отсутствии ошибок (отсутствие вывода означает отсутствие ошибок)
$ sudo sshd -t
Затем перезапустите демон SSH (при условии systemd)
$ sudo service ssh restart