使用xrdp实现Windows 远程桌面 Ubuntu Linux

一般情况下我们用ssh客户端远程登陆Linux系统,至于图形界面下的Linux远程登陆工具,我们一般都会想到vnc,但它的安全性不够,在这里,我将介绍XRDP的安装配置方法。我们可以很方便的通过Windows远程桌面Ubuntu 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

使用xrdp实现Windows 远程桌面 Ubuntu Linux使用xrdp实现Windows 远程桌面 Ubuntu Linux

即windows 远程桌面,打开输入远程的Ip,连接,输入用户密码 即可远程linux.

遇到的错误

1,xrdp 访问 ubuntu 只看到背景,看不到菜单栏的解决办法 

方法:安装gnome-panel
sudo apt-get install gnome-panel 

2,Failed to load session "gnome"

桌面用 ubuntu-2d 试下

键入命令:echo  "gnome-session –session=ubuntu-2d" > ~/.xsession ,然后重启xrdp。 

3,出现错误

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 timeoutanother Xserver is already active on display 10

问题根源在于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,一般就没问题了。

dpkg -L +软件包的名字,可以知道这个软件包包含了哪些文件.

4,ubuntu 13.10 及以后版本 无背景

感谢评论中的童鞋提出的方案:

xrdp支持不了13.10的gnome了,解决办法是装个xfce界面, 

sudo apt-get install xubuntu-desktop 

然后:

echo xfce4-session >~/.xsession 

再设置配置文件

sudo gedit /etc/xrdp/startwm.sh

在. /etc/X11/Xsession 前一行插入
xfce4-session

重启xrdp
sudo service xrdp restart

相关推荐