Ubuntu 18.04에서 VNC 설치 및 구성 방법

Ubuntu 18.04에서 VNC 설치 및 구성 방법

2022-06-01 last update

11 minutes reading ubuntu vnc
이 설명서는 Ubuntu 18.04에서 VNC 서버를 설치하고 구성하는 데 필요한 단계를 설명합니다.SSH 터널을 통해 VNC 서버에 안전하게 연결하는 방법도 보여 드리겠습니다.VNC(Virtual Network Computing)는 키보드와 마우스로 다른 컴퓨터를 원격으로 제어할 수 있는 그래픽 데스크톱 공유 시스템입니다.icrosoft remote desktop 의 오픈 소스 대체 제품입니다.
계약(RDP).

선결 조건

본 강좌를 계속하기 전에 user with sudo privileges 로 로그인하십시오.
.

데스크탑 환경 설치

대부분의 서버가 데스크톱 환경을 설치하지 않기 때문에 경량급 데스크톱 환경을 설치하는 것부터 시작합니다.Ubuntu 저장소에는 사용 가능한 데스크톱 환경(DE)이 있습니다.설치Xfce
. 그것은 빠르고 안정적이며 가벼운 데스크톱 환경으로 원격 서버에서 사용하기에 매우 적합하다.서버에 Xfce를 설치하려면 다음 명령을 입력하십시오.
sudo apt updatesudo apt install xfce4 xfce4-goodies xorg dbus-x11 x11-xserver-utils
시스템에 따라 Xfce 패키지를 다운로드하고 설치하는 데 시간이 좀 걸릴 수 있습니다.

VNC 서버 설치

Ubuntu 저장소에는 다음과 같은 여러 VNC 서버가 있습니다.
, TightVNC
TigerVNC
. 각 VNC 서버는 속도와 보안 측면에서 서로 다른 장단점을 가지고 있습니다.TigerVNC를 설치합니다.사전 예방적으로 유지 관리되는 고성능 VNC 서버입니다.다음 명령을 입력하여 Ubuntu 서버에 TigerVNC를 설치합니다.
sudo apt install tigervnc-standalone-server tigervnc-common
현재 VNC 서버가 설치되어 있습니다. 다음 단계는 초기 구성을 만들고 비밀번호를 설정하는 것입니다.vncserver 명령을 실행할 때 sudo를 사용하지 마십시오:
vncserver
암호를 입력하고 확인하라는 메시지가 표시되고 암호만 보기로 설정할지 여부를 알려 줍니다.암호만 보기 설정을 선택하면 사용자는 마우스와 키보드를 사용하여 VNC 인스턴스와 상호작용할 수 없습니다.
You will require a password to access your desktops.

Password:
Verify:
Would you like to enter a view-only password (y/n)? n
/usr/bin/xauth:  file /home//.Xauthority does not exist

New 'server2.:1 ()' desktop at :1 on machine server2.

Starting applications specified in /etc/X11/Xvnc-session
Log file is /home//.vnc/server2.:1.log

Use xtigervncviewer -SecurityTypes VncAuth -passwd /home//.vnc/passwd :1 to connect to the VNC server.
명령을 처음 실행하면 vncserver 에서 암호 파일이 생성되고 저장됩니다.존재하지 않으면 이 디렉터리가 생성됩니다.x11vnc 다음으로 기록~/.vnc위의 출력에서이것은 vnc 서버를 실행하는 디스플레이 포트 번호를 표시합니다.예제에서 서버는 TCP 포트:1(5900+1)에서 실행됩니다.5901를 사용하여 두 번째 인스턴스를 만들면 다음 사용 가능한 포트 vncserver 에서 실행됩니다. 이는 서버가 포트 :2 (5900+2) 에서 실행되고 있음을 의미합니다.기억해야 할 것은 VNC 서버를 사용할 때 5902:X 의 디스플레이 포트입니다.다음 단계를 계속하기 전에 5900+X 명령 및 vncserver 옵션과 서버 번호를 매개 변수로 사용하여 VNC 인스턴스를 중지합니다.이 예에서 서버는 포트 5901-kill에서 실행되므로
vncserver -kill :1
Killing Xtigervnc process ID 7264... success!

VNC 서버 구성

을 사용합니다. 서버에 Xfce와 TigerVNC가 설치되어 있으므로 Xfce를 사용하려면 TigerVNC를 구성해야 합니다.이를 위해 다음 파일을 만듭니다. ~/.vnc/xstartup
nano ~/.vnc/xstartup
#!/bin/sh
unset SESSION_MANAGER
unset DBUS_SESSION_BUS_ADDRESS
exec startxfce4 
파일을 저장하고 닫습니다.이러한 명령은 TigerVNC 서버를 시작하거나 재부팅할 때마다 자동으로 실행됩니다.:1 파일에는 실행 권한이 있어야 합니다.다음 프로그램 실행hostname
권한이 올바른지 확인하십시오: (adsbygoogle = window.adsbygoogle | | []).푸시({});
chmod u+x ~/.vnc/xstartup
통과가 필요한 경우 ~/.vnc/xstartup
VNC 서버에서 chmod라는 파일을 만들고 행마다 옵션을 추가합니다.다음은 ~/의 예입니다.vnc/config
geometry=1920x1080
dpi=96

