一、Ubuntu18.04配置VNC
1、更新包列表
sudo apt update
2、安装xfce桌面
sudo apt install xfce4 xfce4-goodies
3、安装TightVNC服务
sudo apt install tightvncserver
4、VNC服务器的初始配置,可以使用vncserver命令设置安全密码并创建初始配置文件
vncserver
5、系统会提示您输入并验证密码,以便远程访问您的计算机
You will require a password to access your desktops
Password:
Warning: password truncated to the length of 8
Verify:
6、根据需求设置view-only密码,比如远程共享屏幕,不可操作,可以选择y或者n
Would you like to enter a view-only password (y/n)? y
Password:
Warning: password truncated to the length of 8.
Verify:
New 'X' desktop is ubuntu:1
Creating default startup script /home/zcwyou/.vnc/xstartup
Starting applications specified in /home/zcwyou/.vnc/xstartup
Log file is /home/zcwyou/.vnc/ubuntu:1.log
VNC密码长度必须在6到8个字符之间
7、配置VNC服务器,首先使用以下命令停止运行在端口5901上的VNC服务器实例
vncserver -kill :1
8、在修改xstartup文件之前,先备份原始文件
mv ~/.vnc/xstartup ~/.vnc/xstartup.bak
9、现在创建一个新的xstartup文件,并在您的文本编辑器中打开它
vim ~/.vnc/xstartup
#添加以下内容
#!/bin/bash
xrdb $HOME/.Xresources
startxfce4 &
10、授权
chmod +x ~/.vnc/xstartup
11、重启服务
vncserver
12、验证远程,使用vnc客户端测试,IP:5901
二、Centos7配置VNC
1、更新系统
yum update -y
2、安装GNOME Desktop图形桌面服务
yum groupinstall "GNOME Desktop" -y
3、查看系统运行模式
systemctl get-default
4、切换到桌面运行模式
systemctl set-default graphical.target
5、启动桌面模式
init 5
6、安装vnc
yum install tigervnc-server -y
7、启动 vnc服务,第一次启动会设置密码
vncserver :1
You will require a password to access your desktops.
Password: ##登录vnc的密码,以后可用通过vncpasswd命令更改密码
Verify: ##重新输入登录vnc的密码
Would you like to enter a view-only password (y/n)? n ##是否设置只查看用户密码,这里不设置
A view-only password is not used
New 'CentOS77:1 (laopi)' desktop is CentOS7:1
Creating default startup script /home/laopi/.vnc/xstartup
Creating default config /home/laopi/.vnc/config
Starting applications specified in /home/laopi/.vnc/xstartup
Log file is /home/laopi/.vnc/CentOS7:1.log
命令的执行是在需要远程登陆的laopi用户下执行的,同时也是第一次执行,会在此用户的主目录(/home/laopi/)下生成.vnc子目录和相应的配置文件,同时需要输入密码(vncviewer端用此用户访问的密码),这个密码被加密保存在此用户主目录下的.vnc子目录(/home/laopi/.vnc/passwd)中;同时在用户主目录下的.vnc子目录中为用户自动建立xstartup配置文件(/home/laopi/.vnc/xstartup),在每次启动VNC服务时,都会读取该文件中的配置信息。上面的是添加普通用户通过VNC访问权限,如果想添加其他用户访问权限,需要在相应的用户命令提示符下进行上面的操作(如test用户也需要执行[test@ localhost ~]$ vncserver :1 在相应的主目录下生成对应的.vnc子目录)。对不同用户的访问密码更改也需要在相应的命令提示符下操作。
在/home/laopi/.vnc/目录下还有一个“CentOS7:1.pid”文件,这个文件记录着启动VNC后对应操作系统的进程号,用于停止VNC服务时准确定位进程号
8、VNC服务使用的端口号与桌面号的关系
VNC服务使用的端口号与桌面号相关,VNC使用TCP端口从5900开始,对应关系如下
桌面号为“1” ---- 端口号为5901
桌面号为“2” ---- 端口号为5902
桌面号为“3” ---- 端口号为5903
9、验证vnc登录
10、配置vnc服务自启动 (可选操作)
1)、创建 Systemd Unit文件
cp /lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
2)、修改/etc/systemd/system/vncserver@:1.service文件
vim /etc/systemd/system/vncserver\@\:1.service
#修改以下内容
[Unit]
Description=Remote desktop service (VNC)
After=syslog.target network.target
[Service]
Type=simple ##这里将forking改为simple
ExecStartPre=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
ExecStart=/usr/sbin/runuser -l laopi -c "/usr/bin/vncserver %i" ##这里将<user>更改为需要登陆的用户laopi
PIDFile=/home/laopi/.vnc/%H%i.pid ##这里将<user>更改为需要登陆的用户laopi
ExecStop=/bin/sh -c '/usr/bin/vncserver -kill %i > /dev/null 2>&1 || :'
[Install]
WantedBy=multi-user.target
3)、停止服务
systemctl daemon-reload
4)、启动服务
systemctl start vncserver@:1.service
5)、开机自启动
systemctl enable vncserver@:1.service