远程调试一般经常的用法是采用Teamviewer或是向日葵等远程操控软件,或是用VNC远程桌面等。它们的缺点是太占带宽,毕竟服务器连接和通讯只需要ssh和少量的数据传输,把整个桌面在网络上传输显然不经济。这里介绍一下PVPN配合tmux进行远程操作的方法。
这里要用到一个工具:github的peyoot/pvpn
通过这个脚本,您可以自动安装并生成配置,它以菜单的方式让您选择安装类型,一般的情况下,您只需要输入有公网IP的服务器的IP,一路回车,就可以完成pvpn的配置。
除此之外,您还需要用到tmux,这主要是把session保存起来,在不同登录的地方就可以查阅相同的session。
一、安装PVPN服务器
二、安装PVPN客户端
在内网的linux客户端上,请先用tmux新建一个session,然后再下载pvpn并运行
tmux cd git clone https://github.com/peyoot/pvpn.git cd pvpn sudo ./install_vpn.sh
在出来的命令行菜单中,选择“2”来安装VPN客户端。
接下来是选择VPN 模式,默认为openvpn+stunnel,这也是兼容性最好的,直接回车使用默认值即可,下一个提示也是直接回车选择默认值tap:
在接下来的提示,是整个脚本唯一要输入自定义值的地方,也就是你服务器所在的IP地址,不能输错,否则就要重新执行脚本重来一次了:
上面这个地址对了,接下来只需要一路回车到结束,该脚本会自动从服务器下载默认的客户端证书并安装和配置好相关服务。如果你不小心输入错误,想用退格键删除时发现输入变成“^H”,注意,你需要按住CTRL再按退格键才能删除原来输入并修改。
如果您使用了自定义的用户,而不是默认的client,只需在后续出现的提示中,用处定义的用户名代替原来的默认的client即可,剩下的一切都可以放心交给脚本一路按回车直到结束。下图中输入客户端名称的地方,根据需要直接回车,或是用自定义的用户名。(通常如果有多个客户端接入,要分配固定IP地址,可用自定义的用户名)
安装结束后,您可以用
sudo systemctl start openvpn-client@client
来连上VPN服务器。
执行该命令后,略等几秒中,用ip addr来验证,如果出现tap0,则表明已经连上VPN服务器了。PVPN默认的网段是10.100.101.X