SSH 에이전트 명령 오류

SSH 에이전트 명령 오류

SSH 프록시 명령이 작동하지 않는 이유를 이해하려고 합니다. 아래와 같이 사용자 정의 위치에 SSH 구성 파일이 있습니다.

vagrant@ansible:~$ cat ~/.ssh/cml-config
Host mgmt-lxc
  HostName 10.17.238.146
  IdentityFile ~/.ssh/id_rsa
  User Rod

Host 10.255.0.*
  ProxyCommand ssh -W %h:%p mgmt-lxc
vagrant@ansible:~$

점프 호스트에 SSH로 연결한 다음 거기에서 다른 장치에 연결할 수 있습니다.

vagrant@ansible:~$ ssh -F ~/.ssh/cml-config mgmt-lxc
Rod@mgmt-8Fe5bN$ ssh [email protected]
Warning: Permanently added '10.255.0.47' (RSA) to the list of known hosts.

            ,,,,,
            /'''\
           ( o o )
      -oOOO--(_)--OOOo-------------------------------------------
       Router: Core-1
                      Secured system for authorized users only.
       .oooO          Unauthorized access is strictly prohibited.
        (   )   Oooo. All activities may be logged and monitored.
      ---\ (----(   )--------------------------------------------
          \_)    ) /
                (_/
Password:

그러나 사용자 정의 SSH 키를 사용하여 10.255.0.47에 직접 SSH를 시도하면 오류가 발생합니다.

vagrant@ansible:~$ ssh -F ~/.ssh/cml-config [email protected]
ssh: Could not resolve hostname mgmt-lxc: Name or service not known
ssh_exchange_identification: Connection closed by remote host
vagrant@ansible:~$

저는 Ubuntu Xenial64를 실행하고 있습니다.

답변1

-F /the/path/to/.ssh/cml-configas로 사용된 ssh -W명령을 추가합니다 ProxyCommand(해당 경로가 여기에서 작동할지 확실하지 않으므로 ~한번 시도해 보십시오. 전체 경로를 사용할 수도 있습니다).

그렇지 않으면 ssh대화형 명령이 실행되지만 실제 이름 확인이 아니라 구성 파일에서 사용한 별명임을 ssh -W ... mgmt-lxc확인하기 위해 읽어야 할 구성 파일이 없기 때문입니다.mgmt-lxc

또는 IPv4 mgmt-lxc주소 /etc/hosts또는 이에 상응하는 주소를 추가하세요 10.17.238.146.

아니면 .ssh/config기본값으로 모든 것을 입력하면 사용법이 단순화됩니다.

관련 정보