개요
xrdp는 Linux 및 Unix 계열 운영체제에서 동작하는 오픈 소스 원격 데스크톱 프로토콜(RDP) 서버이다. Windows 운영체제의 기본 원격 데스크톱 클라이언트(RDP 클라이언트)를 포함한 다양한 RDP 클라이언트가 xrdp 서버에 연결하여 그래픽 사용자 인터페이스(GUI) 환경에 원격 접속할 수 있도록 한다.
주요 특징
| 특징 | 내용 |
|---|---|
| 프로토콜 지원 | Microsoft RDP 표준을 구현한다. |
| 그래픽 백엔드 | 기본적으로 Xvnc, X11rdp, 또는 Xorg를 백엔드로 사용한다. |
| 인증 방식 | PAM(Pluggable Authentication Modules) 기반 인증을 지원한다. |
| 암호화 | TLS를 통한 네트워크 암호화 옵션을 제공한다. |
| 다중 사용자 | 다수의 동시 접속을 지원한다. |
| 라이선스 | GPLv3(또는 그 이후 버전) 하에 배포된다. |
| 플랫폼 | 주로 Debian, Ubuntu, Fedora, CentOS, Arch Linux 등 주요 Linux 배포판에서 패키지 형태로 제공된다. |
역사 및 개발
- 최초 개발자는 Jay Sorg이며, 프로젝트는 2007년경 공개되었다.
- 이후 커뮤니티 주도의 개발이 이어져 다양한 배포판에 기본 패키지로 포함되었다.
설치 및 사용
-
패키지 설치
- Debian/Ubuntu:
sudo apt install xrdp - Fedora/CentOS:
sudo dnf install xrdp(또는yum)
- Debian/Ubuntu:
-
서비스 관리
- 시스템 시작 시 자동 실행:
sudo systemctl enable --now xrdp - 현재 상태 확인:
systemctl status xrdp
- 시스템 시작 시 자동 실행:
-
방화벽 설정
- 기본 포트 3389/tcp를 허용한다. 예:
sudo ufw allow 3389/tcp
- 기본 포트 3389/tcp를 허용한다. 예:
-
클라이언트 접속
- Windows의 “원격 데스크톱 연결” 또는 Remmina, FreeRDP 등 RDP 클라이언트를 이용해 서버 IP와 포트(3389)로 접속한다.
사용 맥락
- 기업 환경: Linux 서버에 대한 그래픽 기반 관리 및 유지보수.
- 교육/연구: 강의실 또는 실험실에서 여러 사용자가 동일한 Linux 머신에 원격으로 접근.
- 개인용: 가정용 PC에서 Linux 데스크톱을 원격으로 이용하고자 할 때.
관련 기술 및 대안
- VNC: X11 기반 원격 화면 전송 프로토콜, RDP와 비교해 성능 및 보안 측면에서 차이가 있다.
- NX (NoMachine), X2Go: 고성능 압축 및 전송을 제공하는 다른 원격 데스크톱 솔루션.
- Wayland: 최신 Linux 디스플레이 서버 프로토콜로, xrdp는 전통적으로 X11 기반이므로 Wayland 환경에서는 추가 구성(예: xrdp‑wayland)이나 대체 솔루션이 필요할 수 있다.
제한 사항
- 기본 xrdp 구현은 Xorg 기반 세션에 최적화되어 있으며, Wayland 전용 세션에서는 별도 설정이 필요하다.
- 고해상도 디스플레이 또는 저대역폭 환경에서 성능 저하가 발생할 수 있다.
참고
- 공식 프로젝트 웹사이트: https://github.com/neutrinolabs/xrdp
- 배포판 별 패키지 매뉴얼 페이지(예:
man xrdp)
위 내용은 현재(2026년) 공개된 문서와 소스코드, 주요 Linux 배포판의 패키지 정보를 기반으로 작성하였다.