본문 바로가기

IT

Xubuntu에서 vino 를 이용한 VNC(원격데스크탑) 서비스 설정하는 방법

반응형

 안녕하세요. 오늘은 vnc (Virtual Network Computing) 에 대한 설정을 남겨봅니다.


 본 글은 여타 많은 askubuntu.com 과 각종 블로거들의 글을 검색하여 실행착오가 최대한 발생하지 않도록 하자는데 취지가 있습니다. 로그인한 세션과 같은 세션을 보여주는 VNC가 생각보다 없습니다. 항상 같은 세션으로 접속할 수 있는 VNC 서버를 설정하자는 것이 이번 글의 가장 중요한 요지입니다.



 1. 일단 vino 가 설치되었는지 확인합니다.

  아래 처럼 터미널을 하나 띄우고, 'vino' 까지만 입력하시고 탭(tab)키를 두번 눌러주시면 PATH가 걸려있는 디렉토리에서 색인된 파일목록을 보여줍니다. 아래처럼 vino-passwd, vino-preference 파일이 보이면 vino가 설치되어있는 것이고 아닌 경우 설치를 합니다. 설치는 2번항목으로 갑니다.



 2. vino 설치하기

 터미널로 다시 이동하여 아래와 같은 명령어를 입력합니다.

 이렇게 vino 를 설치중간에 설치할 여부를 물어보는데 잘 읽어보시고(?) y를 눌러주시면 설치가 완료됩니다.


$ sudo apt-get install vino



 3. vino 설정하기

 터미널에서 다음 명령어를 입력합니다.

 아래 보시는 것과 같은 창이 하나 뜹니다. (저는 영문판을 기준으로 사용하기 때문에 한글판으로 설치한 분들과 화면이 조금 다를 수 있지만, 설정에 순서는 아마 똑같이 나올 것이라 생각됩니다.)

 이미지와 동일하게 체크박스를 체크하고, Security항목의 Require the user to enter this password: 항목에 vnc 뷰어 에서 접속시 사용할 패스워드를 적어놓습니다. vnc 특성상 8자까지만 입력가능합니다. (해킹에 대비하여 강력한 암호를 사용할 것을 부탁드립니다.)

 똑같이 설정하셨다면 Close 버튼을 눌러서 설정화면을 닫습니다.


$ vino-preference



 4. vino 로그인시 자동 실행되게 설정하기

 vino는 기본적으로 서비스항목이 아니고 vino가 설치된 로컬 PC의 로그인화면을 공유한다는 것이 목표이기 때문에 필수사항으로 x-window 로의 자동로그인, 그리고 세션이 시작할때 시작프로그램에 등록하는 것이 4번 설정의 요지입니다.

 단순히 필요한 때만 사용하겠다라고 하시면 터미널 화면에서 vino-server 를 입력하는 것만으로 서비스를 실행할 수 있습니다.

 저는 Xubuntu를 기준으로 설명하니 조금 다른부분은 다른 데스크탑 환경을 사용하시는 분들은 조금 검색하시거나 환경설정을 잘 들여다보시면 같은 기능을 하는 프로그램을 찾을 수 있을 겁니다.;; (대책이 없습니다. 역시 구글링)

 여담은 여기까지하고, 자동로그인을 먼저 설정합니다.


 1) Xubuntu 자동로그인

  Xubuntu는 xfce4라는 데스크탑환경에서 돌아가는 ubuntu의 배포판입니다. Xubuntu는 자동로그인을 light desktop enviroments 에서 처리합니다. 터미널을 하나 열고 다음과 같은 명령어를 실행합니다.


$ vi /etc/lightdm/lightdm.conf


  제 설정 파일부터 보여드리고 설명하겠습니다.


 첫줄은 무시하고요. 두번째줄부터

autologin-user=dante2k

 라는 부분이 자동로그인할 사용자를 지정하는 것입니다. 그 어디에도 패스워드를 적는 부분은 없다는 것을 잘 보셔야 합니다.


  두번째 줄로

 autologin-user-timeout=0

  크게 의미를 두지 마시고 적어넣습니다.;;;;


 세번째줄과 네번째줄은 Xubuntu 의 기본적으로 들어있던 내용입니다. 간단히 세번째는 로그인시 보여주는 환영화면, 네번째는 로그인하는 사용자가 사용할 데스크탑환경을 xubuntu 환경으로 사용하겠다는 의미입니다.


 마지막으로 다섯번째줄은 게스트 사용자를 막겠다는 의미입니다. (우분투는 기본적으로 게스트 사용자로 로그인이 가능합니다. 아이디에 guest 를 적고 패스워드에 이메일을 적는 것이 아마 기본이죠?? 오래되나서;;)


 이렇게 편집을 하시고 저장을 하면 이후부터는 선택한 아이디로 자동로그인이 될 것입니다. 이제 자동실행 프로그램에 vino 서버가 돌아가게 설정해 줍니다.


  2) vino 자동실행에 추가

  설정화면으로 이동합니다.



  절반쯤 내려가다보면 Session and Startup 이라는 항목이 보입니다. 실행합니다.



  Application Autostart 라는 탭으로 이동합니다.



  Add 버튼을 눌러서 항목을 추가합니다. 다음 이미지를 보면서 찬찬히 입력합니다.



  OK버튼을 클릭하여 저장합니다.


  마지막으로 잘 실행되라고 체크박스를 체크해줍니다. (저장하면 그냥 되던가;;;)


  자~~~~~~


  이렇게 설정하면 Xubuntu를 재실행하는 경우 자동로그인이 되면서 vino-server가 자동으로 실행되게 됩니다.


  실제로 프로세스가 잘 작동하는지 확인하는 방법은 터미널을 띄우고 다음 명령어를 입력해봅니다.


