С версией openssh 7.3 и выше это легко. Используйте параметр ProxyJump в файле конфигурации.
# Add to ~/.ssh/config
Host bastion
Hostname bastion.client.com
User userForBastion
IdentityFile ~/.ssh/bastion.pem
Host appMachine
Hostname appMachine.internal.com
User bastion
ProxyJump bastion # openssh 7.3 version new feature ProxyJump
IdentityFile ~/.ssh/appMachine.pem. #no need to copy pem file to bastion host
Команды для запуска для входа в систему или копирования
ssh appMachine # no need to specify any tunnel.
scp helloWorld.txt appMachine:. # copy without intermediate jumphost/bastion host copy.**
, вы можете указать хост хоста бастиона, используя опцию «-J» для команды ssh, если она не настроена в файле конфигурации ,
Заметка scp, похоже, не поддерживает флаг «-J». (я не мог найти в man-страницах. Однако над scp работает с настройкой файла конфигурации)