우분투 서버에서 VNC 설정

우분투 서버에서 VNC 접속을 위한 설정을 간략히 정리한다.

vino 소개

원격으로 서버에 GUI 접속을 위한 VNC 서버에는 tight VNC, Tiger VNC, vino 등이 있는데, 본 글에서는 우분투 데스크톱 GUI를 그대로 보여주면서 설정이 가장 간단한 vino를 사용한 방법을 정리한다.
이 방법으로 원격으로 GNOME 데스크톱 GUI를 이용하여 시스템 설정 등을 변경할 때 편리하게 사용할 수 있다.

vino 설치

우분투 GNOME GUI 버전에는 기본적으로 vino가 설치되어 있다. 혹시 현재 설치되지 않은 상태이면 아래와 같이 설치하면 된다.

$ sudo apt install vino

vino 설정

  1. 메뉴에서 설정 -> 공유 -> 화면 공유 (영어인 경우에는 Settings -> Sharing -> Screen Sharing) 항목을 enable 시킨다. (아래 캡쳐 참조)
  2. 아래 예와 같이 화면 공유 설정을 한다.

    위 팝업에서 VNC 접속 주소를 알 수 있다. 여기서는 호스트 이름.local과 같이 표시되는데 이 주소를 그대로 사용해도 되고, IP 주소를 사용해도 된다.

VNC client 접속

  1. VNC client를 (예: VNC Viewer, MobaXterm 등) 사용하여 해당 주소로 접속하면 된다.
  2. VNC 접속 주소는 화면 공유 설정에 표시된 주소 (단, VNC Viewer에서는 vnc:// 부분은 제거 필요) 또는 IP 주소를 사용하면 된다.
  3. 그런데 이 상태에서 접속을 해 보면, 아래 캡쳐 예와 같이 에러가 발생한다.
  4. 굳이 encryption을 하기 위해서 복잡한 설정으로 고생할 필요없이, encryption을 끄면 된다. 간단히 아래 명령으로 require-encryption 옵션을 off 시킬 수 있다.
    $ gsettings set org.gnome.Vino require-encryption false
    

    또는 위 방법 대신에 GUI로 설정하고 싶으면 아래와 같이 dconf-editor를 설치한 후에 실행시킨다.

    $ sudo apt install dconf-editor
    $ dconf-editor
    

    dconf-editor가 뜨면 /org/gnome/desktop/remote-access/require-encryption 항목을 찾아서 설정을 off로 변경하면 된다.

기타

  • 서버를 껐다가 켰을때 자동으로 vino 서비스가 시작되지 않으면, 원격 접속이 되지 않는다. 따라서 부팅시 /usr/lib/vino/vino-server 프로그램이 자동으로 시작되도록 해야 리부팅을 해도 바로 VNC 접속이 된다.
  • 만약 VNC 서버가 모니터와 연결이 안 된 상태이면, vino-server 프로그램 실행시 에러가 발생하면서 안된다. (이건 TeamViewer 등의 경우에도 마찬가지임)
    이 경우에도 vino가 동작되게 하려면 모니터 포트에 dummy 포트를 달거나 가상 모니터를 사용해야 한다. 그런데 dummy 포트는 확실한 방법이긴 하지만 구매 비용이 들고, 가상 모니터는 설정이 쉽지 않은 문제가 있다. 😓

    원하면 HDMI dummy plug를 검색하여 싸게 하나 장만할 수도 있다.
    나의 경우는 내 데스크탑이 모니터와 연결되어 있어서 (모니터는 꺼져 있어도 됨) 이 문제는 발생하지 않는 상태이다. 😋

카테고리:

업데이트: