CentOS 7.3下安装Xfce+VNC+XRDP实现远程桌面连接

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="$(which xfce4-session 2>/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
<font color=red>需配置SELinux , 否则可能无法启动xrdp服务,或者启动出错</font>
# 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服务是否正常启动
<font color=red>如果看到Active则说明正常</font>
#  systemctl status xrdp.service

<font color=red>看xrdp和xrdp-sesman是否正常启动</font>

#  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 自带的<font color=red>远程桌面连接</font>程序进行连接。

4.安装TigerVNC
1.安装
# yum install tigervnc tigervnc-server

2.设置vnc密码

# vncpasswd

如需为其他用户配置密码

# vncpasswd user

其中<font color=red>user</font>为用户名,如 <font color=red>root</font>

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 <USER>-c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid

的<font color=red> <USER> </font>改为你所需要通过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.

错误,请查看<font color=red>错误解决方案</font>


◾设置防火墙(如果开启了防火墙)
# firewall-cmd --permanent --add-service vnc-server
# systemctl restart firewalld.service

◾客户端配置

使用 Tightvnc viewerRealvnc 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

刷新服务

# systemctl daemon-reload

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/d8078f132674d73e8def228bf264d2e8.html