Допустим, есть два ключа, A
и B
оба они действительны для user@host
аутентификации с открытым ключом. Так authorized_keys
как настроено на различное поведение в зависимости от ключа, ~/.ssh/config
на клиенте используется что-то вроде
Host A.host
HostName host
User user
IdentityFile ~/.ssh/A
Host B.host
HostName host
User user
IdentityFile ~/.ssh/B
Это отлично работает. Однако в тот момент, когда я использую ssh-agent
и добавляю оба ключа A
и B
(например, чтобы ввести их парольные фразы при входе в систему, а не когда я вызываю соответствующий ssh A.host
или ssh B.host
), соединение всегда будет использовать один и тот же идентификатор для обоих виртуальных хостов. Есть ли способ указать, какой хранимый ключ ssh
следует использовать, ssh-agent
не удаляя другой ключ?
IdentitiesOnly yes
. Это также ответ на другой вопрос, который странным образом закончился на SU ... Я попробую это завтраОтветы:
Как уже было сказано в другом месте , хитрость заключается в добавлении опции,
IdentitiesOnly yes
которая гарантирует, что будут использоваться только настроенные ключи, даже если другие доступны от агента.источник