本文介紹如何在 Ubuntu Server 安裝桌面環境與 XRDP,並解決以下常見問題:
- 如何安裝 Desktop(XFCE / Xubuntu Desktop)
- 如何安裝 XRDP
- XRDP 只在 IPv6 監聽(:::3389)
- NAT/Port Forward 轉發後無法連線
- 登入後出現
“Oh no! Something has gone wrong.” - 黑畫面 / 無法載入桌面
本篇提供完整、可直接使用的解決方案。
1. 安裝 Desktop(XFCE)與 XRDP
建議使用 XFCE——輕量、穩定、最適合 Server 遠端桌面。
(1)安裝桌面環境
選擇 A / B 其中一個即可。
A. 安裝完整 Xubuntu Desktop(比較完整)
sudo apt update
sudo apt install -y xubuntu-desktop
B. 安裝純 XFCE(更輕量,建議)
sudo apt update
sudo apt install -y xfce4 xfce4-goodies
(2)安裝 XRDP
sudo apt install -y xrdp
sudo systemctl enable xrdp
sudo systemctl start xrdp
加入 SSL 群組(避免證書存取權限問題):
sudo adduser xrdp ssl-cert
2. 修正 XRDP 啟動 IPv4(預設只開 IPv6)
Ubuntu 22.04 / 24.04 預設 xrdp 會 只監聽 IPv6 (::) → 造成外網或 NAT 無法連線。
編輯:
sudo nano /etc/xrdp/xrdp.ini
找到原本的:
port=3389
改成:
port=tcp://0.0.0.0:3389
重啟 XRDP:
sudo systemctl restart xrdp xrdp-sesman
確認是否出現:
netstat -tulpen | grep 3389
預期:
tcp 0 0 0.0.0.0:3389 0.0.0.0:* LISTEN xxxx/xrdp
如果只看到 tcp6 :::3389 → 代表你還沒修改成功。
3. NAT + Port Forward 後仍無法連線(回程路由問題)
你使用:
外部(public_ip:9250) → Ubuntu(192.168.100.250:3389)
Kernel log 顯示:
- 外部 SYN 進來了
- 但伺服器沒有回 SYN-ACK(導致連線卡住)
原因:
Ubuntu 伺服器回包走錯 Gateway(非 DNAT 那台)→ NAT 裝置收不到回應 → 連線 timeout。
解法(你使用的是方案 2:SNAT,完全正確)
在 NAT 盒加入 SNAT:
iptables -t nat -A PREROUTING -p tcp -d $public_ip --dport 9250 \
-j DNAT --to-destination 192.168.100.250:3389
iptables -t nat -A POSTROUTING -p tcp -d 192.168.100.250 --dport 3389 \
-j SNAT --to-source 192.168.100.254
如此:
- DNAT:外網 → Ubuntu
- SNAT:讓回包一定走回 NAT 盒
連線立即成功。
4. 登入後看到 “Oh no! Something has gone wrong.”
Ubuntu Server 預設使用 GNOME / Wayland,XRDP 不支援
→ 直接爆錯。
一次到位修復(你已成功使用)
sudo apt update
sudo apt install -y xfce4 xfce4-goodies xorgxrdp
設定 user 預設跑 XFCE:
echo "startxfce4" > ~/.xsession
為所有 future user 設定:
echo "startxfce4" | sudo tee /etc/skel/.xsession
修改 XRDP 啟動流程:
sudo sed -i '/^\. \/etc\/X11\/Xsession/i [ -x \/usr\/bin\/startxfce4 ] \&\& exec \/usr\/bin\/startxfce4' /etc/xrdp/startwm.sh
重啟:
sudo systemctl restart xrdp xrdp-sesman
登入後就會載入 XFCE,不再出錯。
5. 測試連線(Windows)
開啟:
mstsc
連:
public_ip:9250
或 LAN :
192.168.100.250
即可看到完整 XFCE 桌面。
✔ 完成!
你現在擁有:
- ✨ Ubuntu Server + Desktop + XRDP 完整環境
- ✨ IPv4 監聽正常
- ✨ NAT/SNAT 完整連線
- ✨ XFCE 桌面穩定無錯誤