SW/리눅스

CentOS 8 : VNC 설치 구성 방법, 예제, 명령어

얇은생각 2022. 6. 22. 07:30
반응형

VNC(Virtual Network Computing)는 키보드와 마우스를 사용하여 다른 컴퓨터를 원격으로 제어할 수 있는 그래픽 데스크톱 공유 시스템입니다.

이 자료에서는 CentOS 8에서 VNC 서버를 설치하고 구성하는 단계를 설명합니다. SSH 터널을 통해 VNC 서버에 안전하게 연결하는 방법도 설명합니다.

 

 

 

필수 구성 요소

이 안내에 따르면 원격 CentOS에 대한 sudo 권한을 가진 사용자로 로그인해야 합니다.

 

 

데스크톱 환경을 설치

일반적으로 서버에는 데스크톱 환경이 설치되어 있지 않습니다. 연결하려는 기기에 GUI가 없다면 먼저 설치해야 합니다. 그렇지 않으면 이 단계를 건너뜁니다.

다음 명령을 실행하여 CentOS 8의 기본 데스크톱 환경인 Gnome을 설치합니다.

sudo dnf groupinstall "Server with GUI"

 

 

시스템에 따라 Gnome 패키지 및 종속성을 다운로드하고 설치하는 데 시간이 걸릴 수 있습니다.

 

 

 

VNC 서버를 설치

TigerVNC는 활발히 유지되고 있는 고성능 오픈 소스 VNC 서버입니다. 기본 CentOS 저장소입니다. 설치하려면 다음을 입력하십시오.

sudo dnf install tigervnc-server

 

 

 

VNC 서버를 구성

CentOS 8에서 TigerVNC는 systemd 대몬을 사용하여 구성됩니다.

이 예에서는 한 명 이상의 VNC 사용자에 대해 TigerVNC를 구성하는 방법을 보여 줍니다.

vncpasswd 명령을 사용하여 암호를 설정합니다. VNC 서버에 액세스할 사용자로 명령을 실행하고 sudo를 사용하지 마십시오.

vncpasswd

# Password:
# Verify:
# Would you like to enter a view-only password (y/n)? n
# A view-only password is not used

 

 

비밀번호를 입력하고 확인하라는 메시지와 보기 전용 비밀번호로 설정할지 여부를 묻는 메시지가 나타납니다. 보기 전용 암호를 설정하도록 선택하면 사용자가 마우스 및 키보드와 VNC 인스턴스와 상호 작용할 수 없습니다.

vncpasswd 명령이 처음 실행될 때 사용자의 ~.vnc 디렉토리에 암호 파일을 생성하고 저장합니다.

두 번째 사용자를 추가하는 경우 해당 사용자로 전환하고 vncpasswd로 암호를 설정합니다.

다음 단계는 Gnome을 사용하도록 TigerVNC를 구성하는 것입니다. VNC는 ~.vnc/config 파일에서 사용자 구성 설정을 읽습니다. 파일을 열고 다음을 추가합니다.

vim ~/.vnc/config

# session=gnome
# geometry=1920x1200
# localhost
# alwaysshared

 

 

세션 옵션은 시작할 세션을 지정하고 지오메트리 옵션은 VNC 데스크톱 크기를 지정합니다.

파일을 저장한 후 닫습니다. 여러 명의 사용자를 추가하는 경우, 동일한 단계를 반복합니다.

TigerVNC는 사용자를 특정 포트에 매핑할 수 있는 파일과 함께 제공됩니다. 매핑은 /etc/tigervnc/vncserver.users 파일에서 구성됩니다.

이 파일은 <display_port>=<display> 구문을 사용합니다. 아래 예에서는 디스플레이 포트:1을 사용자 리눅스에 매핑하고 있습니다. 사용자를 더 추가하려면 동일한 형식을 사용합니다.

sudo vim /etc/tigervnc/vncserver.users

# # TigerVNC User assignment
#
# This file assigns users to specific VNC display numbers.
# The syntax is <display>=<username>. E.g.:
#
# :2=andrew
# :3=lisa
# :1=jjeongil

 

 

