VNC的安装

前言

虚拟网络计算(VNC)是一种连接系统,使您可以使用键盘和鼠标与远程服务器上的图形桌面环境进行交互。 对于尚不熟悉命令行的用户,它使在远程服务器上管理文件,软件和设置更加容易,本人在配置VNC时也踩了很多坑,最后终于配好了环境,将过程写下来

正文

首先进入root权限,安装Xfce桌面环境

kali:apt install xfce4 xfce4-goodies
centOS:yum install -y epel-release   //安装第三方源
		   yum groupinstall -y xfce

一定要安装!否则VNC会显示黑点、鼠标是一个X,也没有图像

安装完成后,安装TightVNC服务器

kali:apt install tightvncserver
centOS:yum install -y tigervnc tigervnc-server

centOS需要让默认防火墙放行:firewall-cmd --permanent --add-service vnc-server

使用vncserver命令设置安全密码并创建初始配置文件

vncserver :1

普通vnc放在5900,直接IP就能连接,我们选择放在5901,所以 :1

配置文件

vi /root/.vnc/xstartup

修改成如下

kali:#!/bin/bash   
centOS:#!/bin/sh   
xrdb $HOME/.Xresources
startxfce4 &

kali开机自启

设置开机自启动,添加服务

vi /etc/systemd/system/vncserver@.service

添加如下

[Unit]
Description=Start TightVNC server at startup
After=syslog.target network.target
 
[Service]
Type=forking
User=root
Group=root
WorkingDirectory=/root
 
PIDFile=/root/.vnc/%H:%i.pid
ExecStartPre=-/usr/bin/vncserver -kill :%i > /dev/null 2>&1
ExecStart=/usr/bin/vncserver -depth 24 -geometry 1280x800 :%i
ExecStop=/usr/bin/vncserver -kill :%i
 
[Install]
WantedBy=multi-user.target

开启服务并关闭原vnc,让他开机自启

systemctl daemon-reload
systemctl enable vncserver@1.service
vncserver -kill :1

CentOS开机自启

调整VNC界面大小

vi /root/.vnc/config

geometry=1920x1080
dpi=96

复制系统服务,并重命名

cp /usr/lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:1.service
vi /etc/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 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

PIDFile=/home/这里,如果是root用户,应该把/home去掉,因为root用户的home目录不是在/home下,而是在/根目录下

服务重启

systemctl daemon-reload
systemctl enable vncserver@:1.service

关闭VNC并重启电脑

vncserver -kill :1
reboot

关于VNC和虚拟机无法进行正常的粘贴的问题

安装autocutsel

apt-get install autocutsel

打开配置文件,添加autocutsel -fork

vi /root/.vnc/xstartup

image

总结

kali和centOS两个不同的系统,其安装vnc的方式也有很多细节上的差异。

如kali调整vnc的分辨率是通过配置服务实现的,开机自启文件是自己编辑,过程中填写好用户的位置,以及所属家目录,最重要的是自己创建的服务在@后面跟不同端口作为参数是不加冒号:的!对于命令文件是/bin/bash是为了保证在vnc连接后通过sudo su可以调用出/bash的tab键等功能,而不是单单的代表root的#

而centOS调整vnc的分辨率是通过.vnc文件夹下自带的config文件进行配置,同时开机自启文件是通过复制系统文件进行修改,所以改了什么名字就是什么服务名,不需要跟参数,也没有加:的说法,同时在配置自启动服务文件时是执行/bin/sh文件,保持和vnc配置中所需命令文件一致

posted @ 2022-04-22 23:42  icui4cu  阅读(292)  评论(0编辑  收藏  举报