Vnc 查看器错误:无法连接到套接字:CentOS 8 中的连接被拒绝(111)

Vnc 查看器错误:无法连接到套接字:CentOS 8 中的连接被拒绝(111)

我希望您能帮助我解决以下问题。我会尽量提供尽可能多的详细信息。

我最近在Centos8虚拟机上安装了vnc服务器。我已经完成了所有配置步骤,这些步骤都在这个文件,(顺便说一下,这是 vnc 建议使用的,因为我认为 vnc 已更新,配置方法与以前不同)。完成此操作后,服务器即可正常工作。(显然)当我想从另一台虚拟机(Fedora)连接时,问题出现了,服务器拒绝连接并给出以下错误:

图像

在服务器中我执行以下指令

vncviewer localhost:5901

我咨询了一些论坛,有人提到这是防火墙问题导致通信无法通过。因此,在两个虚拟机上禁用防火墙和 Selinux,但问题仍然存在。我知道服务器运行正常,因为我得到了以下输出。

[root@localhost andres]# systemctl status vncserver@:1
● vncserver@:1.service - Remote desktop service (VNC)
   Loaded: loaded (/usr/lib/systemd/system/[email protected]; enabled; vendor preset:>
   Active: active (running) since Mon 2021-03-01 13:21:07 EST; 1h 7min ago
  Process: 978 ExecStart=/usr/libexec/vncsession-start :1 (code=exited, status=0/SUCCE>
 Main PID: 994 (vncsession)
    Tasks: 1 (limit: 11260)
   Memory: 1.5M
   CGroup: /system.slice/system-vncserver.slice/vncserver@:1.service
           ‣ 994 /usr/sbin/vncsession andres :1

我还分配了这些端口,它们告诉我服务器正在监听

[root@localhost andres]# netstat -tunlp | grep 5901
tcp        0      0 127.0.0.1:5901          0.0.0.0:*               LISTEN      1381/Xvnc           
tcp6       0      0 ::1:5901                :::*                    LISTEN      1381/Xvnc

也许它看起来像下面的重复问题论坛确实如此,我只是找不到关系,因为 vnc 已更新,配置不一样(即,要启动服务器,我不能再输入命令“vncserver”),我认为解决方案不会相同

答案1

我怀疑您仍在运行防火墙或配置使用 localhost,但没有使用隧道。在下面的步骤中,我展示了如何打开 vnc 端口并使用隧道。

我不确定您安装了哪个 vnc,但使用 tigervnc,我做了以下操作:

  • 以 root 身份编辑/etc/tigervnc/vncserver-config-defaultssession=gnome在底部添加(我使用 gnome)。如果取消注释,localhost则需要建立安全隧道。如果要限制哪些 IP 接受连接,请添加一行,interface=x.x.x.x其中 xxxx 是您的主机的 IP。
  • 以 root 身份编辑/etc/tigervnc/vncserver.users并添加每个允许连接的用户的 display=user(不建议使用 root);在我的例子中:1=user1,对应于 vnc 端口 5901。
  • 作为用户,创建一个密码vncpasswd(这将是客户端使用的密码)
  • 以 root 身份为用户启动 vnc,systemctl start vncserver@:1
  • 以 root 身份打开 vnc 端口:firewall-cmd --permanent --add-port=5901-5999/tcp
  • 重新启动防火墙:systemctl restart firewalld
  • 找到你的 IP:(ip addr | grep inet不要选择本地主机,也不要选择网关,在我的情况下是 192.168.122.40
  • 登出

此时,vnc 服务器正在运行,监听端口 5901,对应用户(在我的情况下是用户 1)的显示 :1。

您需要在其他虚拟机甚至本地系统上安装 vnc 查看器。

如果您localhostvncserver-config-defaults文件中取消注释,则从本地计算机启动隧道ssh -L 5901:localhost:5901 user@server(退出此连接将关闭隧道,如果您始终希望它打开,ssh -N -f -L 5901:localhost:5901 user@server)。在本地计算机上打开另一个窗口以从命令行运行 vncviewer。

启动 vncviewer,在服务器框中输入 IP:端口(在我的情况下192.168.122.40:5901是单击 )Connect。如果我已启动隧道,则服务器将是localhost:5901

当提示输入密码时,输入您提供给 vncpasswd 的密码。这样就建立了连接。

此时,您的 gnome 会话已启动并可查看。您可能需要按 Enter/Return 键才能提示输入凭据。

当您注销时,vncserver 很可能也会关闭,但我没有进一步研究如何让 vncserver 自动为用户重新启动。

相关内容