웹사이트 검색

Linux에서 원격 데스크톱에 액세스하기 위해 TightVNC를 설치하는 방법


가상 네트워킹 컴퓨팅(VNC)은 인터넷에 연결된 다른 컴퓨터를 제어할 수 있는 일종의 원격 공유 시스템입니다. 키보드와 마우스 클릭은 한 컴퓨터에서 다른 컴퓨터로 쉽게 전송될 수 있습니다. 이는 관리자와 기술 직원이 물리적으로 동일한 위치에 있지 않고도 서버와 데스크탑을 관리하는 데 도움이 됩니다.

VNC는 1990년대 후반에 만들어진 오픈 소스 애플리케이션입니다. 독립적이며 WindowsUnix/Linux와 호환됩니다. 이는 일반 Windows 기반 사용자가 헤이즐 없이 Linux 기반 시스템과 상호작용할 수 있음을 의미합니다.

VNC를 사용하려면 TCP/IP 연결이 있어야 하며 VNC를 실행하는 컴퓨터에 연결하기 위한 VNC 뷰어 클라이언트가 있어야 합니다. Strong> 서버 구성 요소. 서버는 원격 컴퓨터의 복제 디스플레이를 뷰어에게 전송합니다.

이 문서에서는 RHEL 기반의 원격 데스크톱 액세스와 함께 이전 VNC 프로그램의 훨씬 향상된 버전인 TightVNC를 사용하여 VNC 서버를 설치하는 방법을 보여줍니다. Linux 배포판 및 Debian 기반 배포판.

1단계: 데스크탑 환경 설치

GUI가 아닌 명령줄 인터페이스만 제공하는 최소 버전의 운영 체제를 설치한 경우. 따라서 원격 VNC 액세스에서 매우 잘 작동하는 GNOME 또는 XFCE 데스크톱이라는 GUI(그래픽 사용자 인터페이스)를 설치해야 합니다.

