▶︎ RustDesk
RustDesk
는 외부에 있는 사용자가 원격지에 있는 데스크탑에 접근하고 제어할 수 있는 오픈 소스 원격 데스크톱 소프트웨어이다.
비슷한 소프트웨어로는 TeamViewer
가 있다.
프로젝트 이름으로 유추 해볼 수 있듯이 rust
언어를 사용하여 구현되었으며,
크로스 플랫폼 호환성을 제공하여 Windows
, Mac
, Linux
운영 체제에서 self-hosted
구축이 가능하다.
▶︎ 설치하기
‣ 사전 작업
1. rustdesk
프로젝트용 폴더 생성
mkdir -p ~/rustdesk
2. 방화벽 포트 오픈
- TCP
21115
: NAT 테스트용21116
: TCP 연결 서비스21117
: 릴레이 서비스21118
: 웹 클라이언트 지원21119
: 웹 클라이언트 지원
- UDP
21116
: ID 등록 및 HeartBeat 서비스
3. 포트 포워딩
릴레이 서버만 사용하는 경우 21117
포트만, 웹까지 사용하려면 21118 - 21119
도 같이 포워딩 해주면 된다.
‣ Docker Compose 작성
~/rustdesk/docker-compose.yaml
services:
hbbs:
depends_on:
- "hbbr"
image: rustdesk/rustdesk-server:latest
command: hbbs
volumes:
- type: volume
source: data
target: /root
networks:
- "rustdesk-net"
restart: unless-stopped
container_name: hbbs
hbbr:
image: rustdesk/rustdesk-server:latest
command: hbbr
volumes:
- type: volume
source: data
target: /root
networks:
- "rustdesk-net"
restart: unless-stopped
container_name: hbbr
networks:
rustdesk-net:
name: rustdesk-net
external: true
volumes:
data: {}
‣ 실행
위 yaml 파일 작성이 완료 되었다면, 아래 명령어를 실행하여 컨테이너 생성
docker-compose up -d --build
‣ 클라이언트 설치
rustdesk에 들어가서 플랫폼에 맞는 클라이언트를 설치
설치가 완료되었다면 프로그램을 실행해 Relay Server를 추가해주자.
Relay 서버 항목에 Relay Server의 IP 또는 도메인 주소를 넣어주면 된다.
Apply
를 누르고 Home
으로 다시 넘어가서 하단에 아래와 같이 뜨면 성공이다.