RDP가 필요한 때
브라우저나 파일 관리자처럼 그래픽 화면이 있어야 하는 프로그램을 쓸 때 RDP로 접속해요. 서버에서는 XRDP가 연결을 받아 Ubuntu 데스크톱을 열어 줘요.
| 방법 | 잘 맞는 작업 | 필요한 것 |
|---|---|---|
| SSH | 터미널 작업, 학습 실행, 파일 전송 | SSH 키 또는 비밀번호 |
| 원격 데스크톱 (RDP) | GUI 프로그램, 데스크톱 환경 | XRDP가 들어 있는 템플릿과 계정 비밀번호 |
| Sunshine과 Moonlight | 게임, 3D 화면처럼 GPU로 그리는 화면 | Sunshine 포트 세트와 Moonlight 앱 |
| 브라우저 콘솔 | 부팅 화면 확인, 네트워크가 끊겼을 때 복구 | 서버 상세 화면의 콘솔 열기 |
로그인 비밀번호 준비하기
사용자명은 서버를 만들 때 접속 설정 단계에 보이던 로그인 사용자명이에요.
- 인증 방식으로 비밀번호를 골랐다면 그 비밀번호를 써요. 잊었다면 서버 상세 화면 설정 탭의 비밀번호 변경으로 새로 정하세요. 서버가 켜져 있어야 바꿀 수 있어요.
- SSH 키로 만들었다면 계정에 비밀번호가 없어요. SSH로 접속한 뒤 아래 명령으로 먼저 정하세요.
sudo passwd $USER방법 1. SSH 터널로 접속하기
RDP를 SSH 연결 안으로 통과시켜서, 포트를 새로 열지 않는 가장 안전한 방법이에요. <port>, <user>, <host>는 서버 상세 화면의 서버 접속에 나오는 값이에요.
ssh -N -L 13389:localhost:3389 -p <port> <user>@<host>아무것도 출력되지 않는 게 정상이에요. 이 상태로 원격 데스크톱 앱에서 localhost:13389에 접속하세요. 내 컴퓨터의 3389 포트는 Windows 원격 데스크톱이 쓰고 있을 수 있어서 다른 번호를 써요.
~/.ssh/config에 별칭을 만들어 뒀다면 Host 블록에 LocalForward 13389 localhost:3389 한 줄을 넣고 ssh -N gpu-server로 열어도 돼요.
방법 2. 콘솔에서 공개 포트 열기
SSH 터널을 쓰기 어렵다면 서버 상세 화면 네트워크 탭에서 3389 포트를 공개 포트로 열어요. 포트 표에 3389가 템플릿 기본값 표시와 함께 이미 있다면 이 과정은 건너뛰세요.
내부 포트에 3389를 입력해요
단일 포트는 그대로 두고 내부 포트에
3389를 입력해요.프로토콜은 TCP를 골라요
저지연 포트는 꺼 둬도 돼요.
설명을 적어요
원격 데스크톱처럼 나중에 알아보기 쉬운 이름을 적어요.공개 포트 추가를 눌러요
공개 포트 번호는 자동으로 정해져요.
203.0.113.24:2201722TCPSSH / SFTP설정됨시스템203.0.113.24:3184223389TCP원격 데스크톱설정됨주소:포트를 원격 데스크톱 앱에 입력해요. 상태가 설정됨이어야 접속돼요. (1)은 방금 누른 공개 포트 추가 버튼이에요.운영체제별로 접속하기
주소:포트는 SSH 터널이라면 localhost:13389, 공개 포트라면 네트워크 탭의 공개 엔드포인트예요.
| 운영체제 | 앱 | 주소:포트를 넣는 곳 |
|---|---|---|
| Windows | 기본 앱인 원격 데스크톱 연결 (Win + R에서 mstsc 실행) | 컴퓨터 칸 |
| macOS | App Store의 Windows App (예전 이름 Microsoft Remote Desktop) | PC를 추가할 때 PC 이름 칸 |
| Linux | Remmina, 프로토콜은 RDP | 주소 입력란 |
처음 접속할 때 나오는 인증서 경고는 XRDP가 스스로 만든 인증서 때문이에요. SSH 터널로 접속했다면 계속 진행해도 돼요. XRDP 로그인 화면에서는 세션을 Xorg로 두고 사용자명과 비밀번호를 입력하세요.
자주 만나는 문제
로그인하자마자 검은 화면이 나오거나 바로 끊겨요
같은 사용자가 브라우저 콘솔 화면에 이미 로그인해 있으면 생길 수 있어요. 콘솔에서 로그아웃한 뒤 다시 접속하고, 그래도 같다면 SSH로 접속해 XRDP를 다시 시작하세요.
sudo systemctl restart xrdp연결할 수 없다거나 시간이 초과됐다고 나와요
먼저 서버 안에서 XRDP가 실행 중이고 3389 포트를 열고 있는지 확인하세요.
systemctl status xrdp --no-pager
sudo ss -tlnp | grep 3389active (running)이 아니거나 3389가 보이지 않으면 템플릿에 XRDP가 없을 수 있어요. 데스크톱 환경까지 직접 설치하려면 시간과 용량이 꽤 들어서, 데스크톱이 들어 있는 템플릿으로 서버를 만드는 게 빨라요.
XRDP가 정상이라면 공개 포트는 상태가 설정됨이고 내부 포트가 3389인지, SSH 터널은 터널을 연 터미널이 아직 열려 있는지 확인하세요.
비밀번호가 맞는데 로그인이 안 돼요
사용자명이 로그인 사용자명과 같은지, SSH 키로 만든 서버라면 sudo passwd $USER로 비밀번호를 정했는지 확인하세요. 키보드가 한글 입력 상태면 비밀번호가 다르게 입력될 수 있어요.
화면이 느리거나 끊겨 보여요
원격 데스크톱 앱에서 색 깊이를 16비트로 낮추고 해상도를 줄이면 훨씬 가벼워져요. 데스크톱의 애니메이션 효과를 꺼도 도움이 돼요.
자주 묻는 질문
RDP 창을 닫으면 실행 중인 작업이 멈추나요?
창만 닫으면 보통 XRDP 세션이 서버에 남아 있어서 다시 접속해 이어서 쓸 수 있어요. 데스크톱에서 로그아웃하면 세션 안의 프로그램도 함께 종료되니, 오래 걸리는 학습은 tmux 안에서 실행하세요.
브라우저 콘솔과 RDP는 무엇이 다른가요?
콘솔은 서버의 실제 화면을 브라우저로 보여 줘서, 네트워크 설정이 꼬였을 때도 들어갈 수 있어요. 대신 텍스트 입력으로 한글을 보낼 수 없고 화면이 느려요. 일상적인 데스크톱 작업은 RDP가 편해요.
