超详细openwrt内网穿透-nps实用教程
如果你需要:
- 公网登录路由器后台(最基本需求)
- 公网ssh登录路由器
- 公网通过samba文件共享访问内网硬盘资源,小白的openwrt是用旧的笔记本刷的,上面还有2T的硬盘,局域网开了samba文件共享,如果能在公网随时随地访问家里硬盘的小姐姐,爽歪歪。
- 公网访问路由器上的的Aria2,实现离线下载。
那么我们来看看怎么满足这个需求:
下载
我们从官方GitHub项目地址Release处下载最新编译好的二进制文件,当然官方文档中也提供自己编译的方法,这里我们直接下载,注意选择合适的架构,一般选amd64_server版就行。
我们在自己vps中新建一个nps文件夹,下载nps,然后解压。
- mkdir nps && cd nps
- wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_server.tar.gz
- tar -zxvf linux_amd64_server.tar.gz
安装并修改配置文件
我们进入上面的nps目录,执行sudo ./nps install
来安装nps,然后我们去修改nps的配置文件并启动nps。
- nano /etc/nps/conf/nps.conf #编辑nps配置文件
- #这里需要注意的是如下几处
- #HTTP(S) proxy port, no startup if empty
- http_proxy_ip=0.0.0.0
- http_proxy_port=80 #如果你的80, 443, 8024, 8080端口已被占用,或者是国内的nat机,请更改为可用的端口
- https_proxy_port=443
- https_just_proxy=true
- ##bridge
- bridge_type=tcp
- bridge_port=8024
- #web
- web_host=a.o.com
- web_username=admin
- web_password=123 #安全起见请修改密码
- web_port = 8080
- nps start #最后,我们启动nps
这时我们可以在浏览器输入http://IP:8080/
,就可以进入nps后台控制面板。
nps控制面板设置
点击新增客户端
其中,压缩和加密随意,待会和openwrt上设置一样即可
复制唯一验证密钥
openwrt设置
接下来我们去软路由上设置,我的软路由刷的esir的高大全版,自带nps,如果是其他不带nps的固件,则需要自己安装nps了。我们在路由器控制后台的服务选项中找到nps内网穿透,填入我们vps的ip以及刚刚的唯一验证密钥,点击保存应用。
这时我们回到nps控制后台,可以看到已显示客户端在线。
需求实现
然后我们就可以来实现刚刚提到的四个需求了。
1.公网访问软路由后台
IP+端口方式
我们先来看最简单的方法,直接在nps后台点击TCP隧道,新增TCP隧道。客户端ID填我们新建的客户端的ID,服务端端口填我们的vps上可用额端口,目标IP端口填我们软路由IP和80端口,点击新增。
这时我们就可以用vps的IP+2333端口访问软路由后台了。
只通过IP+端口当然不够了,IP记不住,端口也记不住……如果能通过域名来访问就更棒了。
域名方式
首先我们需要将域名解析到我们vps的IP,等待解析生效。
然后我们回到nps面板,点击域名解析,新增主机。
填入客户端ID,主机,目标(IP:端口),点击新增。
新增成功后,我们就可以通过域名软路由后台了。
到此,公网访问软路由后台就实现了,接下来我们来实现下一个需求 。
2.公网ssh登录路由器
同样,我们新增另一个TCP隧道,指向软路由的22端口。
新增成功后,我们就可以从公网ssh登录软路由了。
3.公网通过samba访问路由器硬盘内容
小白的软路由已经开启了samba文件共享,可以在局域网访问硬盘资源,,电脑和手机都行。
samba端口为445,我们只需要在nps后台中,建立tcp隧道,指向软路由的445端口就行了。
成功后,我们只需要在手机软件中填入vps的IP,以及图中的2335端口,就可以在外面访问家里软路由中的小姐姐了。
4.公网访问路由器上的的Aria2,实现离线下载
看到这里,大家应该能自己操作了吧