Centos7.6配置tailscale内网穿透与 tigervnc VNC实现

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

在远程运维和跨网络访问场景中,安全、稳定、高效的内网穿透方案是必不可少的。对于需要远程控制图形界面的用户来说,VNC(Virtual Network Computing)是一种常见的远程桌面解决方案。而在内网环境中,传统的端口映射、VPN等方法往往存在配置复杂、安全隐患或受限于网络环境的问题。

Tailscale 是基于 WireGuard 的零配置 VPN 解决方案,能够轻松实现不同网络间的安全互联。结合 TigerVNC,我们可以在无需复杂端口映射的情况下,实现远程桌面访问,并确保数据传输的安全性。

本文将介绍如何利用 Tailscale 实现内网穿透,并结合 TigerVNC 搭建远程桌面环境,以便在不同网络环境下安全访问远程设备的桌面。

本文是介于作者需要在家能够访问公司服务器的图形桌面,而进行的配置需要


一、安装tailscale

curl -fsSL https://tailscale.com/install.sh | sh
tailscale up

这里安装的时候遇到一个问题:由于yum源配置比较乱,即有红帽7,又有rockylinux的yum源,安装的时候造成yum源冲突,故只需要使用阿里云的centos7的网络源即可安装成功,rockyLinux的yum源配置可以暂时移到其它位置,然后yum clean all && yum repolist -v,重新加载yum缓存,再执行安装,如果安装速度较慢,可以多等待一会,如果进程退出,可重新yum -y install 会从断点继续安装

二、服务器登录tailscale

tailscale up

这一步在服务器执行,执行之后会提示一个url地址,用服务器浏览器或者复制这个url到你的winds电脑,在winds浏览器登录这个地址,如果需要注册,按照提示步骤正常注册即可。

三、查看服务器IP

tailscale ip -4

你会看到类似 100.x.x.x 的 Tailscale 内网 IP 地址。

四、winds下载tailscale

从Tailscale官网下载 Windows 版本并安装。

安装步骤可以无脑下一步完成后,打开 Tailscale 应用,使用和你服务器URL登录注册时的同一账号登录,那么你会在设备中看到两个设备,如图,当两个设备都是绿色,表示设备处于开机,并能够正常连接(我这里,realserver是我的Linux服务器,我关机了,服务停了,所以是不能连接的)

当两个设备都是绿色时,可以从winds去ping你的Linux的100.x.x.x的IP,也可以从Linux去ping你的winds服务器,正常情况两者都能互相ping通,那么就可以在winds上利用xshell或者其他终端工具在任意网络、任何地点连接你的服务器了。不过,亲测之后,发现,延迟真的很高(或许跟开了代理有关),所以推荐另一款工具natapp,注册配置简单,唯一的问题是只能通过域名访问,免费版,每次在服务器启动服务,端口会发生变化,但是、远程连接执行命令确实不卡。


五、如果你的tailscale配置好了,那么远程vnc配置就很简单了

1.安装VNC组件(root用户)。通过yum-y install命令方式安装VNC组件。这里使用的还是阿里云的网络源

   命令:yum -y install tigervnc tigervnc-server

2.复制配置文件,将用户改为root用户,cp /lib/systemd/system/vncserver@.service /lib/systemd/system/vncserver@:1.service
使用vim方式编辑vncserver@:1.service文件。将其中的ExecStart一行的“<USER>”改为“root”,并添加“PIDFile=/root/.vnc/%H%i.pid”。

3.设置VNC登录密码(root用户)。在终端上输入vncpasswd命令,根据提示设置VNC客户端的登录密码和确认密码。设置过程中输出信息会提示“Would you like to enter a view-only password (y/n)?”,即是否设置浏览模式的密码,输出“y”,继续输入该模式的密码,也可以选择“n”跳过这个密码设置。

4.修改VNC客户端窗口分辨率(root用户)。用VI编辑器打开/usr/bin/vncserver文件,找到分辨率这一项将其设置为适合自己显示器的分辨率。找到geomertry这行,调整分辨率。

5.启动VNC服务,且允许开机自启动设置。  命令: systemctl start vncserver@:1.service               systemctl enable vncserver@:1.service

6.查看服务监听的端口号5901,设置防火墙和selinux放行流量,或者将两者直接关闭,

六、在winds安装vnc客户端

网址:Download VNC Viewer by RealVNC®。下载安装,无脑下一步即可

安装完成之后在“VNC View”窗口的空白处单击右键,再弹出的菜单中选择【New connection】命令,创建一个新的VNC连接

在弹出的【VNCViewer】配置对话框中,在【VNCServer】后输入待创建连接的VNC服务端IP地址与端口号(VNC默认端口从5900开始),格式为“IP地址:端口号”,设置完毕,单击【OK]按钮,完成新连接的创建。

新连接创建后,在【VNCViewer]窗口中会出现一个图标,在其上单击鼠标右键,选择弹出菜单中的[Connect]命令,连接 VNC服务端。或者双击该图标也是建立连接

特别注意:如果连接超时,可以关闭代理之后再试,我就是开着代理,反复超时,后来才发现这个问题

在弹出的【Encryption】对话框中,单击【Continue】按钮,允许远程连接。

弹出【Authentication】对话框,在【Password】后面输入VNC服务端的密码,输入完毕后单击【OK】按钮确认。

若密码正确,即可成功远程连接到VNC服务端的桌面。当然实际效果受网速和分辨率影响,可能达不到这么清晰的程度,如果是自己虚拟机做实验,那效果应该还是可以的。如果是真实的远程主机,那效果就差很多,如果不常用桌面操作的话,也能勉强满足远程桌面控制的需求。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值