纪念:站主于 2020 年 1 月完成了此开源实验,并将过程中的所有命令经过整理和注释以后,形成以下教程
软件准备:
在 RealVNC 官网上下载使用 VNC 服务所需软件 VNC View:
正文:
步骤目录:
步骤一:规划拓扑
1.1 服务器列表
1.2 服务器列表简介
步骤二:系统环境要求
步骤三:服务端安装 VNC 服务
3.1 服务端 VNC 环境准备
3.1.1 在服务端上安装桌面
3.1.2 在服务端上创建用于使用 VNC 的用户
3.1.2.1 创建用户
3.1.2.2 修改用户密码
3.2 服务端安装 VNC 服务
步骤四:配置 VNC 服务
4.1 创建 VNC 服务进程文件
4.2 编辑 VNC 服务进程文件
步骤五:开机自启 VNC 服务
5.1 刷新所有服务进程文件
5.2 开机自启 VNC 服务
步骤六:启动 VNC 服务
6.1 切换到使用 VNC 的用户
6.2 开启 VNC 服务
6.3 补充:修改 VNC 登陆密码的方法
步骤七:确认 VNC 服务是否启动成功
步骤八:客户端使用 VNC 服务
8.1 客户端使用 VNC 服务的前期工作
8.1.1 在客户端上安装桌面
8.1.2 客户端安装 VNC 服务的客户端
8.1.3 客户端启动桌面
8.2 客户端使用 VNC 服务
8.2.1 客户端启动 VNC 服务的客户端
8.2.2 连接服务端的 VNC IP 地址和端口号
8.2.3 输入服务端 VNC 用户的 VNC 密码
8.2.4 VNC 服务成功
具体的操作步骤:
步骤一:规划拓扑
1.1 服务器列表
服务端 192.168.100.10
客户端 192.168.100.11
1.2 服务器列表简介
1) 服务器提供 VNC 服务让其他设备可以远程自己的桌面
2) 客户端通过 VNC 服务远程服务器的桌面
步骤二:系统环境要求
1) 所有服务器的系统都需要是 CentOS 7 版本
2) 所有服务器都要关闭防火墙
3) 所有服务器都要关闭 SELinux
4) 所有服务器系统都要配置好可用的软件源
5) 需要按照拓扑图给对应的服务器配置好 IP 地址和主机名
6) 所有服务器都要可以相互 ping 通自己和对方的 IP 地址和主机名
步骤三:服务端安装 VNC 服务
3.1 服务端 VNC 环境准备
3.1.1 在服务端上安装桌面
(只在服务端上执行以下步骤)
# yum -y groupinstall "Server with GUI"
# yum -y groupinstall "GNOME Desktop"
3.1.2 在服务端上创建用于使用 VNC 的用户
3.1.2.1 创建用户
(只在服务端上执行以下步骤)
# useradd zhumingyu
3.1.2.2 修改用户密码
(只在服务端上执行以下步骤)
# passwd zhumingyu
3.2 服务端安装 VNC 服务
(只在服务端上执行以下步骤)
# yum -y install tigervnc tigervnc-server
步骤四:配置 VNC 服务
4.1 创建 VNC 服务进程文件
(只在服务端上执行以下步骤)
# cp /lib/systemd/system/vncserver\@.service /lib/systemd/system/vncserver\@:1.service
4.2 编辑 VNC 服务进程文件
(只在服务端上执行以下步骤)
# vi /lib/systemd/system/vncserver\@:1.service
将其中的:
......
[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=/usr/sbin/runuser -l <USER> -c "/usr/bin/vncserver %i"
PIDFile=/home/<USER>/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
修改为:
......
[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=/usr/sbin/runuser -l zhumingyu -c "/usr/bin/vncserver %i"
PIDFile=/home/zhumingyu/.vnc/%H%i.pid
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
步骤五:开机自启 VNC 服务
5.1 刷新所有服务进程文件
(只在服务端上执行以下步骤)
# systemctl daemon-reload
5.2 开机自启 VNC 服务
(只在服务端上执行以下步骤)
# systemctl enable vncserver@:1.service
Created symlink from /etc/systemd/system/multi-user.target.wants/vncserver@:1.service to /usr/lib/systemd/system/vncserver@:1.service.
步骤六:启动 VNC 服务
6.1 切换到使用 VNC 的用户
(只在服务端上执行以下步骤)
# su - zhumingyu
6.2 开启 VNC 服务
(只在服务端上执行以下步骤)
$ vncserver :1
You will require a password to access your desktops.
Password:
Verify:
Would you like to enter a view-only password (y/n)? y
Password:
Verify:
New 'vnc:1 (zhumingyu)' desktop is vnc:1
Creating default startup script /home/zhumingyu/.vnc/xstartup
Creating default config /home/zhumingyu/.vnc/config
Starting applications specified in /home/zhumingyu/.vnc/xstartup
Log file is /home/zhumingyu/.vnc/vnc:1.log
6.3 补充:修改 VNC 登陆密码的方法
# su - zhumingyu
$ vncpasswd
步骤七:确认 VNC 服务是否启动成功
(只在服务端上执行以下步骤)
$ ss -ntulap | grep 5901
tcp LISTEN 0 5 *:5901 *:* users:(("Xvnc",pid=1152,fd=9))
tcp LISTEN 0 5 [::]:5901 [::]:* users:(("Xvnc",pid=1152,fd=10))
步骤八:客户端使用 VNC 服务
8.1 客户端使用 VNC 服务的前期工作
8.1.1 在客户端上安装桌面
(只在客户端上执行以下步骤)
# yum -y groupinstall "Server with GUI"
# yum -y groupinstall "GNOME Desktop"
8.1.2 客户端安装 VNC 服务的客户端
(只在客户端上执行以下步骤)
# yum -y localinstall VNC-Viewer-6.19.1115-Linux-x64.rpm
(补充:这里以安装 VNC-Viewer-6.19.1115-Linux-x64.rpm 为例)
8.1.3 客户端启动桌面
(只在客户端上执行以下步骤)
# startx

8.2 客户端使用 VNC 服务
8.2.1 客户端启动 VNC 服务的客户端
(只在客户端上执行以下步骤)



8.2.2 连接服务端的 VNC IP 地址和端口号
(只在客户端上执行以下步骤)


8.2.3 输入服务端 VNC 用户的 VNC 密码
(只在客户端上执行以下步骤)

8.2.4 VNC 服务成功
(只在客户端上执行以下步骤)
