Пробросить SSH-ключ на удалённый хост

Как сходить с промежуточного сервера в приватный репозиторий, не копируя туда приватный ключ — и почему у этого есть цена

ssh -A user@bastion
Host bastion
    HostName bastion.example.com
    User deploy
    ForwardAgent yes
ssh -A user@bastion 'ssh-add -l'

Смысл: приватный ключ остаётся на вашей машине, а удалённый хост через сокет агента просит вашу машину подписать запрос. Скопировать ключ он не может.

Цена: root на промежуточном хосте (и любой, кто дотянется до сокета агента) может пользоваться вашим ключом, пока сессия открыта. Подписать чужой запрос — да; забрать ключ — нет. Поэтому ForwardAgent yes глобально в Host * ставить не стоит: включайте адресно для хостов, которым доверяете.

Альтернатива без проброса — ProxyJump (ssh -J bastion target): промежуточный хост становится только транспортом, агент до него вообще не доезжает.