[点晴永久免费OA]NPS:一款开源内网穿透代理服务器,支持 TCP、UDP、SOCKS5、HTTP 全协议转发及 Web 管理端
当前位置:点晴教程→点晴OA办公管理信息系统
→『 经验分享&问题答疑 』
内网有台测试机,在家想 SSH 上去改个配置,够不着;家里 NAS 存了一堆照片和电影,出门在外想看一眼,连不上;对接微信支付时,回调地址必须能被公网访问,本地调试只能靠打日志硬猜。 以前的解法无非几种: 求网管开端口映射,可公网 IP 现在越来越难申请;买台云服务器自建 VPN,成本和精力双高;用 frp 的都懂,配置文件改到眼花,每加一条映射就得重载一次,时间长了哪条对应哪台机器都记不清。 穿透这事,说白了就是找台有公网 IP 的机器当跳板,剩下的都该是工具的活儿。 有没有一款协议够全、配置够简单、还带管理界面的工具?还真有。今天分享的 NPS,感觉值得写下来。
项目简介NPS 是一款用 Go 语言写的内网穿透代理服务器,开源在 GitHub 上,star 数是 34.2k。 角色分工很清晰: 服务端 nps 装在公网机器上,监听端口、鉴权、转发流量; 客户端 npc 装在内网设备里,主动回连服务端建立隧道。 访问内网网站、调试本地支付接口、远程 SSH、远程桌面、内网 DNS 解析、内网 SOCKS5 代理,这些需求它全接住了,还内置一个功能相当完整的 Web 管理端。
特点
技术架构两端架构: 服务端跑在公网,客户端藏在内网。内网机器不开任何入站端口,全靠 npc 主动外连建立加密隧道,链路还支持数据压缩,弱网下体验好不少,安全这层想得比较周到。 有意思的是 P2P 模式: 服务端只负责两端握手,数据点对点直传,不占服务器带宽,传大文件速度能上一个台阶。Go 编译出单个二进制文件,没有运行时依赖,这也是它能通吃全平台的原因。 部署方式部署简单到没什么可写的。去 GitHub Releases 下载对应平台的包,服务端解压后 nps install 自动注册系统服务,nps start 启动,管理端默认 8080 端口就开了。 客户端一行命令:npc -server=公网IP:8024 -vkey=管理端生成的密钥。Docker 也有镜像,群晖、威联通玩家直接拉镜像跑。
前端Web 管理端是 NPS 的一大亮点。登录进去是客户端列表,每台内网设备对应一个客户端,系统自动生成 vkey。 点进去配隧道:加条 TCP 隧道,填好本地端口,保存后公网对应端口立即可用。流量统计、在线状态、连接数、带宽,界面上直接看。 不碰一行配置文件,把内网穿透做成了点点鼠标的活儿。 后端后端核心是服务端那套 bridge 通信、流量调度和鉴权,配置集中在 conf 目录的 nps.conf,端口、存储引擎、鉴权方式都能调,数据可走文件也能接数据库。 透明代理、私有代理这些进阶玩法,文档里都有章节,写得算细。 开源协议NPS 遵循 GPL-3.0 协议开源。自己部署使用、公司内部做穿透,没什么影响; 二次开发后对外分发,修改部分需要一并开源。 想闭源集成进商业产品,重点留意这一条就行。 即刻体验一波说两个我真实在用的场景。 一个是 SSH 回家。管理端给家里的盒子加条 TCP 隧道,本地 22 转发到公网 6022,出门在外 ssh -p 6022 直接连上,改代码、跑脚本,跟坐在机器前没区别。 另一个是支付回调调试。本地服务挂条 HTTP 隧道到公网域名,微信支付的异步通知直接打进本机,断点想打就打,不用改一遍代码传一遍服务器。 还有个玩法是 SOCKS5 代理:内网设备加条 socks5 隧道,手机挂上代理,出门也能打开家里路由器的管理页和监控画面。 还有更多功能待你来发现。
结语整体用下来,NPS 给我的感觉是全而不重:协议全、功能全,部署维护的负担几乎可以忽略。 项目更新节奏慢了些,但胜在稳定,文档写得很细,十分钟就能跑通一条自己的隧道。 阅读原文:点击这里 该文章在 2026/8/31 12:27:11 编辑过 |
关键字查询
相关文章
正在查询... |