使用xrdp实现Windows 远程桌面linux
一般情况下我们用ssh客户端远程登陆Linux系统,至于图形界面下的Linux远程登陆工具,我们一般都会想到vnc,但它的安全性不够,在这里,我将介绍XRDP的安装配置方法。我们可以很方便的通过Windows远程桌面UbuntuLinux。
xrdp安装配置方法
打开终端:依次安装
sudoapt-getinstallxrdp
sudoapt-getinstallvnc4servertightvncserver
设置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/xrdprestart
运行Windows的mstsc
即windows远程桌面,打开输入远程的Ip,连接,输入用户密码即可远程linux.
遇到的错误
1,xrdp访问ubuntu只看到背景,看不到菜单栏的解决办法
方法:安装gnome-panel
sudoapt-getinstallgnome-panel
2,Failedtoloadsession"gnome"
桌面用ubuntu-2d试下
键入命令:echo"gnome-session–session=ubuntu-2d">~/.xsession,然后重启xrdp。
3,出现错误:
connectingtosesmanip127.0.0.1port3350
sesmanconnectok
sendinglogininfotosesman
loginsuccessfulfordisplay14
startedconnecting
connectingto127.0.0.15914
error-problemconnecting
xrdp-sesman.log下错误为:
[INFO]startingXvncsession...
[ERROR]Xserverfordisplay10startuptimeout[INFO]startingxrdp-sessvc-xpid=2924-wmpid=2923
[ERROR]Xserverfordisplay10startuptimeout
[ERROR]anotherXserverisalreadyactiveondisplay10
[DEBUG]abortingconnection...
如果你的log也有类似Xserverfordisplay10startuptimeout和anotherXserverisalreadyactiveondisplay10
问题根源在于tightvnc,出现问题的版本跟X字体有冲突,导致连接Xserver出错。
解决方法:
apt-getpurgetightvncxrdp
apt-getinstalltightvncserverxrdp
最后:
启动xrdp服务,sudo/etc/init.d/xrdprestart,此时会启用相应端口,配置方面默认即可。
通过命令:netstat-tnl
查看335033895910这三个端口处于LISTEN,一般就没问题了。
dpkg-L+软件包的名字,可以知道这个软件包包含了哪些文件.
4,ubuntu13.10及以后版本无背景:
感谢评论中的童鞋提出的方案:
xrdp支持不了13.10的gnome了,解决办法是装个xfce界面,
sudoapt-getinstallxubuntu-desktop
然后:
echoxfce4-session>~/.xsession
再设置配置文件
sudogedit/etc/xrdp/startwm.sh
在./etc/X11/Xsession前一行插入
xfce4-session
重启xrdp
sudoservicexrdprestart