ToB企服应用市场:ToB评测及商务社交产业平台

标题: NPS指南:轻巧稳固的内网穿透神器,开源免费! [打印本页]

作者: 盛世宏图    时间: 2024-10-12 18:53
标题: NPS指南:轻巧稳固的内网穿透神器,开源免费!

最近开始公众号文章也开始同步更新了,对Java、大数据、人工智能、开辟运维相干技能分享,文章对您有效的话,辛苦您也关注下公众号,感谢!
      
   

  
NPS指南:轻巧稳固的内网穿透神器,开源免费!

NPS在GitHub 30k Stars,是一款轻量级、高性能、功能强大的内网穿透代理服务器。支持Linux、Windows、Mac体系
目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议(访问内网网站、本地付出接口调试、ssh访问、远程桌面,内网dns剖析等等……),别的还支持内网http代理、内网socks5代理p2p等,并带有功能强大的web管理端。

各种模式下NPS的应用场景

NPS有多种模式可以用,下面是各模式的应用场景
优势和特点


官方说明文档

说明文档:https://ehang-io.github.io/nps/#/use
源码地址:https://github.com/ehang-io/nps
下载服务端安装包

  1. wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_server.tar.gz
复制代码
解压
  1. tar -zxvf linux_amd64_server.tar.gz
复制代码
安装NPS

  1. ./nps install
复制代码
安装完成后nps会到体系变量中,安装后的配置文件/etc/nps/conf/nps.conf

nps默认配置文件使用了80,443,8080,8024端口
80与443端口为域名剖析模式默认端口
8080为web管理访问端口
8024为网桥端口,用于客户端与服务器通信
配置文件参数说明

可以根据个人必要动态调整参数,/etc/nps/conf/nps.conf配置参数说明:
名称含义web_portweb管理端口web_passwordweb界面管理密码web_usernameweb界面管理账号web_base_urlweb管理主路径,用于将web管理置于代理子路径后面bridge_port服务端客户端通信端口https_proxy_port域名代理https代理监听端口http_proxy_port域名代理http代理监听端口auth_keyweb api密钥bridge_type客户端与服务端连接方式kcp或tcppublic_vkey客户端以配置文件模式启动时的密钥,设置为空表示关闭客户端配置文件连接模式ip_limit是否限制ip访问,true或false或忽略flow_store_interval服务端流量数据长期化间隔,单位分钟,忽略表示不长期化log_level日志输出级别auth_crypt_key获取服务端authKey时的aes加密密钥,16位p2p_ip服务端Ip,使用p2p模式必填p2p_portp2p模式开启的udp端口pprof_ipdebug pprof 服务端ippprof_portdebug pprof 端口disconnect_timeout客户端连接超时,单位 5s,默认值 60,即 300s = 5mins 启动

  1. ./nps start
复制代码
假如发现没有启动成功,可以查看日志(Windows日志文件位于当前运行目录下,linux和darwin位于/var/log/nps.log)

服务端配置文件重载(目前支持功能不多)

对于linux、darwin
  1. sudo nps reload
复制代码
对于windows
  1. nps.exe reload
复制代码
说明: 仅支持部分配置重载,比方allow_user_login auth_crypt_key auth_key web_username web_password 等,未来将支持更多
服务端停止或重启

对于linux、darwin
  1. sudo nps stop|restart
复制代码
对于windows
  1. nps.exe stop|restart
复制代码
客户端应用

先在网站中创建客户端

这里可以自己设置,也可以全部使用默认


新增成功后在页面可以看到客户端列表。此时我们创建完可以看到连接状态为离线,接下来我们注册客户端就可以。

CentOS

下载客户端

  1. wget -b https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_client.tar.gz
复制代码
解压
  1. tar -zxvf linux_amd64_client.tar.gz
复制代码
方法一:客户端无配置文件启动

  1. ./npc -server=${您服务器的IP地址}:${bridge_port} -vkey=${vkey}
复制代码

方法二:配置文件启动

这里用Tcp模式举例,填写配置文件
  1. [common]
  2. # 填写登录后首页显示的客户端连接端口
  3. # 也就是:
  4. # ${您服务器的IP地址} 是您要连接的 NPS 服务器的公网 IP 地址。
  5. # ${bridge_port} 是 NPS 服务器的通信端口,通常在服务器端的配置中定义。
  6. server_addr=${您服务器的IP地址}:${bridge_port}
  7. conn_type=tcp
  8. # vkey填写上面的验证密钥
  9. vkey=xxxxx
  10. # 断线重连
  11. auto_reconnection=true
  12. [tcp]
  13. # 模式
  14. mode=tcp
  15. # 需要转发的地址
  16. target_addr=127.0.0.1:8080
  17. # NPS对外提供的服务端口
  18. server_port=18888
复制代码
说明:
项含义modetcpserver_port在服务端的代理端口tartget_addr内网目的 启动
  1. nohup ./npc -config=conf/npc.conf &
复制代码
  1. [I] [npc.go:231]  the version of client is 0.26.10, the core version of client is 0.26.0
  2. [I] [control.go:97]  Loading configuration file conf/npc.conf successfully
  3. [N] [control.go:174]  web access login username:user password:xxx
  4. [I] [client.go:72]  Successful connection with server xxx:18888
复制代码
此时通过我们公网的地址进行访问就可以了。
Windows客户端

下载Windows客户端

https://github.com/ehang-io/nps/releases/download/v0.26.10/windows_amd64_client.tar.gz
新建客户端


填写唯一验证密钥

TCP隧道配置

配置TCP隧道模式
npc.conf
  1. [common]
  2. server_addr=${你的服务器公网IP地址}:${bridge_port}
  3. conn_type=tcp
  4. vkey=puiskdnf!ofa2
  5. auto_reconnection=true
  6. max_conn=1000
  7. crypt=false
  8. compress=false
  9. disconnect_timeout=60
  10. [tcp]
  11. mode=tcp
  12. target_addr=3389
  13. server_port=28085
复制代码
直接双击npc.exe会主动读取conf/npc.conf配置文件
windows启动配置
  1. ./npc.exe -server=${你的服务器公网IP地址}:${bridge_port} -vkey=xxx -config=C:\Users\Admin\Desktop\windows_amd64_client\conf\npc.conf
复制代码
通过远程连接连接Windows服务器即可
配置Windows开机主动启动远程

创建启动脚本start-npc.bat
  1. # 这一段是后台运行的命令
  2. @echo off
  3. if "%1" == "h" goto begin
  4. mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit
  5. :begin
  6. # 这一段是启动
  7. cd C:\Users\Admin\Desktop\windows_amd64_client
  8. .\npc.exe -server=${你的服务器公网IP地址}:28083 -vkey=puiskdnf!ofa2 -config=C:\Users\Admin\Desktop\windows_amd64_client\conf\npc.conf
  9. pause
复制代码
  重要两个步调:
    在电脑运行中输入shell:startup

主动打开这个目录

将start-npc.bat文件或者start-npc.bat文件的快捷方式,拖入这个目录下,就完成了开机主动启动配置。
Mac 客户端

下载地址:https://github.com/ehang-io/nps/releases/download/v0.26.10/darwin_amd64_client.tar.gz
其他步调与Linux雷同



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4