NPS
NPS 是一款轻量级、高性能、功能强大的内网穿透代理服务器。支持 TCP、UDP、SOCKS5、HTTP 等几乎所有流量转发,可用于访问内网网站、本地支付接口调试、SSH 访问、远程桌面、内网 DNS 解析、内网 SOCKS5 代理等场景。
① 搭建 NPS 服务端
在拥有公网 IP (150.106.195.110
) 的服务器上,下载并配置 nps/conf,将配置文件放置在 /opt/nps/conf
目录下,以下为使用 Docker 部署 NPS 服务端的步骤:
# 创建 /opt/nps 目录存放配置文件
mkdir /opt/nps
# 拉取 ffdfgdfg/nps 镜像
docker pull ffdfgdfg/nps
# 运行 nps 容器,挂载配置文件夹 conf
docker run -d --name=nps --restart=always --net=host -v /opt/nps/conf:/conf ffdfgdfg/nps
# 查看日志
docker logs nps
启动后,默认端口为 8080
。通过 http://<你的服务器IP>:8080
访问管理界面。
默认用户名/密码 为 admin/123
(务必更改,修改 /opt/nps/conf/nps.conf
文件中的 web_password
)。此外,
- 管理平台端口 可通过配置
web_port
变更,例如8666
。 - 通道端口 可通过配置
bridge_port
变更,例如8024
。
确保在服务器防火墙中开放相应端口。
② 添加客户端
以下是客户端添加的相关界面:
客户端需要在安装时提供验证密钥,通过以下命令连接服务端:
./npc -server=150.106.195.110:8024 -vkey=<唯一验证密钥> -type=tcp
③ 客户端安装使用
在需要穿透的内网服务器上安装客户端。
# 创建 /opt/nps 目录存放配置文件
mkdir /opt/npc
# 拉取 ffdfgdfg/npc 镜像
docker pull ffdfgdfg/npc
# 运行 npc 容器,示例:
docker run -d --name=npc --restart=always --net=host ffdfgdfg/npc -server=150.106.195.110:8024 -vkey=<唯一验证密钥>
# 查看日志
docker logs npc
启动后,客户端会连接到 NPS 服务端。
④ 建立内网穿透隧道
以下为穿透过程的示例操作:
例如:穿透内网 MySQL 数据库,配置如下:
- 目标 (IP:端口):
192.168.188.222:3306
- 服务端端口:
33066
配置完成后,通过公网
150.106.195.110:33066
访问内网数据库。
⑤ 新建 Socks5 代理
通过 Socks5 代理可以访问内网任意服务,无需单独建立内网穿透隧道。配置步骤如下:
设置完成后,通过 Proxifier 配置代理访问内网:
相关链接
其他教程:Nginx Web 服务器 • Portainer Docker 管理