[ETC]/RustDesk

오픈소스 원격 데스크톱 솔루션 RustDesk - 서버 구축

그러게나말이다 2025. 3. 19. 14:06
반응형

 

Window 원격 데스크톱도 있지만,

외부 오픈소스를 통해 더 간편하고

보안까지 강화된 원격 프로그램을

소개하고자 합니다.

 

당연히 서버 및 네트워크까지

완벽하게 잘 구축됐다는 가정하에

진행합니다.

 

-OS: Ubuntu 22.04 LTS


1. RustDesk 개념

RustDesk는 중계 서버(Relay Server)와 
NAT 트래버설 서버(Heartbeat Server, HBBS)

를 사용합니다.

중계 서버는 원격 컴퓨터 간의 연결이 
P2P(직접 연결)로 불가능할 때, 
중계 서버를 통해 데이터를 전달합니다.

NAT 트래버설 서버는 내부 네트워크
(방화벽 또는 NAT 뒤에 있는 장치) 간의 
연결을 설정하도록 돕는 역할을 합니다.


2. RustDesk 서버 구축

2-1. 압축풀기 프로그램 설치

서버 설치파일이 zip 형식이라

압축풀기 프로그램을 필수로 설치해야합니다.

 

sudo apt install unzip -y

 

2-2. 서버 설치파일 다운로드

윈도우 환경에서 사이트에 접근하여

직접 다운로드 받듯이 우분투 환경에서도

해당 파일을 다운로드 받을 수 있는

Github 사이트로 접근하여

다운로드 받습니다.

 

wget https://github.com/rustdesk/rustdesk-server/releases/download/1.1.11-1/rustdesk-server-linux-amd64.zip

 

 

2-3. 서버 설치파일 압축풀기

1번에서 다운받은 솔루션을 통해

zip 파일을 해제해줍니다.

 

unzip rustdesk-server-linux-amd64.zip

 

2-4. 해제여부 확인

아래처럼 amd64와 rustdesk-server-linux-amd64.zip

두 파일이 home 화면에 있음을

알 수 있습니다.

 

여기서 cd amd64로 이동하게 되면,

아래처럼 hbbr과 hbbs, utils가 보이게 되는데

정상적으로 잘 다운로드 된 것입니다.

 

2-5. 서비스 등록(HBBS)

정상적으로 작동하기 위해선

위에서 언급했던 NAT 트래버설

서버에 대한 설정을 해줘야 합니다.

 

nano /etc/systemd/system/hbbs.service

명령어를 입력한 후,

아래와 같이 내용을 차례대로

입력해줍니다.

 

아래 빈칸은 해당 서버 ip를

입력해주면 됩니다.

 

2-6. 서비스 등록(HBBR)

똑같이 릴레이 서버 또한

아래와 같이 차례대로

입력해줍니다.

 

nano /etc/systemd/system/hbbr.service

 

 

2-7. 서비스 실행

각 순서대로 서비스를 실행해줍니다.

 

* 데몬 설정 파일 재시작
systemctl daemon-reload

* 서비스 재시작
systemctl restart hbbs.service

* 부팅 후 서비스 자동 실행
systemctl enable hbbs.service

* 서비스 재시작
systemctl restart hbbr.service

* 부팅후 서비스 자동 실행
systemctl enable hbbr.service

 

2-8. 키 값 확인

이제 다 끝났습니다.

제일 중요한 키 값을 확인합니다.

이 키 값으로 클라이언트의 서버

설정에 넣어줘야 합니다.

 

2-9. 방화벽 구성 및 설정

apt install iptables-persistent -y
mkdir -p /etc/iptables

 

RustDesk 서버와 클라이언트가 정상적으로 

통신하려면 21115~21119 (TCP)와 21116 (UDP) 

포트가 열려 있어야 합니다.

 

그래서 INPUT으로 해당 포트를 열 수 있도록

명령어를 입력합니다.


iptables -A INPUT -p tcp --dport 21114:21119 -j ACCEPT
iptables -A INPUT -p udp --dport 21116 -j ACCEPT
iptables -A INPUT -p tcp --dport 22 -j ACCEPT

반응형