本文介绍在CentOS 7.3下安装Xfce+VNC+XRDP实现远程桌面连接的方法,使用root用户进行操作。
1.配置前准备
升级更新(可选)
更新资源,避免资源过旧出现问题
yum update
安装额外yum源
yum install epel-release
2.安装Xfce
1.安装 ◾安装Xfce
yum groups install Xfce
2.配置Xfce(可选) ◾安装中文字体
yum install wqy*
//也可以安装其他字体
或
yum install cjkuni-ukai-fonts
◾安装中文输入法
安装ibus中文输入法
yum install ibus.x86_64
yum install ibus-libpinyin.x86_64
安装输入法选择器
yum install im-chooser.x86_64
◾设置Xfce中文显示
vim /etc/locale.conf
将
LANG=en_US.UTF-8
改为
LANG=zh_CN.UTF-8
◾配置xfce为默认桌面
打开用户目录下的.Xclients文件
vim ~/.Xclients
把下面内容写入文件
#!/bin/bash
XFCE=“
(
w
h
i
c
h
x
f
c
e
4
−
s
e
s
s
i
o
n
2
>
/
d
e
v
/
n
u
l
l
)
"
e
x
e
c
"
(which xfce4-session 2>/dev/null)" exec "
(whichxfce4−session2>/dev/null)"exec"XFCE”
增加权限
chmod +x ~/.Xclients
重启xrdp
systemctl restart xrdp
此时,通过远程桌面登录后,默认显示的就是Xfce桌面了。
3.安装XRDP
1.安装
yum install xrdp
2.安装与配置TigerVNC
安装
yum install tigervnc tigervnc-server
详见步骤4
3.配置
◾配置xrdp.ini文件
需配置xrdp.ini,否则远程连接可能无法成功
vim /etc/xrdp/xrdp.ini
把max_bpp=32 改为max_bpp=24
◾配置SELinux
需配置SELinux , 否则可能无法启动xrdp服务,或者启动出错
chcon -t bin_t /usr/sbin/xrdp
chcon -t bin_t /usr/sbin/xrdp-sesman
4.启动xrdp服务 ◾启动服务
# systemctl start xrdp
◾设为开机启动
# systemctl enable xrdp
5.额外内容 ◾查看xrdp服务是否正常启动
如果看到Active则说明正常
# systemctl status xrdp.service
看xrdp和xrdp-sesman是否正常启动
# netstat -antup|grep xrdp
◾设置防火墙(二选一) ◾关闭防火墙
# systemctl stop firewalld.service
# systemctl disable firewalld.servie
◾打开3389端口
# firewall-cmd --permanent --zone=public --add-port=3389/tcp
# firewall-cmd --reload
◾客户端配置
使用服务 Windows 自带的远程桌面连接程序进行连接。
4.安装TigerVNC
1.安装
yum install tigervnc tigervnc-server
2.设置vnc密码
vncpasswd
如需为其他用户配置密码
vncpasswd user
其中user为用户名,如 root
3.配置
◾拷贝配置文件
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
其中 vncserver@:1.server 的 1 为服务实例编号。
VNC服务可以设置多个服务实例。
一个服务实例编号代表一个服务端口,VNC服务端口从5900开始。
而 vncserver@:1.server 对应服务端口5901,以此类推 vncserver@:10.server 对应的服务端口为5910
◾修改配置文件
vi /etc/systemd/system/vncserver@:1.service
将 vncserver@:1.service 中
ExecStart=/sbin/runuser -l -c “/usr/bin/vncserver %i”
PIDFile=/home//.vnc/%H%i.pid
的 改为你所需要通过VNC登陆的服务的用户名。
◾刷新服务、设置自启、启动服务 ◾刷新服务
systemctl daemon-reload
◾设置自启
systemctl enable vncserver@:1.service
◾启动服务
systemctl start vncserver@:1.service
若此处出现
Job for vncserver@:1.service failed because a configured resource limit was exceeded. See “systemctl status vncserver@:1.service” and “journalctl -xe” for details.
错误,请查看错误解决方案
◾设置防火墙(如果开启了防火墙)
firewall-cmd --permanent --add-service vnc-server
systemctl restart firewalld.service
◾客户端配置
使用 Tightvnc viewer 或 Realvnc viewer 等客户端进行连接。
如若配置了XRDP,则需要开设多个服务实例,否则无法进行连接。
◾额外操作
如若VNC连接后,只能看到一个空白的桌面并且不能操作,此时需要进行额外的操作。
vim /root/.vnc/xstartup
将文件内容替换为
#!/bin/sh
Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
#exec /etc/X11/xinit/xinitrc
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
startxfce4 &
◾错误解决方案
1.错误 1
执行设置自启
systemctl enable vncserver@:1.service
时出现错误
解决方法:
将 vncserver@:1.service 中
Type = forking
改为
Type = simple
刷新服务