当前位置: 代码网 > it编程>前端脚本>Python > Centos 7.9 配置VNCServer实现远程vnc连接

Centos 7.9 配置VNCServer实现远程vnc连接

2024年07月31日 Python 我要评论
Centos 7.9完整配置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

安装完成如下:

image-20240410143230601

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,不进行配置:

image-20240504141608621

2.4、配置防火墙

配置防火墙来让 vnc 服务正常工作,将vnc服务进程添加到白名单中:

sudo firewall-cmd --permanent --add-service vnc-server
sudo systemctl restart firewalld.service

image-20240504141751401

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)

image-20240504142920978

image-20240504143154448

3、vnc viewer连接

3.1、vnc viewer下载

官方下载地址:https://downloads.realvnc.com/download/file/viewer.files/vnc-viewer-7.10.0-windows-64bit.exe

推荐使用便携版:

image-20240410142214503

下载完成后,文件名称类似如下vnc-viewer-7.10.0-windows-64bit.exe,双击exe文件可直接使用。

3.2、连接vnc server

进入realvnc viewer后,左上角file–>new connection添加新的连接:

image-20240504140433869

vnc server地址,配置为设备ip:1,1对应的为连接序号。实际使用端口5901(ip:5901)同样能够正常连接:

image-20240504142816828

未加密连接提示,点击continue即可:

image-20240504142556800

填入之前使用vncpasswd配置的密码:

image-20240504142630984

连接成功,输入账户登录密码,即可正常访问桌面环境了:

image-20240504142721496

参考:https://linux.cn/article-5335-1.html

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com