nps简介
与ngrok、frp等老牌内网穿透工具相比,nps可以算是一匹黑马。其优势主要有两点:一是强大的网页管理面板,nps可以在服务端通过网页管理所有用户行为以及映射记录;二是它集成了多种协议,包括tcp/udp隧道,socks5以及p2p,可以满足多种需求。点击前往开发者网页
视频教程
服务端安装
首先,我们需要一台拥有静态公网IP的服务器。国内推荐使用腾讯云或阿里云,国外推荐Linode以及hostus。不熟悉服务器租用流程的,可以直接在天猫搜索阿里云官方店铺向客服咨询开通流程。
服务器选购方面,建议购买Linux系统(推荐CentOS6/CentOS7),用作内网穿透的话对CPU性能、内存、以及硬盘容量都没有要求,选择最便宜的即可。网络带宽速度则取决于使用场景,可以大致参考以下表格
按自身需求购买服务器后,请从供应商处获取ssh登陆信息。Windows系统推荐下载PuTTY[官网下载|直接下载]或WinScp[官网下载|直接下载]进行ssh连接,Mac系统可直接在终端中输入指令连接
ssh连接成功后,就可以开始配置服务端了。
首先请确保防火墙开放了所有端口,检查方式如下
如果得到以下结果则证明端口已全部开放
否则可以使用以下命令关闭防火墙
如果你使用的是其他Linux发行版,或以上命令无效,请自行搜索Linux如何关闭防火墙。
另外,如果你使用了腾讯云或阿里云的服务器,则需要前往网页控制台配置防火墙,详细情况可咨询客服或搜索腾讯云/阿里云如何开放全端口。
确保全端口开通后,我们可以前往GitHub页面下载内网穿透软件nps了。请选择和自己系统对应的release版本,本篇教程使用Linux系统服务器,所以选择linux_amd64_server.tar.gz。右键复制下载链接,在ssh窗口中输入以下指令下载
下载完成后,可在ssh窗口输出”ls”查看当前目录下的文件,确认刚刚下载的压缩包是否存在
确认无误后,开始解压缩
解压后,可以用”ls”看到目录下多出了一个nps文件夹,进入这个文件夹
并编辑配置文件
按下”i”开始编辑,编辑完成后按”Esc”退出编辑模式,在输入”:wq”保存并退出。自带配置文件比较复杂仅供参考,以下为我自行精简过的配置文件,可用于替换原本的配置文件。标注的地方请按自身情况修改
详细的配置参数,请参考开发者网站说明
编辑完成并保存退出后,请使用以下命令启动nps服务
启动后,可以访问网页管理面板(在浏览器中输入”<你服务器的IP或域名>:<网页面板端口>”),如果能打开网页并成功登陆,则说明服务端配置完成。
客户端配置
首先,在内网设备中下载对应的nps客户端,下载地址与服务端下载地址相同。本教程使用Windows10(64位)设备做演示,所以下载win_amd64_client.tar.gz(32位系统请下载i386的版本)。下载完成后,放在合适的目录并解压缩。
与传统内网穿透软件不同,nps最大的特点就是可以在网页面板完成所有对客户端的配置和管理,完全无需在客户端编辑配置文件(当然,如果你愿意,也可以在客户端完成所有配置而不去理会网页管理面板)。本篇教程将会演示如何使用网页进行配置。首先,登录管理面板”<服务端IP或域名>:<面板端口>”,在左侧导航栏找到”客户端”,并选择添加一个客户端
添加完成后,可以在列表中看到客户端信息,且客户端处于offline状态(因为我们还未在内网设备上输入指令连接服务端)。点击左侧按钮查看详细信息,我们可以看到系统生成(或手动指定)的通信密钥,以及客户端连接服务端的命令。
Windows下使用的命令与面板中显示的有所不同,请把”./npc”部分替换为”npc”,
前往存放nps客户端的目录并启动cmd(PowerShell是否可用还未测试),
在打开的窗口中输入网页面板显示的连接指令
如果没有报错,可以访问网页管理面板查看客户端是否变为online状态。如进入online状态,则可以前往下一篇教程添加内网穿透规则。