Назад | Перейти на главную страницу

Несколько закрытых ключей SSH для одного хоста

Как я могу сохранить 2 разных закрытых ключа SSH для одного и того же хоста? Я пробовал две записи в / etc / ssh / ssh_config для одного и того же хоста с разными ключами, и я также пытался поместить оба ключа в один и тот же файл и ссылаться на него из одного параметра хоста, однако оба не работают.

Более подробно: я использую сервер Ubuntu (12.04) и хочу подключиться к GitHub через SSH, чтобы загрузить последний исходный код для своих проектов. На одном сервере работает несколько проектов, и каждый проект имеет репозиторий GitHub со своим уникальным пара ключей развертывания. Так что хост всегда один и тот же (github.com), но ключи должны быть разными в зависимости от того, какое репо я использую.

Разные /etc/ssh/ssh_config версии, которые я пробовал:

Host github.com
    IdentityFile /etc/ssh/my_project_1_github_deploy_key
    StrictHostKeyChecking no
Host github.com
    IdentityFile /etc/ssh/my_project_2_github_deploy_key
    StrictHostKeyChecking no

и это с обоими ключами в одном файле:

Host github.com
    IdentityFile /etc/ssh/my_project_github_deploy_keys
    StrictHostKeyChecking no

Мне тоже не повезло. Любая помощь будет принята с благодарностью!

Я бы сделал так:

Host project_1
    HostName github.com
    IdentityFile /etc/ssh/my_project_1_github_deploy_key

Host project_2
    HostName github.com
    IdentityFile /etc/ssh/my_project_2_github_deploy_key

а затем используйте project_1 или project_2 в качестве хоста для доступа к репозиторию.

Вы можете предоставить несколько файлов идентификации, которые SSH будет пытаться последовательно предпринимать, пока один из них не сработает или все они не выйдут из строя.

Host github.com
    IdentityFile /etc/ssh/my_project_1_github_deploy_key
    IdentityFile /etc/ssh/my_project_2_github_deploy_key
    StrictHostKeyChecking no