:1은 VNC 서버가 실행될 디스플레이 포트 번호입니다. 이 경우 서버는 TCP 포트 5901(5900+1)에서 실행 중입니다. 포트 :2를 표시하도록 다른 사용자를 매핑할 경우, 서버는 포트 5902(5900+2)에서도 수신 대기합니다.

VNC 서버에서 작업할 때 :X는 5900+X를 참조하는 디스플레이 포트입니다.

 

 

Tigervnc 서버를 시작

구성을 완료한 후 마지막 단계는 VNC 서버를 시작하는 것입니다.

표시 포트 1에 매핑된 사용자에 대해 VNC 서비스를 시작하고 사용하려면 다음을 입력합니다.

sudo systemctl enable vncserver@:1 --now

 

 

이전 섹션에서 설명한 대로 VNC 서버는 포트 5901에서 수신됩니다.

서비스가 성공적으로 시작되었는지 확인할 수 있습니다.

sudo systemctl status vncserver@:1

# ● vncserver@:1.service - Remote desktop service (VNC)
#    Loaded: loaded (/usr/lib/systemd/system/vncserver@.service; enabled; vendor preset: disabled)
#    Active: active (running) since Thu 2020-12-17 21:49:41 UTC; 8s ago
#   ...

 

 

다른 사용자에 대해 VNC를 사용하도록 설정하려면 1을 사용자에게 매핑된 표시 포트로 바꾸면 됩니다.

 

 

 

VNC 서버에 연결

VNC는 암호화된 프로토콜이 아니므로 패킷 스니핑의 대상이 될 수 있습니다. SSH 터널을 만들어 포트 5901의 로컬 시스템에서 동일한 포트의 원격 서버로 트래픽을 안전하게 전달하는 것이 좋습니다.

 

 

 

Linux 및 macOS에서 SSH 터널링을 설정

시스템에서 리눅스, macOS 또는 기타 Unix 기반 운영 체제를 실행하는 경우 다음 ssh 명령을 사용하여 터널을 쉽게 생성할 수 있습니다.

ssh -L 5901:127.0.0.1:5901 -N -f -l username remote_server_ip

 

 

 

사용자 암호를 입력하라는 메시지가 표시됩니다.

사용자 이름과 server_ip_address를 사용자 이름과 서버의 IP 주소로 바꾸는 것을 잊지 마십시오.

 

 

 

윈도우즈에서 SSH 터널링을 설정

윈도우즈 사용자는 PuTTY 를 사용하여 SSH 터널링을 설정할 수 있습니다.

Putty를 열고 호스트 이름 또는 IP 주소 필드에 서버 IP 주소를 입력합니다.

CentOS 8 : VNC 설치 구성 방법, 예제, 명령어 1

 

 

연결 메뉴에서 SSH를 확장하고 터널을 선택합니다. 소스 포트 필드에 VNC 서버 포트(5901)를 입력하고 대상 필드에 server_ip_address:5901을 입력한 후 아래 이미지와 같이 추가 버튼을 클릭합니다.

CentOS 8 : VNC 설치 구성 방법, 예제, 명령어 2

 

 

세션 페이지로 돌아가 매번 입력할 필요가 없도록 설정을 저장합니다. 원격 서버에 로그인하려면 저장된 세션을 선택하고 열기 버튼을 클릭합니다.

 

 

 

Vncviewer를 사용하여 연결

원격 서버에 연결하려면 VNC 뷰어를 열고 localhost:5901을 입력합니다.

Google Chrome용 TigerVNC, TightVNC, RealVNC, UltraVNC, Vinagre 및 VNC Viewer와 같은 VNC 뷰어를 사용할 수 있습니다.

CentOS 8 : VNC 설치 구성 방법, 예제, 명령어 3

 

 

메시지가 나타나면 비밀번호를 입력합니다. 그러면 기본 Gnome 바탕 화면이 나타납니다. 다음과 같은 모양이어야 합니다.

CentOS 8 : VNC 설치 구성 방법, 예제, 명령어 4

 

 

이제 키보드와 마우스를 사용하여 로컬 컴퓨터에서 원격 데스크톱 작업을 시작할 수 있습니다.

반응형