nps是一款轻量级、高性能、功能强大的内网代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地支付接口调试、ssh访问、远程桌面,内网dns解析等等……),此外还支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。
背景:
做微信公众号开发、小程序开发等----> 域名代理模式想在外网通过ssh连接内网的机器,做云服务器到内网服务器端口的映射,----> tcp代理模式在非内网环境下使用内网dns,或者需要通过udp访问内网机器等----> udp代理模式在外网使用HTTP代理访问内网站点----> http代理模式搭建一个内网穿透ss,在外网如同使用内网vpn一样访问内网资源或者设备----> socks5代理模式相关地址:
nps github地址:
https://github.com/cnlh/nps
CentOS服务器端安装包:https://github.com/cnlh/nps/releases/download/v0.23.2/linux_arm64_server.tar.gz
Windows客户端安装包:
https://github.com/cnlh/nps/releases/download/v0.23.2/win_amd64_client.tar.gz
http://localhost:8080
主要流程如下:
http://api.example.com -> nps server -> http://127.0.0.1:8080
配置如下:
default.conf
example.com.ssl.conf
ssl_certificate cert/example.com/fullchain.cer;ssl_certificate_key cert/example.com/example.com.key;ssl_session_timeout 5m;ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on; 在nps server web管理后台创建客户端
直接解压win_amd64_client.tar.gz
配置npc.conf
启动客户端
nps -config=conf/npc.conf
启动成功后可以看到client list id为2的client状态变为online的状态
配置成功后,访问http://api.example.com 会被代理到内网的http://localhost:8080端口