SSH Agent Forwarding: включить только для одного хоста

Категория: Bash · Язык: Bash · Обновлено:

SSH agent forwarding позволяет удалённой машине использовать локально загруженный ключ для следующего SSH-подключения, например с bastion на внутренний Git-сервер. Включайте ForwardAgent только для конкретного доверенного хоста: процесс с доступом к forwarded socket может выполнять операции аутентификации вашим агентом, хотя не получает файл закрытого ключа.

Ограничить пересылку одним сервером

Добавьте отдельную секцию в ~/.ssh/config, заменив примерный хост:

Текст
Host build-server
    HostName build.example.net
    User deploy
    IdentityFile ~/.ssh/id_ed25519
    IdentitiesOnly yes
    ForwardAgent yes

Теперь ssh build-server применит forwarding только к этому псевдониму. Не помещайте ForwardAgent yes в глобальную секцию Host * и не включайте его для недоверенных машин.

Проверить применённые параметры

Bash
ssh -G build-server | grep -i '^forwardagent '

Ожидаемая строка — forwardagent yes. Команда ssh -G выводит вычисленную конфигурацию и не подключается к серверу. На Windows используйте доступные в вашей среде OpenSSH и grep либо проверьте настройку в ssh -G через PowerShell.