一、NPS 概述
NPS 是一款轻量级、功能强大的内网穿透代理服务器。支持 tcp、udp 流量转发,支持内网 http 代理、内网 socks5 代理,同时支持 snappy 压缩、站点保护、加密传输、多路复用、header 修改等。支持 web 图形化管理,集成多用户模式。管理系统比 FRP 方便很多,更容易上手。
二、配置要求
- 一台拥有公网 IP 的服务器。
- 开放端口例如:(8080,8024,80,443)等可以不是这些端口,nps可以配置任意端口,实现与其它服务共存。
三、相关文档
- NPS 配置文档:https://ehang-io.github.io/nps/#/
- NPS 安装包:https://github.com/ehang-io/nps/releases
- NPS 源码:https://github.com/ehang-io/nps
四、环境说明
- 服务器端是我的Ubuntu(arm)云服务器;
- 客户端是本地N1盒子Openwrt系统的nps插件(无需安装客户端)。
五、演示安装
1. 服务端
- Docker拉取Nps镜像
- github下载配置文件,将nps-master下的conf文件拷贝至服务器上的/root/nps/conf目录下
- 修改nps.conf配置
- docker启动nps,注意防火墙是否开放相关端口
- 访问Nps后台:http://IP:19003 默认账号密码是配置文件中的admin/123(可自行更改)。
- 创建nps客户端及tcp隧道
创建客户端,点击客户端详情查看 -server/-key 两个参数。
2. 客户端
- 进入内网OpenWrt,打开nps插件,输入server及key参数保存,在服务端即可发现客户端已连接。
3. 配置转发
- 查看客户端状态
此处可以看到一个客户端ID为6,连接状态为在线。
- 添加tcp隧道转发
如下配置表示将服务端的1XXX6端口转发到局域网内192.168.50.1/3的80/5244等端口。其他的UDP、SOCKS、HTTP也是类似的配置不再赘述。
4. 总结
NPS及OpenWrt的配置安装都很便捷,如果你有一台自己的VPS云服务器,可以尝试一下,将你的家庭本地电脑映射到外网服务器。访问公网IP+对应1XXXX端口即可访问到内网对应服务。
5. 参考文章
不同的安装环境可以看看其他博文:
超详细openwrt内网穿透-nps小白教程:https://vpsxb.net/419/
软路由openwrt之nps内网穿透插件服务:https://www.vjsun.com/424.html
nps实现内网穿透,电脑免费变云服务器:https://tangly1024.com/article/nps-centos-nat-traversal
N1盒子op系统nps内网穿透对接腾讯云傻妞:https://blog.csdn.net/hebine7/article/details/122373365
docker安装nps实现内网穿透:https://5616760.com/docker/nps/2021/08/09/docker-nps.html