# CentOS 設定外部連結XRDP ###### tags: `系統`,`Linux` # 安裝 yum 預設沒有 XRDP,須先更新 yum 套件資料庫,到 [EPEL](https://fedoraproject.org/wiki/EPEL) 官網 找到 The newest version of ‘epel-release’ for EL8,點擊打開新頁面,複製 epel-release-8.noarch 的連結(數字可能會有變化,當前版本是 8)貼上後更新: `yum install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm` 安裝 XRDP,因為 XRDP 最終會自動啟用 VNC ,因此也必須安裝 tigervnc-server: `yum install xrdp tigervnc-server` # 啟用 啟用並開機自動啟動 XRDP 服務,未來只要用遠端連線連到這部主機,系統就會自動啟動 VNC 本機的 Port 5910~5920,接著即可透過 RDP((Remote Desktop Protocol)協定取得 VNC 的畫面: `systemctl start xrdp` `systemctl enable xrdp` XRDP 遠端桌面的 Port 3389,但是它會再連到本機的 Port 3350 去喚醒一個 VNC 連線: `netstat -antup | grep xrdp` :::warning 找不到 netstat 指令請先 yum 安裝 net-tools ::: # 防火牆 允許 RDP Port 3389,並重新載入設定: `firewall-cmd --permanent --zone=public --add-port=3389/tcp` `firewall-cmd --reload` # 測試連線 使用Microsoft Remote desktop <img src="https://i.imgur.com/FoFIYgX.png" width=300> 1. 新增連線 <img src="https://i.imgur.com/vJC4rj9.png" width=300> 2. 設定ip & 連線資訊 - **Ip** - <img src="https://i.imgur.com/eT8Oizn.png" width=300> - **User Infomation** - <img src="https://i.imgur.com/UNWHiUa.png" width=300> 3. 登入 <img src="https://i.imgur.com/CshojKi.jpg" width=300> 4. 成功 <img src="https://i.imgur.com/zKMkSmA.png" width=300> # XRDP config xrdp的配置文檔在`/etc/xrdp`目錄下的`xrdp.ini`和`sesman.ini` ## xrdp.ini `vi ./etc/xrdp/xrdp.ini` 關鍵部分在globals ### **globals** ``` bitmap_cache=yes點陣圖緩存 bitmap_compression=yes 點陣圖壓縮 port=3389 監聽埠 crypt_level=low 加密程度(low為40位,high為128位,medium為雙40位) channel_code=1 不知道是什麼 ``` ## sesman.ini `vi ./etc/xrdp/sesman.ini` ### **Globals** ``` ListenAddress=127.0.0.1 監聽ip地址(默認即可) ListenPort=3350 監聽埠(默認即可) EnableUserWindowManager=1 1為開啟,可讓用戶自定義自己的啟動腳本 UserWindowManager=startwm.sh DefaultWindowManager=startwm.sh ``` ### **Security** ``` AllowRootLogin=1 允許root登陸 MaxLoginRetry=4 最大重試次數 TerminalServerUsers=tsusers 允許連接的用戶組(如果不存在則默認全部用戶允許連接) TerminalServerAdmins=tsadmins 允許連接的超級用戶(如果不存在則默認全部用戶允許連接) ``` ### **Sessions** ``` MaxSessions=10 最大會話數 KillDisconnected=0 是否立即關閉斷開的連接(如果為1,則斷開連接後會自動註銷) IdleTimeLimit=0 空閒會話時間限制(0為沒有限制) DisconnectedTimeLimit=0 斷開連接的存活時間(0為沒有限制) ``` ### **Logging** ``` LogFile=./sesman.log 登陸日誌文件 LogLevel=DEBUG 登陸日誌記錄等級(級別分別為,core,error,warn,info,debug) EnableSyslog=0 是否開啟日誌 SyslogLevel=DEBUG 系統日誌記錄等級 ```
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up