nps 隧道代理

本文最后更新于 2025年7月11日 下午

📌 VPS 端配置

1
2
3
4
5
6
7
8
9
10
11
12
# 拉取 nps Docker 镜像
docker pull ffdfgdfg/nps

# 启动 nps 服务
docker run -d \
-p 12100-12200:12100-12200 \
-v /root/nps/conf:/conf \
--name=nps_server \
ffdfgdfg/nps

# 管理后台访问(默认账号:admin / admin)
# http://<vps_ip>:12100/login/index

🎯 nps.conf 配置示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
appname = nps
# Boot mode: dev | pro
runmode = dev

# HTTP/HTTPS 代理端口
http_proxy_ip = 0.0.0.0
http_proxy_port = 12101
https_proxy_port = 12102
https_just_proxy = true

# HTTPS 证书(可选)
https_default_cert_file = conf/server.pem
https_default_key_file = conf/server.key

## Bridge 通道
bridge_type = tcp
bridge_port = 12103
bridge_ip = 0.0.0.0

# 公钥,客户端需要使用该 key 连接
public_vkey = 123

# 日志等级 0-7
log_level = 0

# P2P 相关配置
p2p_ip = <你的 VPS IP>
p2p_port = 12200

# Web 管理界面
web_host = a.o.com
web_username = admin
web_password = admin
web_port = 12100
web_ip = 0.0.0.0
web_open_ssl = false

# API 加密
auth_crypt_key = test

# 其他选项
allow_user_login = false
allow_user_register = false
allow_user_change_username = false
system_info_display = false

# 客户端断开超时时间(单位:秒)
disconnect_timeout = 60

示例图:

nps 后台示例


📌 客户端常用命令

1️⃣ 在客户端机器,先用 Python 启一个临时 HTTP 服务(用于传文件):

1
python -m http.server 12020

2️⃣ 一键下载、解压、删除压缩包并后台运行客户端:

1
2
3
4
wget http://<vps_ip>:12020/linux_amd64_client.tar.gz \
&& tar -zxvf linux_amd64_client.tar.gz \
&& rm -rf linux_amd64_client.tar.gz \
&& nohup ./npc -server=<vps_ip>:12103 -vkey=<你的_vkey> >/dev/null 2>&1 &

3️⃣ 客户端注册为服务(可选,不推荐):

1
2
3
4
5
6
7
8
9
10
11
# 注册
./npc install -server=<vps_ip>:12103 -vkey=<你的_vkey>

# 启动
./npc start

# 停止
./npc stop

# 卸载
./npc uninstall

示例图:

nps 客户端示例


⚡ 小提示

  • 安全组要先放通对应端口,否则客户端连不上服务端。
  • 如果是 HTTP/HTTPS 代理,记得域名解析要生效。
  • vkey 尽量使用随机字符串,避免被猜测。
  • 不熟悉 Docker 也可直接使用二进制运行,效果一样。