腾讯云cvm 部署nps实现内网穿透代理
NPS
云CVM环境
# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
# uname -a
Linux VM-24-11-centos 3.10.0-1160.71.1.el7.x86_64 #1 SMP Tue Jun 28 15:37:28 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
下载安装包并安装
# wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_server.tar.gz
# mkdir /usr/local/nps && cd /usr/local/nps
# tar xf linux_amd64_server.tar.gz
# 安装nps
# ./nps install
# mv /usr/local/nps/nps /usr/local/bin/
修改配置文件
# cd /etc/nps/conf/
# cat nps.conf | grep -Ev '^#|^$'
appname = nps
runmode = dev
http_proxy_ip=0.0.0.0
http_proxy_port=80
https_proxy_port=443
https_just_proxy=true
https_default_cert_file=conf/server.pem
https_default_key_file=conf/server.key
bridge_type=tcp
bridge_port=8024
bridge_ip=0.0.0.0
public_vkey=123
log_level=7
web_host=a.o.com
web_username=admin
web_password=123
web_port = 8080
web_ip=0.0.0.0
web_base_url=
web_open_ssl=false
web_cert_file=conf/server.pem
web_key_file=conf/server.key
auth_crypt_key =1234567812345678
allow_user_login=false
allow_user_register=false
allow_user_change_username=false
allow_flow_limit=false
allow_rate_limit=false
allow_tunnel_num_limit=false
allow_local_proxy=false
allow_connection_num_limit=false
allow_multi_ip=false
system_info_display=false
http_cache=false
http_cache_length=100
http_add_origin_header=false
disconnect_timeout=60
名称 | 含义 |
---|---|
web_port | web管理端口 |
web_password | web界面管理密码 |
web_username | web界面管理账号 |
web_base_url | web管理主路径,用于将web管理置于代理子路径后面 |
bridge_port | 服务端客户端通信端口 |
https_proxy_port | 域名代理https代理监听端口 |
http_proxy_port | 域名代理http代理监听端口 |
auth_key | web api密钥 |
bridge_type | 客户端与服务端连接方式kcp或tcp |
public_vkey | 客户端以配置文件模式启动时的密钥,设置为空表示关闭客户端配置文件连接模式 |
ip_limit | 是否限制ip访问,true或false或忽略 |
flow_store_interval | 服务端流量数据持久化间隔,单位分钟,忽略表示不持久化 |
log_level | 日志输出级别 |
auth_crypt_key | 获取服务端authKey时的aes加密密钥,16位 |
p2p_ip | 服务端Ip,使用p2p模式必填 |
p2p_port | p2p模式开启的udp端口 |
pprof_ip | debug pprof 服务端ip |
pprof_port | debug pprof 端口 |
disconnect_timeout | 客户端连接超时,单位 5s,默认值 60,即 300s = 5mins |
启动
nps start
停止
nps stop
重启
nps restart
端口放行
在云服务器防火墙或安全组中放行相应端口
必须放行的两个端口
# cat nps.conf | grep -Ev '^#|^$'
···
bridge_port=8024 服务端客户端通信端口
web_port = 8080 NPS的web管理界面
···
登陆NPS服务
用户名和密码为配置文件中配置的,请使用修改后的密码进行登录
web_username=admin
web_password=123
web界面配置
添加客户端
添加TCP通道
客户端ID编号要与客户端的ID对应
客户端配置
下载安装包并解压
windows_amd64_client.tar.gz
复制客户端命令修改为以下格式
D:\app\windows_amd64_client\npc.exe install -server=xxx.xxx.xxx:xxxx -vkey=xxxxxxxxxxxxxxx -type=tcp
D:\app\windows_amd64_client\
npc.exe路径解压后的位置-server=
与-vkey=
为复制的客户端信息
用管理员打开cmd命令执行
启动客户端应用
完成后登录web端查看连接状态为在线,如果不是在线状态是有问题的,可以检查下端口放开没有
连接测试,就可以连接啦