如何禁用Linux系统中的XVNC服务 (禁用linux xvnc)

XVNC是一种基于Virtual Network Computing(VNC)协议的图形用户界面(GUI)框架,用于在Linux操作系统上远程连接到虚拟桌面。尽管XVNC在很多情况下非常有用,但有时候您可能需要禁用它,例如出于安全考虑或因为它消耗了系统资源。本文将介绍如何在Linux系统中禁用XVNC服务。

步骤1:查看XVNC服务的状态

要禁用XVNC服务,首先需要查看它的状态。在终端中输入以下命令:

“`

systemctl status vncserver-x11-serviced

“`

如果XVNC服务是运行状态,您将看到下面的输出:

“`

● vncserver-x11-serviced.service – VNC Server in Service Mode daemon

Loaded: loaded (/usr/lib/systemd/system/vncserver-x11-serviced.service; enabled; vendor preset: disabled)

Active: active (running) since Mon 2023-02-14 13:37:31 IST; 2s ago

Process: 1766 ExecStart=/usr/libexec/vncserver-x11-serviced -fg (code=exited, status=0/SUCCESS)

Mn PID: 1769 (Xvnc)

Tasks: 6 (limit: 4915)

Memory: 19.8M

CGroup: /system.slice/vncserver-x11-serviced.service

├─1769 Xtightvnc :1 -desktop rhel7.example.com:1 (root) -auth /var/run/… -geometry 1280×800 -depth 24 -rfbwt 120230 -rfbauth /root/.vnc/passwd -rfbport

├─1773 /usr/bin/gnome-session

├─1888 /usr/libexec/gnome-terminal-server

├─1890 gnome-pty-helper

├─1891 bash

└─2258 systemctl status vncserver-x11-serviced

“`

这表明当前XVNC服务正在运行,并且您需要执行以下步骤,以停止和禁用它。

步骤2:停止XVNC服务

为了停止XVNC服务,您需要使用以下命令:

“`

systemctl stop vncserver-x11-serviced

“`

这将停止正在运行的XVNC服务,并确保它不会再次启动。

步骤3:禁用XVNC服务

XVNC服务已经被停止,但它仍然可能在Linux系统开机时自动启动。为了禁用XVNC服务,您需要使用以下命令:

“`

systemctl disable vncserver-x11-serviced

“`

这将使XVNC服务无法自动启动,并确保它在系统启动后不再运行。

步骤4:验证XVNC服务是否已经禁用

要验证XVNC服务是否已经禁用,您可以再次运行命令来查看XVNC服务的状态:

“`

systemctl status vncserver-x11-serviced

“`

如果XVNC服务已被禁用,则您将看到类似于以下输出:

“`

● vncserver-x11-serviced.service – VNC Server in Service Mode daemon

Loaded: loaded (/usr/lib/systemd/system/vncserver-x11-serviced.service; disabled; vendor preset: disabled)

Active: inactive (dead)

“`

这表明XVNC服务已被禁用,因此您可以放心地使用Linux系统而无需担心潜在的安全问题或资源消耗。

结论

XVNC服务是一种非常有用的远程连接工具,但有时可能需要禁用它,例如出于安全考虑或因为它会消耗系统资源。在Linux系统中禁用XVNC服务可以很容易地完成,只需按照上述简单步骤执行即可。无论是出于安全考虑还是出于性能原因,禁用XVNC服务都是为了使Linux系统更加安全和高效的好方法。

相关问题拓展阅读:

Linux中怎么修改一个文件夹下的Makefile文件

网络遥控技术是指由一部计算机(主控端)去控制另一部计算机(被控端),而且当主控端在控制端时,就如同用户亲自坐在被控端前操作一样,可以执行被控端的应用程序,及使用被控端的系统资源。

VNC(Virtual Network Computing)是一套由ATT实验室所开发的可操控远程的计算机的软件,其采用了GPL授权条款,任何人都可免费取得该软件。VNC软件主要由两个部分组成:VNC server及VNC viewer。用户需先将VNC server安装在被控前亮端的计算机上后,才能在主控端执行VNC viewer控制被控端。