$ ps -ef | grep vino


  요렇게 서비스가 돌고 있으면 다행(?)인 겁니다.


  자 이제 마지막 하나 남았습니다.


  무엇이냐하면 접속하는 PC에서 vnc viewer를 실행하고 접속을 시도하면 접속대기 중이 뜨고 접속이 되지 않습니다. 왜!!!!!!


  이유는 vino를 설치한 서버에 'enter unlock login keyring' 라는 패스워드 화면이 떡하니 떠있을 겁니다. 이유인 즉슨 접속시마다 해당 화면을 열고 있는 사용자의 패스워드를 꼭 한번씩 연결때마다!!! 한번씩 입력하게 한다는 겁니다. 그럼 여지껏 vino 설치하느라고 개고생(?)한 우리의 노력은 허사가 되는 거죠?? x-window 에 대한 제어권한도 없는 상태에서 서버에서 암호를 입력하라니... IDC등에 서버가 들어있다고 생각해보면 아주 깜깜한 경우입니다.


  하지만 항상 해결방법은 있습니다.


  역시 터미널을 하나 띄우고 준비합니다.


5. 대망의 마지막 unlock login keyring 자동처리하기


  이론적인 방법은 다음과 같습니다. keyring 파일을 미리 만들어서 그 파일을 사용하여 자동으로(?) 사용자 암호를 입력하게 하면 되는 것이죠. 파일만 하나 만들어주면 끝입니다.

  사랑스런 터미널을 하나 띄웁니다.


  다음 명령어를 입력합니다.


$ cd ~/.gnome2


 이동후 안을 살펴봅니다. 저는 이미 keyring 파일을 생성해 놓았기 때문에 저와 다르게 보일 수 있습니다.



  keyrings 라는 디렉토리가 보이는 군요.. 없는 분들은 다음 명령어를 이용하여 디렉토리를 생성합니다.


$ mkdir keyrings


 오타가 있거나 한글자라도 틀리면 정상적으로 작동하지 않습니다. 컴퓨터는 항상 그렇듯이 자비가 없습니다.;;;;;;


 디렉토리 안쪽으로 보겠습니다.


 파일이 하나 존재하는 군요.. 명칭은 'default.keyring' 이네요.. 자 이녀석이 무엇이냐.. 안에는 별 내용이 없습니다. 한줄 들어가 있는데요.. 내용은 아까전에 자동로그인한 사용자의 패스워드가 간단하게(?) 암호화 되어 저장되어 있습니다. 그게 전부입니다.


  해당 파일을 만드는 방법을 적어보겠습니다. 잘 따라하세요.

  명령어는 아래와 같습니다.


$ echo 'autologinuserpasswd' | base64 > default.keyring


  간단히 설명해 보겠습니다. echo 라는 명령어는 외치는 겁니다. 메아리를 그럼 |(파이프라인) 뒤의 base64가 메아리를 전달받습니다. base64는 전달받은 메아리를 암호화합니다. 이후  '>'(왼쪽으로 벌린 아가리)가 그걸 먹어서 default.keyring 이라는 파일에 저장합니다. 위 한줄을 설명하면 요렇게 길어집니다. -_-;;;


 신경쓰지마시고, 'autologinuserpasswd' 부분의 글자를 모두 지우고 자신의 암호를 입력합니다. 만약에
아이디가 dante2k 이고 암호가 asdf#1234 라고 한다면 


$ echo 'asdf#1234' | base64 > default.keyring


  라고 치면 됩니다. 그러면 자동으로 default.keyring 파일이 생성이 될겁니다.


  다 되었습니다. 로그인 해보겠습니다.



6. vnc viewer 를 이용하여 접속해보기

  잘 설정된 서버를 리붓하여 둡니다.

  접속할 PC에서 서버의 아이피를 이용하여 접속을 시도합니다.

  저는 "Remote Desktop Viewer" 라는 프로그램을 사용하겠습니다. 만약에 윈도우에서 접속한다고 한다면 '원격데스트톱연결'을 사용하시면 안됩니다. 왜냐?? 지금 우리가 접속하려고 하는건 VNC 서버이지 RDP 서버가 아니기때문입니다. 무료로 배포되는 vnc viewer를 검색하셔서 설치하고 접속하시면 되고요..

  저는 Xubuntu 에서 Xubuntu 로 접속을 시도하는 것이기때문에 위에 말한 프로그램을 사용하겠습니다.


  참 간결하게 생겼네요;;



 간단히 가장 위의 protocol 만 VNC로 변경하고 Host 에 도메인네임이나 저처럼 아이피를 적어 넣습니다. (저는 내부 네트워크에 존재하는 PC에서 서버에 접속하기때문에 내부 아이피네요.)


 Connect를 누르면 여타 VNC 사용하는 것처럼 암호를 물어봅니다. 여기에 암호는 3. 항목에서 맨 처음 vino-preference 프로그램을 실행하여 입력했던 비밀번호를 적습니다. (8자리까지 입력가능한 암호가 있었죠?)



  따란~~~~~~~



 여기까지 길고 길었던 vino 를 이용한 vnc 서버 설정 방법이 었습니다. 끝.

반응형