Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

RedHat 6 使用 xrdp 實現 Windows 遠程桌面連接

編輯:關於 Linux

Linux 原生無遠程桌面協議(RDP)服務,但通過安裝 xrdp,可讓 Windows 自帶的「遠程桌面連接」(mstsc)直接訪問 Linux 圖形界面。本文記錄在 RedHat 6 / CentOS 6 上從源碼編譯安裝 xrdp、配置端口、防火牆放行及設置開機自啟的完整步驟。

xrdp 連接成功截圖

前置準備:安裝編譯依賴

yum install -y gcc make pam-devel openssl-devel libtool \
    libX11-devel libXfixes-devel libXrandr-devel \
    nasm autoconf automake

步驟 1:下載並編譯安裝 xrdp

# 下載源碼(示例版本 0.6.0,建議用較新版本)
wget https://downloads.sourceforge.net/project/xrdp/xrdp/0.6.0/xrdp-v0.6.0.tar.gz

# 解壓進入
tar -xzf xrdp-v0.6.0.tar.gz
cd xrdp-v0.6.0

# 生成 configure 腳本(若無 configure 文件)
./bootstrap

# 配置、編譯、安裝
./configure
make
make install   # 需 root 權限

注意:若 make 報錯,根據提示安裝缺失的 -devel 包(如 libX11-devel)。

步驟 2:配置 xrdp 監聽端口

編輯 /etc/xrdp/xrdp.ini,修改 [globals] 區段下的 port 為自定義值(如 6666),避開默認 3389 減少掃描風險:

[globals]
port=6666
...

步驟 3:啟動服務並設置開機自啟

# 啟動
/etc/xrdp/xrdp.sh start

# 重啟(配置修改後)
/etc/xrdp/xrdp.sh restart

# 加入開機自啟
echo "/etc/xrdp/xrdp.sh start" >> /etc/rc.local
chmod +x /etc/rc.local

步驟 4:防火牆放行端口

# 方法一:iptables 命令直接插入規則
iptables -I INPUT -p tcp --dport 6666 -j ACCEPT
service iptables save

# 方法二:編輯配置文件 /etc/sysconfig/iptables
# 複製 22 端口行,修改端口為 6666
-A INPUT -m state --state NEW -m tcp -p tcp --dport 6666 -j ACCEPT
service iptables restart

若臨時測試可直接 service iptables stop 關閉防火牆(生產環境不建議)。

步驟 5:Windows 端連接測試

  1. 打開「遠程桌面連接」(mstsc)。
  2. 輸入 Linux服務器IP:6666(如 192.168.76.201:6666)。
  3. 出現 xrdp 登錄界面,輸入 Linux 系統用戶名密碼(需為本地用戶,非 LDAP/AD)。
  4. 選擇會話類型:sesman-Xvnc(推薦,支持斷開重連)或 sesman-X11rdp。

常見問題排查

現象可能原因解決方法
連接後黑屏/灰屏桌面環境未安裝或會話類型錯誤安裝 GNOME/XFCE:yum groupinstall "Desktop";選擇 sesman-Xvnc
認證失敗用戶無 Shell 或 PAM 配置問題確保用戶有有效 Shell(/bin/bash),檢查 /etc/pam.d/xrdp-sesman
剪貼板/文件重定向不工作未安裝 xrdp 剪貼板模塊安裝 xorgxrdp 包或編譯安裝 xrdp 0.9+ 版本
SELinux 阻擋策略禁止 xrdp 訪問文件/網絡setsebool -P xrdp_allow_tcp_connect 1 或設置 permissive 模式

現代系統建議(RHEL 7/8、CentOS 7/8、Ubuntu 18.04+)

新版系統可直接使用 EPEL 源安裝預編譯包,無需手動編譯:

# RHEL/CentOS 7/8
yum install -y epel-release
yum install -y xrdp tigervnc-server
systemctl enable --now xrdp
firewall-cmd --permanent --add-port=3389/tcp
firewall-cmd --reload

# Ubuntu
apt update && apt install -y xrdp
systemctl enable --now xrdp
ufw allow 3389/tcp

新版 xrdp (0.9+) 已內建 xorgxrdp,性能與兼容性大幅提升,首選包管理器安裝。

Copyright © Windows教程網 All Rights Reserved