한쪽 끝에서 VirtualBox 인스턴스를 사용하지 않으면 SSH 역터널링이 제대로 작동합니다. VB가 SSH를 중단하는 이유는 무엇입니까?

한쪽 끝에서 VirtualBox 인스턴스를 사용하지 않으면 SSH 역터널링이 제대로 작동합니다. VB가 SSH를 중단하는 이유는 무엇입니까?

VirtualBox가 내 SSH ProxyCommand를 손상시키는 것 같습니다... 자세한 내용은 아래를 참조하세요.

SSH(역방향) 터널을 통해 랩톱에서 데스크톱으로 SSH 연결을 열고 싶습니다. ProxyCommand(및 netcat)를 사용하여 한 단계로 이 작업을 수행하고 싶습니다. 내 노트북에 설치된 OS에서 실행할 때 작동합니다. 내 노트북의 VirtualBox 게스트에서 실행할 때 실패합니다.

내 일반적인 설정은 내 데스크톱의 VirtualBox에서 실행되는 Kubuntu 12.04이고 내 노트북에는 Kubuntu 12.04가 직접 설치되어 있습니다. 이것은 훌륭하게 작동합니다.

그러나 Kubuntu 12.04 VirtualBox 인스턴스를 사용하여 랩톱에서 똑같은 작업을 수행하려고 하면 실패합니다. 이에 대해서는 아래에서 자세히 설명하겠습니다.

내 SSH 터널은 다음과 같습니다.

laptop--->nat--->middleman<--nat<--desktop

VirtualBox를 사용하는지 여부에 관계없이 데스크탑과 노트북은 Kubuntu 12.04를 실행합니다. 중간자는 Ubuntu 8.04입니다.

SSH 터널에 대해 더 자세히 설명하겠습니다. 이 다리에 관하여:

middleman<--nat<--desktop

...다음과 같이 설정되었습니다.

autossh -M 5234 -N -f -R 1234:localhost:22 [email protected]

이 부분은 자동으로 이루어지며 문제가 없습니다.

노트북에서:

laptop--->nat--->middleman

모든 조건에서 다음 두 단계를 통해 중개자에 연결한 다음 중개자에서 데스크톱으로 연결할 수 있습니다.

me@laptop:~$ ssh -i ~/.ssh/id_rsa admin@middleman  
    admin@middleman:~$ ssh -i ~/.ssh/id_rsa localhost -p 1234

한 단계로 이 작업을 수행하기 위해 중간자에서 netcat("nc")을 사용하고 ProxyCommand 및 nc를 사용하도록 랩톱에서 SSH 구성 파일을 편집했습니다.

me@laptop:~/.ssh$ nano config

내용은 다음과 같습니다:

Host family_desktops
  ProxyCommand ssh middleman_fqdn nc localhost %p
  User admin
  PasswordAuthentication no
  IdentityFile ~/.ssh/my_id_rsa

middleman_fqdn"middleman.com"은 어디에 있나요?

그런 다음 한 단계만으로 "데스크톱"에 연결합니다.

me@laptop:~$ ssh family_desktops -p 1234

그것이 문제이다. 이것은 내 노트북(Kubuntu 12.04가 설치된)에서 직접 실행할 때 작동합니다. 그러나 Kubuntu 12.04(게스트)의 VirtualBox 인스턴스에서 랩톱에서 실행하면 작동하지 않습니다. SSH에는 중개인의 비밀번호가 필요합니다. 비밀번호가 설정되어 있지 않아 연결할 수 없습니다.

이상하게도 두 개의 개별 명령을 실행하면 데스크탑에 연결할 수 있으며 비밀번호가 필요하지 않습니다. 이 ssh -vvv옵션은 오류를 표시하지 않으며 어떤 식으로든 도움이 되지 않습니다.

하루 종일 문제를 해결해 봤는데 VirtualBox 인스턴스와 노트북의 호스트 OS 간의 설정에서 차이점을 찾을 수 없습니다. 나는 정확히 동일한 id_rsa 키(공개 및 개인), 동일한 사용자를 사용하고 있으며 중간자 서버의 auth.log는 두 경우 모두 동일한 IP 주소를 보고 있음을 보여줍니다.

그렇다면 내 노트북에서 VirtualBox를 실행하면 이 SSH 터널이 작동을 멈추는 이유는 무엇입니까(적어도 한 단계에서)?

답변1

이것이 내 문제인 것 같습니다.

버그 #201786 "Ssh 에이전트가 키로 서명할 수 없다는 것을 승인했습니다...": 버그: 'gnome-keyring' 패키지: Ubuntu https://bugs.launchpad.net/ubuntu/+source/gnome-keyring/+bug/201786

ssh-add내 문제를 해결하기 위해 내가 한 일은 내 노트북에서 실행되는 VirtualBox 인스턴스에서 실행하는 것뿐이었습니다 .

ssh-add ~/.ssh/my_other_key

댓글에 언급된 해결책은 다음과 같습니다.
https://bugs.launchpad.net/ubuntu/+source/gnome-keyring/+bug/201786/comments/58

왜 이러한 문제가 VirtualBox를 실행할 때만 발생하는지 이해가 안 되지만, 일부 사람들은 이것이 엔디안과 관련이 있다고 생각하기 때문에 매우 모호하게 설명하는 것일 수도 있습니다. 어쨌든 이 문제는 해결되었습니다.

관련 정보