우리가 액세스하는 데 사용하는 하드웨어 jump hosts
입니다. 이러한 호스트는 수명이 짧으며(1일 미만) 생성될 때마다 다릅니다. 로컬 파일을 구성하여 실제 하드웨어 로 .ssh/config
전달 aliases
하고 .aliases
jump host
다음 명령을 시도했지만 실패했습니다.
ssh <jumphost> -t bash -ci ssh <hostalias>
시도해 볼 수 있는 옵션이 있나요?
jumphost
손글씨는 자주 바뀌므로 신경쓰지 마세요. 저는 단지 해당 호스트로 점프한 다음 거기에서 실제 하드웨어로 점프하는 프로세스를 자동화하는 방법을 원합니다.
답변1
당신의 .ssh/config
:
Host farsidehost
HostName acutalremotehostname.example.com
ProxyJump bastionhost.example.com
그런 다음 실행할 수 있습니다 ssh farsidehost
.
업데이트에서 알 수 있듯이 점프 호스트의 이름이 자주 변경되는 경우 명령줄에서 지정할 수 있습니다.
$ ssh -J jumphostoftheday.example.com actualremotehostname.example.com
점프 호스트의 이름을 프로그래밍 방식으로 찾는 방법이 있는 경우 이를 자동화할 수 있습니다.
$ ssh -J $( determine_jump_host ) actualremotehostname.example.com
답변2
실제 하드웨어에 대해 로컬 변수 이름을 사용하고 로컬 ssh 명령줄에서 이러한 변수를 확장하도록 합니다.
proddb=dc1r12u10.internal.dns
jumper=vm20180913.internal.dns
ssh $jumper -t bash -ci ssh $proddb