sudo dnf groupinstall "Server with GUI"   [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
OR
sudo apt install xfce4 xfce4-goodies      [On Debian, Ubuntu and Mint]

2단계: TightVNC 서버 설치

TightVNC는 원격 데스크톱에 연결할 수 있게 해주는 원격 데스크톱 제어 소프트웨어입니다. 설치하려면 아래와 같이 yum 명령을 사용하십시오.

sudo yum -y install tigervnc-server xorg-x11-fonts-Type1  [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
sudo apt install tightvncserver      [On Debian, Ubuntu and Mint]

3단계: 일반 VNC 사용자 생성

원격 데스크톱에 연결하는 데 사용할 일반 사용자를 만듭니다. 예를 들어, 저는 사용자로 "tecmint"를 사용했습니다. 자신만의 사용자 이름을 선택할 수 있습니다.

sudo useradd tecmint
OR
sudo adduser tecmint
sudo passwd tecmint

4단계: 사용자의 VNC 비밀번호 설정

먼저 (su – tecmint)를 사용하여 사용자로 전환하고 'vncpasswd'를 실행하여 사용자의 VNC 비밀번호를 설정합니다.

참고: 이 비밀번호는 VNC 원격 데스크톱에 액세스하기 위한 비밀번호이고 3단계에서 생성한 비밀번호는 SSH에 액세스하기 위한 비밀번호입니다. 강한> 세션.

[root@tecmint ~]# su - tecmint
[tecmint@tecmint ~]$ vncpasswd
Password:
Verify:

위 명령은 비밀번호를 두 번 입력하라는 메시지를 표시하고 사용자의 홈 디렉토리 아래에 passwd 파일이 포함된 ".vnc" 디렉토리를 생성합니다. . 다음 명령어를 사용하면 비밀번호 파일이 생성된 것을 확인할 수 있습니다.

ls -l /home/tecmint/.vnc
-rw------- 1 tecmint tecmint 8 Jul 14 21:33 passwd

다른 사용자를 추가하는 경우 해당 사용자로 전환하고 vncpasswd 명령을 사용하여 vnc 비밀번호를 추가하면 됩니다.

5단계: Gnome용 VNC 구성

여기서는 ~/.vnc/config 파일의 사용자 구성 설정을 사용하여 Gnome에 액세스하도록 TigerVNC를 구성합니다.

vim ~/.vnc/config

여기에 다음 구성을 추가합니다.

session=gnome
geometry=1920x1200
localhost
alwaysshared

session 매개변수는 액세스하려는 세션을 정의하고 geometry 매개변수는 VNC 데스크탑의 해상도를 추가합니다.

이제 사용자 로그인을 종료하고 루트 사용자 로그인으로 돌아갑니다.

exit

TigerVNC에는 /etc/tigervnc/vncserver.users 파일의 특정 포트에 사용자를 매핑할 수 있는 기본 구성 설정이 제공됩니다.

vim /etc/tigervnc/vncserver.users 

구성 파일은 = 매개변수를 사용합니다. 다음 예에서는 사용자 tecmint에게 디스플레이 포트 :1를 할당합니다.

This file assigns users to specific VNC display numbers.
The syntax is =. E.g.:
#
:2=andrew
:3=lisa
:1=tecmint

다른 사용자를 추가하는 경우 디스플레이 포트를 :2로 설정하고 그 뒤에 사용자 이름을 입력하면 됩니다.

6단계: Tigervnc 서버 시작

모든 변경을 완료한 후 다음 명령을 실행하여 VNC 서버를 시작합니다. "tecmint" 사용자와 VNC 세션을 시작하기 전에 포트 번호ID에 대한 간단한 소개를 드리겠습니다. 비>.

기본적으로 VNC는 포트 5900ID:0(루트 사용자용)에서 실행됩니다. 우리 시나리오에서는 tecmint, ravi, Navin,avishek을 만들었습니다. 따라서 포트ID는 이러한 사용자가 다음과 같이 사용합니다.

User's		Port's		ID's
5900		root		:0
5901		tecmint		:1
5902		ravi		:2
5903		navin		:3
5904		avishek		:4

따라서 여기서 사용자 "tecmint"는 포트 5901과 ID를 :1로 가져오는 식입니다. 다른 사용자를 생성한 경우 (user5)라고 말하면 해당 사용자는 생성한 각 사용자에 대해 포트 5905id:5 등을 얻게 됩니다. .

디스플레이 포트 :1에 할당된 사용자에 대해 VNC 서비스를 시작하고 활성화하려면 다음을 입력하십시오.

systemctl start vncserver@:1 --now
systemctl enable vncserver@:1 --now

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

systemctl status vncserver@:1

다른 사용자에게 VNC 액세스를 허용하려면 1을 디스플레이 포트 번호로 바꾸면 됩니다.

7단계: 방화벽에서 VNC 포트 열기

5901의 사용자(tecmint)에 대해 iptables, firewalld 또는 ufw에서 포트를 엽니다.

iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 5901 -j ACCEPT
OR
firewall-cmd --zone=public --add-port=5901/tcp
OR
sudo ufw allow 5901/tcp

여러 사용자의 경우 ravi, navin,avishek. 포트 5902, 5903, 5904를 각각 엽니다.

iptables -I INPUT 5 -m state --state NEW -m tcp -p tcp -m multiport --dports 5902:5904 -j ACCEPT
OR
firewall-cmd --zone=public --add-port=5902-5904/tcp
OR
sudo ufw allow 5901:5910/tcp

Iptables 서비스를 다시 시작합니다.

service iptables save
service iptables restart
Or
firewall-cmd --reload
systemctl restart firewalld

8단계: VNC 클라이언트 다운로드

이제 Windows 또는 Linux 시스템으로 이동하여 VNC 뷰어 클라이언트를 다운로드하고 시스템에 설치하여 데스크탑에 액세스합니다.

  • VNC 뷰어 다운로드

9단계: 클라이언트를 사용하여 원격 데스크톱에 연결

VNC 뷰어 클라이언트를 설치한 후 이를 열면 아래 화면과 비슷한 내용이 표시됩니다. tecmint사용자에 대해 VNC ID(예: 1)와 함께 VNC 서버 IP 주소를 입력하세요. >.

'vncpasswd' 명령으로 생성한 비밀번호를 입력하세요.

이제 원격 데스크톱에 연결되었습니다.