一般情况下我们用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
即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 timeout和another 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