Mac과 Mac을 썬더볼트 브리지로 인터넷 공유 시 원격 VMWareFusion VM의 RDP 접속 Computer Tip

지난번 블로그에서 아이맥5K에서 맥북프로에 썬더볼트의 인터넷 공유를 이용하여
원격화면 공유를 보는 방법을 살펴보았습니다.

 
쉽게 도식화하면 위와 같은 화면입니다. 아이맥의 썬더볼트 브리지 주소가 192.168.2.1 이고
DHCP로 주소를 받은 오른편의 맥북프로가 192.168.2.2를 통하여 통신을 합니다.
아이맥은 대신 다른 인터페이스로 인터넷을 하고 맥북프로는 썬더볼트 브리지만 연결하여도 인터넷을
아이맥을 통하여 할 수 있는 상황입니다.

이제 맥북프로에서 VMWareFusion의 가상머신으로 우분투를 설치하였습니다.

사용하려 하였으나 중간에 자꾸 접속이 끊기는 등 문제가 다수 존재합니다.

위에처럼 하는 이유는 하나 입니다. 

왼편의 아이맥에서 오른편의 맥북프로에 돌고 있는 가상머신을 아이맥에서
원격 데스크탑으로 바로 접속해서 사용하고자 하는 목적입니다.
물론 맥북프로의 화면 공유에서 또 가상머신의 콘솔을 바라볼 수도 있겠으나
그것보다는 원격데스크탑 접속으로 접속하는 것이 아이맥에서는
훨씬 더 자연스럽게 볼 수 있기 때문입니다.

여러가지 고민을 해 보다가, 갑자기 SSH 터널링 (더 자세히는 TCP Port Forwarding 을
하면 될 것 같은 생각이 들었습니다)

우선 오른쪽의 맥북프로에서 
위와 같이 xrdp 패키지가 설치되어 있는지 확인합니다. 
만약 없다면,

$ sudo apt-get install xrdp
명령으로 설치 가능합니다.

이제 맥북프로에 설치되어 있는 "Microsoft Remote Desktop"명령을 돌려

위와 같이 설정을 하여 접속해 봅니다.

물론 해당 가상머신은 공유네트워크 (192.168.18.x 로 되어 있고 이것은 설정된 맥 마다 틀립니다.
 만약 이를 수정하려면, VMWareFusion에서 NAT, 사설네트워크 주소 대역 변경을 참고하십시오.

맥북프로에서 자신의 VM에 접속을 해 보면,

위와 같이 잘 동작하는 것을 알 수 있습니다.

이제는 아이맥에서 접속해 볼 차례입니다.
우선 맥북프로에서 SSH 접속을 가능하게 해야 하는데,

위와 같이 시스템환경설정 > 공유 화면에서 원격로그인을 켜 놓습니다.

그리고 아이맥에서 

$ ssh mcchae@192.168.2.2
(mcchae 대신 맥북프로 사용자 이름을 지정합니다)

위와 같이 아이맥에서 맥북프로로 SSH 접속이 잘 되는 것을 확인합니다.

그러면 이제 아이맥에서의 "Microsoft Remote Desktop" 프로그램을 실행시켜

위와 같이 로컬호스트에 3333 포트로 접속한다고 일단 지정을 합니다.

그리고 아이맥의 터미널에서

$ ssh -f -C -L 3333:192.168.18.140:3389 mcchae@192.168.2.2 sleep 100
라고 명령을 내린 다음
Password:
가 나오면 맥북프로의 해당 암호를 넣고나서

다시 위에서 설정한 아이맥에서의 "Microsoft Remote Desktop" 프로그램의 해당
세션을 실행시키면,

위와 같이 원격 데스크탑이 잘 동작합니다.


조금 더 자세히 위의 포트 포워딩 명령을 분석해 봅겠습니다.

ssh -f -C -L 3333:192.168.18.140:3389 mcchae@192.168.2.2 sleep 100

이라고 명령을 하였습니다.

-f 옵션은 SSH로 접속할 때 원격의 특정 명령을 실행하라는 것입니다.
위에서는 sleep 100 이라고 원격 터미널에 명령을 내리게 되겠군요.
위에 100초간 sleep 하라고 하면 그 명령을 실행하고 바로 끝나는데
TCP Port forwarding 은 하고 있는 상태입니다. 다만, 100초 전에
원격 데스크탑으로 연결을 안하면 위에 명령은 종료되고 해당 프로세스는 사라집니다.
그렇지 않고 접속을 한다면 100초가 지나도 위에 명령은 살아있게 됩니다.

mcchae@192.168.2.2 라는 명령행 패러미터는
192.168.2.2 맥북프로에 접속하라고 되어 있습니다.

-C 옵션은 압축을 하라는 것인데 실제 RDP가 VNC보다 좋은 점이 압축을 하여
조금더 화면 갱신 속도에 효과가 있다고 들었습니다. 혹시 더 압축이 되면 더 빠르지 않을까
하는데 뭐낙 썬더볼트를 이용한 다이렉트 연결의 속도가 상당히 빠른 편이라
뭐 특별히 효과는 없을 수 있습니다.

이제 메인 부분입니다
-L 3333:192.168.18.140:3389

이 부분입니다.
우선 앞에 있는 3333 은 이 명령을 실행한 아이맥에서의 접속 포트번호 입니다.
그리고 그 다음 192.168.18.140:3389 는
앞서 3333으로 접속된 통신을 맥북프로 (192.168.2.2)에서 
192.168.18.140:3389로 전달하라는 의미가 되겠습니다.

즉, 아이맥에서 원격데스크탑으로 localhost:3333 으로 접속을 하게되면
그것을 SSH 터널을 통하여 192.168.2.2로 들어가고 다시
192.168.18.140에 3389(RDP 포트) 로 전달하게 되어있습니다.

결과적으로 아이맥에서 맥북프로에 있는 가상머신으로 접속하게 된 것이지요.


어느분께는 도움이 되셨기를...


핑백

  • 지훈현서 : [SSH] Reversh SSH 접속 2015-11-23 17:06:21 #

    ... 지난번 블로그와 마찬가지로 그동안 SSH 터널링을 통해서 다른 프로토콜을 태우는 것을 알아보았다면이번에는 필요에 따라 Reverse Tunneling 에 관해서 알아보도록 ... more

  • 지훈현서 : [Mac] 와이파이를 통하여 유선랜의 인터넷 공유 2017-05-15 16:30:06 #

    ... ifconfig 라고 해 보면, 위와 같이 192.168.100.1 로 설정됨을 알 수 있습니다.(디폴트는 192.168.2.1 입니다)이것은 이전에 아이맥과 맥북프로를 썬더볼트로 직결했을 때도 동일하게 적용될 것입니다. 그리고 유선망의 라즈베리 파이에서는DHCP 또는 192.168.100.xxx/24 라고 설정하고 디폴트 게이트웨이 ... more

덧글

댓글 입력 영역

구글애드텍스트