xrdp實現windows遠端桌面連線問題
在這裡,我將介紹XRDP的安裝配置方法。我們可以很方便的通過windows遠端桌面 linux。
xrdp安裝配置方法
開啟終端:依次安裝
sudo apt-get install xrdp
sudo apt-get install vnc4server tightvncserver
設定xrdp
echo "gnome-session --session=gnome-classic" > ~/.xsession
該命令的作用是由於安裝了 gnome桌面,ubuntu12.04中同時存在unity、GNOME多個桌面管理器,需要啟動的時候指定一個,不然
即使遠端登入驗證成功以後,也只是背景。
xrdp的配置文件在/etc/xrdp目錄下的xrdp.ini和sesman.in,一般選擇預設。
重啟 xrdp
sudo /etc/init.d/xrdp restart
執行Windows的mstsc
即windows 遠端桌面,開啟輸入遠端的Ip,連線,輸入使用者密碼 即可遠端linux.
遇到的錯誤
1,xrdp 訪問 ubuntu 只看到背景,看不到選單欄的解決辦法
方法:安裝gnome-panel
sudo apt-get install gnome-panel
2,出現錯誤:連線錯誤
connecting to sesman ip 127.0.0.1 port 3350
sesman connect ok
sending login info to sesman
login successful for display 14
started connecting
connecting to 127.0.0.1 5914
error - problem connecting
xrdp-sesman.log下錯誤為:
[INFO ] starting Xvnc session...
[ERROR] X server for display 10 startup timeout[INFO ] starting xrdp-sessvc - xpid=2924 - wmpid=2923
[ERROR] X server for display 10 startup timeout
[ERROR] another Xserver is already active on display 10
[DEBUG] aborting connection...
如果你的log也有類似 X server for display 10 startup timeout
問題根源在於tightvnc,出現問題的版本跟X字型有衝突,導致連線Xserver出錯。
解決方法:
apt-get purge tightvnc xrdp
apt-get install tightvncserver xrdp
最後:
啟動xrdp服務,sudo /etc/init.d/xrdp restart,此時會啟用相應埠,配置方面預設即可。
通過命令:netstat -tnl
檢視 3350 3389 5910 這三個埠處於LISTEN,一般就沒問題了。
3. 執行一段時間後,出現xrdp_mm_process_login_response: login failed
問題原因:遠端桌面沒有正確關閉,雖然在windows 系統關閉遠端桌面連線,但是在裡linux上的程序還在執行,導致連線數量達到上限,出現問題。
解決:通過設定sesman.in檔案內的引數,解決。
[email protected]:~# cat /etc/xrdp/sesman.ini
[Globals]
ListenAddress=127.0.0.1
ListenPort=3350
EnableUserWindowManager=1
UserWindowManager=startwm.sh
DefaultWindowManager=startwm.sh
[Security]
AllowRootLogin=1
MaxLoginRetry=4
TerminalServerUsers=tsusers
TerminalServerAdmins=tsadmins
[Sessions]
X11DisplayOffset=10
MaxSessions=50
KillDisconnected=1
IdleTimeLimit=0
DisconnectedTimeLimit=0
[Logging]
LogFile=/var/log/xrdp-sesman.log
LogLevel=DEBUG
EnableSyslog=0
SyslogLevel=DEBUG
[X11rdp]
param1=-bs
param2=-ac
param3=-nolisten
param4=tcp
[Xvnc]
param1=-bs
param2=-ac
param3=-nolisten
param4=tcp
param5=-localhost
param6=-dpi
param7=96
可以修改會話設定 :將最大會話限制該大 MaxSessions=50
將KillDisconnected=1;則每次斷開連線時,linux都會關閉會話程序。
然後重啟/etc/init.d/xrdp restart 就可解決問題