Мне было интересно, считается ли безопасным использование одного и того же ключа SSH для нескольких сайтов? (например, github, bitbucket, heroku и т. д.)?
Или рекомендуется создавать разные ключи SSH для каждого сайта / использования?
Вы даете только открытый ключ для этих сайтов. С этим ключом они ничего не могут сделать, кроме определения того, что он тот же. Если вы беспокоитесь о своей анонимности, используйте отдельные ключи (и настройте свой ssh-клиент так, чтобы он предлагал только один для каждого сервера, а не для всех).
Нет риска скомпрометировать ваш закрытый ключ, если вы используете его правильно и не позволяете ему покинуть ваш компьютер. Конечно, если это каким-то образом скомпрометировано, это скомпрометирует все ваши учетные записи.
Но наиболее вероятным сценарием компрометации вашего ключа может быть троянец или аналогичный на вашем компьютере, в этом случае все другие ваши ключи также будут скомпрометированы. Таким образом, здесь достаточно использовать только один открытый ключ (для каждого клиентского компьютера).
Мы используем одни и те же ключи ssh
на нескольких сайтах, но это только потому, что мы контролируем все сайты (как на большом количестве сайтов, контролируемых компанией).
Мы не будем делать это для сайтов, которые контролируются третьими сторонами, поскольку это имеет последствия для безопасности.