Centos 7.9 配置VNCServer实现远程vnc连接
文章目录
1、Centos安装图形界面
1.1、安装X Windows System图形界面
1.2、安装GNOME图形界面
2、VNC SERVER配置
2.1、VNC SERVER安装
2.2、VNC SERVER配置
1)创建vnc配置文件
2)修改配置文件内容
3)完整配置文件参考
2.3、设置vnc密码
2.4、配置防火墙
2.5、启动vnc服务
3、vnc viewer连接
3.1、vnc viewer下载
3.2、连接vnc server
1、Centos安装图形界面
Centos图形界面的安装有下面两种方法,按需选择:
1.1、安装X Windows System图形界面
X Window System为底层图形子系统,适配大多数的Linux及unix系统,兼容性更广。其主要是管理硬件设备与图形环境之间的交互,如显示、用户输入。其他窗口布局、装饰或用户交互元素都不包括在其中,为基础的一个图形系统:
yum update -y
yum grouplist
# 安装图形化界面
yum groups install "X Window System"
yum groups install "MATE Desktop"
# 安装完成后,修改默认启动方式为图形化界面
systemctl set-default graphical.target
# 恢复为命令模式
systemctl set-default multi-user.target
安装完成后执行reboot重启设备生效图形界面。
1.2、安装GNOME图形界面
GNOME为一个完整的桌面系统,基于X Window System构建,包含一套完整的界面元素,窗口、图标、工具栏、文件管理器等,同时继承了各种应用程序和工具,对用户的交互和使用更为的友好:
yum update -y
yum grouplist
# 安装GNOME图形界面
yum groupinstall -y "GNOME Desktop"
# 安装完成后,修改默认启动方式为图形化界面
systemctl set-default graphical.target
# 恢复为命令模式
systemctl set-default multi-user.target
安装完成后执行reboot重启设备生效图形界面。
2、VNC SERVER配置
2.1、VNC SERVER安装
安装vnc server:
yum install tigervnc-server -y
安装完成如下:
2.2、VNC SERVER配置
1)创建vnc配置文件
拷贝一个服务设置的模板:
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
注意: 一个用户对应1个配置文件,当需要3用户时,上述指令需要执行3次,vncserver@:1.service文件序号迭代至vncserver@:3.service。这里的序号也对应后续连接的端口序号。
2)修改配置文件内容
使用文本编辑器修改配置文件内容:
vim /etc/systemd/system/vncserver@:1.service
默认配置内容如下:
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=simple
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/bin/vncserver_wrapper <USER> %i
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
这里需要修改三处:
1、[Service]类型
修改为forking,如下:
[Service]
Type=forking
2、ExecStart值
将其中的替换为自己当前的用户名,如下这里以root用户为例,其他用户改为对应用户名即可:
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
3、添加PIDFile
这里区分root用户和非root用户。
root用户配置如下:
PIDFile=/root/.vnc/%H%i.pid
非root用户配置如下,以用户testvnc示例,配置如下:
PIDFile=/home/testvnc/.vnc/%H%i.pid
3)完整配置文件参考
完整修改后的root用户配置如下:
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/sbin/runuser -l root -c "/usr/bin/vncserver %i"
PIDFile=/root/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
非root用户完整配置文件,以用户testvnc示例,配置如下:
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=forking
# Clean any existing files in /tmp/.X11-unix environment
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/sbin/runuser -l testvnc -c "/usr/bin/vncserver %i"
PIDFile=/home/testvnc/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
配置完成后,重启systemd:
systemctl daemon-reload
2.3、设置vnc密码
# 切换至对应用户,配置VNC密码。不同用户的密码不同,均需要单独配置。
su <USER>
vncpasswd
设置完密码后配置只读密码选择n,不进行配置:
2.4、配置防火墙
配置防火墙来让 VNC 服务正常工作,将vnc服务进程添加到白名单中:
sudo firewall-cmd --permanent --add-service vnc-server
sudo systemctl restart firewalld.service
2.5、启动vnc服务
# 设置开机启动
systemctl enable vncserver@:1.service
# 启动vnc server
systemctl start vncserver@:1.service
# 查看vnc server状态
systemctl status vncserver@:1.service
# 检查vnc进程
ps -ef | grep vnc
# 查看服务监听的端口
netstat -lnpt|grep Xvnc
可以查看到 root 用户的连接序号为 1,对应的实际端口是 5901。可以使用 IP 地址和序号进行连接,例如 192.168.1.1:1,这里的序号1并非指服务器的实际端口号,而是表示 VNC 连接的顺序,从 1 开始编号。实际上,VNC 服务本身默认使用 5900 端口,所以第一个连接的端口是 5901(5900+1)
https://blog.csdn.net/qq_44281591/article/details/138443317#/
本文来自博客园,作者:xiaoming zhang,转载请注明原文链接:https://www.cnblogs.com/xmzhang

浙公网安备 33010602011771号