Systemd 단위 파일 만들기

는 필요에 따라 vnc 서비스를 시작, 정지, 다시 시작할 수 있도록 시스템d 단원 파일을 만듭니다. 다른 시스템d 서비스와 같습니다.텍스트 편집기를 열고 다음 설정을 복사하고 붙여넣습니다.사용자 이름과 일치하도록 일곱 번째 줄의 사용자 이름을 변경해야 합니다.
sudo nano /etc/systemd/system/[email protected]
/etc/시스템 D/시스템/v[email protected]
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target

[Service]
Type=simple
User=
PAMName=login
PIDFile=/home/%u/.vnc/%H%i.pid
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill :%i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver :%i -geometry 1440x900 -alwaysshared -fg
ExecStop=/usr/bin/vncserver -kill :%i

[Install]
WantedBy=multi-user.target
파일을 저장하고 닫습니다.알림 시스템d에서 사용합니다.
sudo systemctl daemon-reload
새 단원 파일을 만들었습니다. 다음 명령으로 단원 파일을 사용합니다.
sudo systemctl enable [email protected]
기호 config 의 숫자 1 는 VNC 서비스가 실행될 디스플레이 포트를 정의합니다.이는 지난 섹션에서 설명한 것처럼 VNC 서버가 스누핑 포트@를 사용할 것임을 의미합니다.실행:
sudo systemctl start [email protected]
서비스가 성공적으로 시작되었는지 확인:
sudo systemctl status [email protected]
[email protected] - Remote desktop service (VNC)
   Loaded: loaded (/etc/systemd/system/[email protected]; indirect; vendor preset: enabled)
   Active: active (running) since Thu 2018-08-16 19:05:54 UTC; 4s ago
  Process: 9893 ExecStartPre=/bin/sh -c /usr/bin/vncserver -kill :1 > /dev/null 2>&1 || : (code=exited, status=0/SUCCESS)
 Main PID: 9900 (vncserver)
    Tasks: 0 (limit: 507)
   CGroup: /system.slice/system-vncserver.slice/[email protected]
           ‣ 9900 /usr/bin/perl /usr/bin/vncserver :1 -geometry 1440x900 -alwaysshared -fg

VNC 서버에 연결

VNC는 암호화 프로토콜이 아니므로 패킷 탐지가 가능합니다.제안된 방법은 만들기additional options
이것은 포트 5901의 로컬 컴퓨터에서 같은 포트의 서버로 통신을 안전하게 전달할 것이다.

Linux 및 macOS에 SSH 터널 설정

컴퓨터에서 Linux, macOS 또는 기타 Unix 기반 운영 체제를 실행하는 경우 다음 명령을 사용하여 SSH 터널을 쉽게 만들 수 있습니다.
ssh -L 5901:127.0.0.1:5901 -N -f -l username server_ip_address
사용자 암호를 입력하라는 메시지가 표시됩니다.사용자 이름과 서버의 IP 주소 5901username 를 교체하는 것을 잊지 마십시오.

Windows에 SSH 터널 설정

Windows를 실행하는 경우 SSH tunnel 를 사용하여 SSH 터널을 설정할 수 있습니다.
.Putty를 열고 server_ip_address 필드에 서버 IP 주소를 입력합니다. 메뉴의 상자에서 Host name or IP address 을 확장하고 Connection 를 선택합니다.SSH 필드에 VNC 서버 포트(Tunnels를 입력하고 5901 필드에Source Port를 입력한 다음 server_ip_address:5901 단추를 누르면 다음 그림과 같이 페이지로 돌아가 설정을 저장하면 매번 입력할 필요가 없습니다.원격 서버의 경우 저장된 세션을 선택하고 Destination 버튼을 클릭합니다.

Vncviewer 연결 사용

SSH 터널이 만들어졌으니 이제 Vncviewer를 열고 Add에 있는 VNC 서버에 연결해야 합니다.TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre 및 VNC 뷰어 forPuTTY SSH client와 같은 모든 VNC 뷰어를 사용할 수 있습니다.
.TigerVNC를 사용합니다.뷰어를 열고 Session 를 입력한 다음 Open 버튼을 클릭합니다. 입력Google Chrome
프롬프트에서 암호를 입력하면 기본 Xfce 데스크톱이 표시됩니다.이렇게 보입니다: 키보드와 마우스를 사용하여 로컬 시스템부터 원격 XFCE 데스크톱과 상호작용할 수 있습니다.

결론

지금까지 VNC 서버를 설치하고 실행했을 뿐만 아니라 사용하기 쉬운 그래픽 인터페이스를 사용하여 로컬 데스크톱 컴퓨터에서 Ubuntu 18.04 서버를 쉽게 관리할 수 있습니다.여러 사용자의 디스플레이를 시작하도록 VNC 서버를 구성하려면 초기 구성을 작성하고 localhost:5901 명령을 사용하여 암호를 설정합니다.다른 포트를 사용하여 새 서비스 파일을 만들어야 합니다.질문이 있으시면 언제든지 논평을 주십시오.