(在windows中也由一套著名的网络遥控软件――Symantec公司推出的pcAnywhere。

VNC server与VNC viewer支持多种操作系统,如Unix系列(Unix,Linux,Solaris等),windows及MacOS,因此可将VNC server 及VNC viewer分别安装在不同的操作系统中进行控制。如果目前操作的主控端计算机没有安装VNC viewer,也可以通过一般的网页浏览器来控制被控端。

整个VNC运行的工作流程悔慎如下:

(1) VNC客户端通过浏览器或VNC Viewer连接至VNC Server。

(2) VNC Server传送一对话窗口至客户端,要求输入连接密码,以及存取的VNC Server显示装置。

(3) 在客户端输机密码后,VNC Server验证客户端是否具有存取权限。

(4) 若是客户端通过VNC Server的验证,客户端即要求VNC Server显示桌面环境。

(5) VNC Server通过X Protocol 要求X Server将画面显示控制权交由VNC Server负责。

(6) VNC Server将来由 X Server的桌面环境利用VNC通信协议送至客户端,并且允许客户端控制VNC Server的桌面环境及输入装置。 『VNC的安装与使用』

本人的操作环境:被控端 Redhat9.0,主控端Windows XP。

1. 载VNC Server

VNC Server下载地址:

2.安装。

vnc-3.3.7-x86_linux.tar.gz (如果是源代码请看包里的说明),当下载了VNC的Linux版本后,可以解压文件到一个文件夹中,例如/home/vnc,然后复制文件vncserver、 vncpasswd和Xvnc到/usr/bin目录中。假如想要能够通过VNC服务器的整合Java界面远程控制Linux电脑,也得需去建立一个子目录/usr/local/vnc/classes。在建立此子目录之后,复制VNCJava.class文件到此目录中。(一般redhat 9.0自带以上文件,所以直接用终端执行就可以)。

3.在Linux上启动VNC Server

执行vncserver命令:

# vncserver

You will require a password to access your desktops.

Password: —-为了不想任何人都可以任意遥控此计算机。因此当第

Verify: —1次启动VNC server时,会要求设置网络遥控的密码。

New ‘X’ desktop is linux:1 —-一定要记住这一行稍后会用到。

Creating default startup script /root/.vnc/xstartup

Starting applications specified in /root/.vnc/xstartup

Log file is /root/.vnc/linux:1.log

(经上述步骤后,便已启动了VNC Server。如果你想要更改VNC Server的密码,只要执行vncpasswd命令即可。)

5. 从浏览器远程遥控。

启动VNC Server 后直接打开浏览器,在地址栏中输入被控端的网址或慧前宽IP地址,并在网址后加上“:5800+显示编号”的端口号即可操控该计算机。

例如: (如果显示编号为1,一般之一次设置的显示编号都是1,就用5800+1=5801。)

如果看到窗口,就说明你成功,在密码框输入密码,就能远程控制了。

6.FAQ

A. 如何以图形界面登录被控端?

编辑~/.vnc/xstartup

#!/bin/sh

# Uncomment the following two lines for normal desktop:

# unset SESSION_MANAGER

# exec /etc/X11/xinit/xinitrc

exec /etc/vnc/xstartup

xrdb $HOME/.Xresources

xsetroot -solid grey

vncconfig -iconic

#xterm -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop”

gnome-session

startkde

twm

gnome-session是启动Gnome图形界面;startkde是启动KDE图形界面;twm是启动文本界面。三者选其一。

A. 如何开机时自动启动vnc服务

打开“系统设置”–”服务器设置”–”服务”,勾选上vncserver,“保存”。

修改 /etc/sysconfig/vncservers

VNCSERVERS=”1:root 2:phred 3:sysadmin” 1代表“桌面1”,root代表用户名;可同时启动多个用户桌面

VNCSERVERARGS=”-geometry 800×600 -alwaysshared -depth 24〃

-alwaysshared代表允许多用户同时登录 -depth代为色深,参数有8,16,24,32。

A.为什么连接后,不能显示桌面,而只有一个Terminal窗口?

试着修改/root/.vnc/xstartup,把最后一行 twm 改成 gnome-session or kde(据说KDE在目前的VNC Viewer上的表现不太稳定)

B. 为什么重新启动VNC Server后,连接不上了?

因为重新启动VNC Server时,系统会指定一个新的显示编号,需使用此新的编号,否则就无法连接

——————————————————————————————————————————–

查看vnc已启用的桌面号及监听进程

# netstat -tlnp |grep vnc

vncserver 命令带有一些很有用的参数,用vncserver –help 查看。

简单解释一下:

vncserver

vncserver -kill :display

:

vnc服务的display号,可以自行指定,尽量不要使用系统默认的以保证安全,必须为非0的正整数

vncserver :99

使用时必须输入正确的display号才能连接;用浏览器要在端口号加上display号,默认端口5800,远程连接输入 XXX.XXX.XXX.XXX:5899

-name 指定vncserver桌面名字

比如要让名字显示为 “红帽”

vncserver -name 红帽

-geometry x指定显示桌面的分辨率,默认为1024×768

vncserver -geometry 800×600

这个命令实际中很有用,例如本地分辨率为1024×768 如果不设定远程vnc服务分辨率就会造成桌面显示不全的问题。

-depth 指定显示颜色,设定范围8~32

vncserver -depth 16

用16bits颜色显示

-pixelformat 指定色素格式 与-depth大致相同,只是表示方法不一样

vncserver -pixelformat RGB888

用24bits颜色显示

vncserver -kill :display

结束vnc服务及远程桌面

vncserver -kill :1

其它更详细的使用请用man查看。

vnc内定的窗口管理器是twm与大家使用的可能不同,通过修改vnc的配置文件可以更换为自己喜欢的,方法如下:

修改用户目录下的 .vnc/xstartup 文件

#!/bin/sh

xrdb $HOME/.Xresources

xsetroot -solid grey

vncconfig -iconic

xterm -geometry 80×24+10+10 -ls -title “$VNCDESKTOP Desktop”

twm

将#!/bin/sh后面的内容全部注释掉,改成

~/.Xclients

保存文件

现在可以测试修改是否成功,先kill vncserver服务

vncserver -kill :

pa aux|grep Xvnc

kill PID

重新启动vncserver ,用vncviewer连接远程桌面是不是已经变成自己喜欢的类型了。

在前面有vncserver设置的文章(http: //bbs.chinaunix.net/forum/viewtopic.php?t=368552highlight=yunqing) 里,我们已经可以在一个linux的服务器上运行vncserver来进行远程访问了,但需要注意的是,如果直接使用vncviewer来进行访问,有 两点不利因素:

1.口令传输是明文,很容易被侦听到.

2.防火墙需要打开59xx端口,这在通常的单位里是不可能的.

幸运的是,我们有ssh这个强大的工具,象X11Forwarding(另文论述),我们可以使用ssh隧道来保护通讯过程,下面就进行简单介绍.

假设vncserver运行在服务器myserver(ip地址为:192.168.x.x)的屏幕1,也就是侦听192.168.x.x:5901,用户名为foo

情形一:vnc客户端为linux

这种情形很简单,一般的linux发行版本里面都默认安装了ssh套件.

1.用ssh登录到服务器

ssh-L5901:localhost:5901-lfoomyserver 或者直接用ip地址

ssh-L5901:localhost:5901-lfoo192.168.x.x 2.在本机的另外开的终端上,运行vncviewer(或其它的类似工具)

vncviewerlocalhost:1

出现这个问题的原因有2种

1.没有租耐写入权限

2.此文件正在被编辑

如果是没有使用权限,可以用

sudo vi 文件名

或并此者

sudo gedit 文件绝型迅名

试试,可以的话会叫你输你的用户密码

如果不行的话 就用管理员账户执行

chmod 755 文件名

如果是自己的电脑 切换到root用户就可以 如果root用户没设密码不让切

就直接用sudu -i 切换

以上操作都是说的在终端中的操作

修改权限,用chmod命令就行,参数755就行,或是以管理员身份登录也可以修改

以管理员身份登陆,就能修改了

linux启动项添加环境变量和启动命令

java的环境变量可以写在/etc/profile里

或者写在登皮敏或录用户拿裂宿主燃伍目录的.bashrc中

常用命令:

vncserver -启动vnc服务器,启动后会让你输入vnc连接密码

/陪空纳etc/init.d/vncserver status -检查vnc的状态

/etc/init.d/vncserver retatus -重启vnc服务器

netstat –arp | grep Xvnc -检查端口

chkconfig –level 5 vnc off vnc开机启动

ntsysv 查看开机启动项

chkconfig –level 5 vnc on 关闭开机芦没启动

功能说明:设置系统的各种服务。

语 法:ntsysv

补充说明:这是Red Hat公司遵循GPL规则所开发的程序,它具有互动式操作界面,您可以轻易地利用方向键和空格键等,开启,关闭操作系统在每个亏早执行等级中,所要执行的系统服务。

参 数:

–back 在互动式界面里,显示Back钮,而非Cancel钮。

–level 在指定的执行等级中,决定要开启或关闭哪些系统服务。

禁用linux xvnc的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于禁用linux xvnc,如何禁用Linux系统中的XVNC服务,Linux中怎么修改一个文件夹下的Makefile文件,linux启动项添加环境变量和启动命令的信息别忘了在本站进行查找喔。


数据运维技术 » 如何禁用Linux系统中的XVNC服务 (禁用linux xvnc)