基本使用
无配置文件模式
此模式的各种配置在服务端web管理中完成,客户端除运行一条命令外无需任何其他设置
./npc -server=ip:port -vkey=web界面中显示的密钥
配置文件模式
此模式使用nps的公钥或者客户端私钥验证,各种配置在客户端完成,同时服务端web也可以进行管理
./npc -config=npc配置文件路径
可自行添加systemd service,例如:npc.service
[Unit]
Description=npc - convenient proxy server client
Documentation=https://github.com/cnlh/nps/
After=network-online.target remote-fs.target nss-lookup.target
Wants=network-online.target
[Service]
Type=simple
KillMode=process
Restart=always
RestartSec=15s
StandardOutput=append:/var/log/nps/npc.log
ExecStartPre=/bin/echo 'Starting npc'
ExecStopPost=/bin/echo 'Stopping npc'
ExecStart=/absolutely path to/npc -server=ip:port -vkey=web界面中显示的密钥
[Install]
WantedBy=multi-user.target
配置文件说明
示例配置文件
全局配置
[common]
server_addr=1.1.1.1:8284
conn_type=tcp
vkey=123
username=111
password=222
compress=true
crypt=true
rate_limit=10000
flow_limit=100
remark=test
max_conn=10
项 |
含义 |
server_addr |
服务端ip:port |
conn_type |
与服务端通信模式(tcp或kcp) |
vkey |
服务端配置文件中的密钥(非web) |
username |
socks5或http(s)密码保护用户名(可忽略) |
password |
socks5或http(s)密码保护密码(可忽略) |
compress |
是否压缩传输(true或false或忽略) |
crypt |
是否加密传输(true或false或忽略) |
rate_limit |
速度限制,可忽略 |
flow_limit |
流量限制,可忽略 |
remark |
客户端备注,可忽略 |
max_conn |
最大连接数,可忽略 |
域名代理
[common]
server_addr=1.1.1.1:8284
vkey=123
[web1]
host=a.proxy.com
target_addr=127.0.0.1:8080,127.0.0.1:8082
host_change=www.proxy.com
header_set_proxy=nps
项 |
含义 |
web1 |
备注 |
host |
域名(http |
target_addr |
内网目标,负载均衡时多个目标,逗号隔开 |
host_change |
请求host修改 |
header_xxx |
请求header修改或添加,header_proxy表示添加header proxy:nps |
tcp隧道模式
[common]
server_addr=1.1.1.1:8284
vkey=123
[tcp]
mode=tcp
target_addr=127.0.0.1:8080
server_port=9001
项 |
含义 |
mode |
tcp |
server_port |
在服务端的代理端口 |
tartget_addr |
内网目标 |
udp隧道模式
[common]
server_addr=1.1.1.1:8284
vkey=123
[udp]
mode=udp
target_addr=127.0.0.1:8080
server_port=9002
项 |
含义 |
mode |
udp |
server_port |
在服务端的代理端口 |
target_addr |
内网目标 |
http代理模式
[common]
server_addr=1.1.1.1:8284
vkey=123
[http]
mode=httpProxy
server_port=9003
项 |
含义 |
mode |
httpProxy |
server_port |
在服务端的代理端口 |
socks5代理模式
[common]
server_addr=1.1.1.1:8284
vkey=123
[socks5]
mode=socks5
server_port=9004
multi_account=multi_account.conf
项 |
含义 |
mode |
socks5 |
server_port |
在服务端的代理端口 |
multi_account |
socks5多账号配置文件(可选),配置后使用basic_username和basic_password无法通过认证 |
私密代理模式
[common]
server_addr=1.1.1.1:8284
vkey=123
[secret_ssh]
mode=secret
password=ssh2
target_addr=10.1.50.2:22
项 |
含义 |
mode |
secret |
password |
唯一密钥 |
target_addr |
内网目标 |
p2p代理模式
[common]
server_addr=1.1.1.1:8284
vkey=123
[p2p_ssh]
mode=p2p
password=ssh2
target_addr=10.1.50.2:22
项 |
含义 |
mode |
p2p |
password |
唯一密钥 |
target_addr |
内网目标 |
文件访问模式
利用nps提供一个公网可访问的本地文件服务,此模式仅客户端使用配置文件模式方可启动
[common]
server_addr=1.1.1.1:8284
vkey=123
[file]
mode=file
server_port=9100
local_path=/tmp/
strip_pre=/web/
项 |
含义 |
mode |
file |
server_port |
服务端开启的端口 |
local_path |
本地文件目录 |
strip_pre |
前缀 |
对于strip_pre
,访问公网ip:9100/web/
相当于访问/tmp/
目录
断线重连
[common]
auto_reconnection=true