一款轻量级、高性能、功能强大的内网穿透代理服务器

简介

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

效果图

安装

安装服务端

mkdir /opt/nps
cd /opt/nps
wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_server.tar.gz
tar -xvf linux_amd64_server.tar.gz

 安装客户端

mkdir /opt/npc
cd /opt/npc
wget https://github.com/ehang-io/nps/releases/download/v0.26.10/linux_amd64_client.tar.gz
tar -xvf linux_amd64_client.tar.gz

服务端基本使用

提示:使用web模式时,服务端执行文件必须在项目根目录,否则无法正确加载配置文件

web管理

进入web界面,公网ip:web界面端口(默认8080),密码默认为123

进入web管理界面,有详细的说明

服务端配置文件重载

对于linux、darwin

 sudo nps reloadCopy to clipboardErrorCopied

对于windows

 nps.exe reloadCopy to clipboardErrorCopied

说明: 仅支持部分配置重载,例如allow_user_login auth_crypt_key auth_key web_username web_password 等,未来将支持更多

服务端停止或重启

对于linux、darwin

 sudo nps stop|restartCopy to clipboardErrorCopied

对于windows

 nps.exe stop|restartCopy to clipboardErrorCopied

服务端更新

请首先执行 sudo nps stop 或者 nps.exe stop 停止运行,然后

对于linux

 sudo nps-update updateCopy to clipboardErrorCopied

对于windows

 nps-update.exe updateCopy to clipboardErrorCopied

更新完成后,执行执行 sudo nps start 或者 nps.exe start 重新运行即可完成升级

如果无法更新成功,可以直接自行下载releases压缩包然后覆盖原有的nps二进制文件和web目录

注意:nps install 之后的 nps 不在原位置,请使用 whereis nps 查找具体目录覆盖 nps 二进制文件

客户端基本使用

无配置文件模式

此模式的各种配置在服务端web管理中完成,客户端除运行一条命令外无需任何其他设置

 ./npc -server=ip:port -vkey=web界面中显示的密钥Copy to clipboardErrorCopied

注册到系统服务(开机启动、守护进程)

对于linux、darwin

  • 注册:sudo ./npc install 其他参数(例如-server=xx -vkey=xx或者-config=xxx)
  • 启动:sudo npc start
  • 停止:sudo npc stop
  • 如果需要更换命令内容需要先卸载./npc uninstall,再重新注册

对于windows,使用管理员身份运行cmd

  • 注册:npc.exe install 其他参数(例如-server=xx -vkey=xx或者-config=xxx)
  • 启动:npc.exe start
  • 停止:npc.exe stop
  • 如果需要更换命令内容需要先卸载npc.exe uninstall,再重新注册
  • 如果需要当客户端退出时自动重启客户端,请按照如图所示配置 

注册到服务后,日志文件windows位于当前目录下,linux和darwin位于/var/log/npc.log

客户端更新

首先进入到对于的客户端二进制文件目录

请首先执行sudo npc stop或者npc.exe stop停止运行,然后

对于linux

 sudo npc-update updateCopy to clipboardErrorCopied

对于windows

npc-update.exe updateCopy to clipboardErrorCopied

更新完成后,执行执行sudo npc start或者npc.exe start重新运行即可完成升级

如果无法更新成功,可以直接自行下载releases压缩包然后覆盖原有的npc二进制文件

配置文件模式

此模式使用nps的公钥或者客户端私钥验证,各种配置在客户端完成,同时服务端web也可以进行管理

 ./npc -config=npc配置文件路径Copy to clipboardErrorCopied

配置文件说明

示例配置文件

全局配置
[common]
server_addr=1.1.1.1:8024
conn_type=tcp
vkey=123
username=111
password=222
compress=true
crypt=true
rate_limit=10000
flow_limit=100
remark=test
max_conn=10
#pprof_addr=0.0.0.0:9999Copy to clipboardErrorCopied
含义
server_addr服务端ip/域名:port
conn_type与服务端通信模式(tcp或kcp)
vkey服务端配置文件中的密钥(非web)
usernamesocks5或http(s)密码保护用户名(可忽略)
passwordsocks5或http(s)密码保护密码(可忽略)
compress是否压缩传输(true或false或忽略)
crypt是否加密传输(true或false或忽略)
rate_limit速度限制,可忽略
flow_limit流量限制,可忽略
remark客户端备注,可忽略
max_conn最大连接数,可忽略
pprof_addrdebug pprof ip:port
域名代理
[common]
server_addr=1.1.1.1:8024
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=npsCopy to clipboardErrorCopied
含义
web1备注
host域名(http
target_addr内网目标,负载均衡时多个目标,逗号隔开
host_change请求host修改
header_xxx请求header修改或添加,header_proxy表示添加header proxy:nps
tcp隧道模式
[common]
server_addr=1.1.1.1:8024
vkey=123
[tcp]
mode=tcp
target_addr=127.0.0.1:8080
server_port=9001Copy to clipboardErrorCopied
含义
modetcp
server_port在服务端的代理端口
tartget_addr内网目标
udp隧道模式
[common]
server_addr=1.1.1.1:8024
vkey=123
[udp]
mode=udp
target_addr=127.0.0.1:8080
server_port=9002Copy to clipboardErrorCopied
含义
modeudp
server_port在服务端的代理端口
target_addr内网目标
http代理模式
[common]
server_addr=1.1.1.1:8024
vkey=123
[http]
mode=httpProxy
server_port=9003Copy to clipboardErrorCopied
含义
modehttpProxy
server_port在服务端的代理端口
socks5代理模式
[common]
server_addr=1.1.1.1:8024
vkey=123
[socks5]
mode=socks5
server_port=9004
multi_account=multi_account.confCopy to clipboardErrorCopied
含义
modesocks5
server_port在服务端的代理端口
multi_accountsocks5多账号配置文件(可选),配置后使用basic_username和basic_password无法通过认证
私密代理模式
[common]
server_addr=1.1.1.1:8024
vkey=123
[secret_ssh]
mode=secret
password=ssh2
target_addr=10.1.50.2:22Copy to clipboardErrorCopied
含义
modesecret
password唯一密钥
target_addr内网目标
p2p代理模式
[common]
server_addr=1.1.1.1:8024
vkey=123
[p2p_ssh]
mode=p2p
password=ssh2
target_addr=10.1.50.2:22Copy to clipboardErrorCopied
含义
modep2p
password唯一密钥
target_addr内网目标
文件访问模式

利用nps提供一个公网可访问的本地文件服务,此模式仅客户端使用配置文件模式方可启动

[common]
server_addr=1.1.1.1:8024
vkey=123
[file]
mode=file
server_port=9100
local_path=/tmp/
strip_pre=/web/Copy to clipboardErrorCopied
含义
modefile
server_port服务端开启的端口
local_path本地文件目录
strip_pre前缀

对于strip_pre,访问公网ip:9100/web/相当于访问/tmp/目录

断线重连
[common]
auto_reconnection=true

官方文档

https://ehang-io.github.io/nps/#/install

github:

https://github.com/ehang-io/nps.git

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/662039.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

reactnative 调用原生ui组件

reactnative 调用原生ui组件 ![组件对应关系](https://img-blog.csdnimg.cn/direct/c4351ad7bd38411e9c13087f1059a4b0.png)1.该样例已textView,介绍。 新建MyTextViewManager 文件,继承SimpleViewManager。import android.graphics.Color; import andr…

2024年美国大学生数学建模竞赛F题思路分析

题目 非法野生动物贸易对环境造成了负面影响,并威胁全球生物多样性。据估计,其涉及高达265亿美元的年交易额,被认为是全球所有非法交易中的第四大。[1] 你需要开发一个基于数据驱动的5年项目,旨在显著减少非法野生动物贸易。你的…

2024美赛数学建模F题思路分析 - 减少非法野生动物贸易

1 赛题 问题F:减少非法野生动物贸易 非法的野生动物贸易会对我们的环境产生负面影响,并威胁到全球的生物多样性。据估计,它每年涉及高达265亿美元,被认为是全球第四大非法交易。[1]你将开发一个由数据驱动的5年项目,…

2024年美赛F题Problem F Reducing Illegal Wildlife Trade减少非法野生动物贸易的完整思路代码分享

非法的野生动物贸易会对我们的环境产生负面影响,并威胁到全球的生物多样性。据估计,它每年涉及高达265亿美元,被认为是全球第四大非法交易。[1]你将开发一个由数据驱动的5年项目,旨在显著减少非法野生动物贸易。你的目标是说服一个…

Leetcode2772. 使数组中的所有元素都等于零

Every day a Leetcode 题目来源:2772. 使数组中的所有元素都等于零 解法1:差分数组 令差分数组 diff[i] nums[i] - nums[i - 1],特别地,diff[0] nums[0],diff[n] -nums[n-1]。 可以发现,差分数组具…

用Audio2Face导出Unity面部动画

开始之前说句话,新年前最后一篇文章了 一定别轻易保存任何内容,尤其是程序员不要轻易Ctrl S 在A2F去往Unity的路上,还要经历特殊Blender,自己电脑中已下载好的可能不是很好使。 如果想查看UE相关的可以跳转到下边这两篇链接 1. …

Linux小知识分享-压缩包解压之后属主和属组不是当前用户问题

今天给大家分享一个Linux小知识 背景 假设当前Linux下用户是root,我们从网络上或者其他环境下载了个压缩包进行本地解压。 结果发现解压之后的文件或者文件夹的 属主和属主 都不是当前用户root # 检查当前用户 [roottest-xxxx-01-vm /tmp/colinspace ]# id uid0(…

IDEA 配置和缓存目录 设置

IDEA系列产品&#xff0c;一般会在用户目录创建 配置 和 缓存 目录&#xff1a; %APPDATA%\JetBrains%LOCALAPPDATA%\JetBrains 一般会展示为&#xff1a; C:\Users\<username>\AppData\Roaming\JetBrainsC:\Users\<username>\AppData\Local\JetBrains 一般占用…

MtfLive直播导航PHP源码,附带系统搭建教程

将自动采集斗鱼、虎牙、触手、YY、章鱼、电视直播按分类/关键词聚合&#xff0c;用户选择分类&#xff0c;可以观看到全网该关键词下正在直播的内容。 特点 PC站和H5移动站自适应 自动缓存&#xff0c;避免频繁抓取数据 自定义抓取采集规则&#xff0c;同时支持HTML和JSON …

Character Auras 3

该包包含12种惊人的光环效果! 列表: 秋天的氛围 血光 五彩纸屑的光环 疾风 火光光环 森林氛围 治疗光环 冰系光环 爱的光环 毒气环 星光气场 所有预制件都已准备好用于游戏,只需将它们拖放到游戏中即可! 下载: ​​Unity资源商店链接 资源下载链接 效果图:

OJ刷题:《剑指offer》之左旋字符串!

目录 1.题目描述 2.方法一&#xff08;元素一一挪&#xff09; 2.1算法解析 2.2代码实现 3.方法二&#xff08;三次逆置&#xff09; 3.1算法解析 3.2代码实现 4.方法三&#xff08;库方法&#xff09; 4.1算法解析 4.2代码实现 5.完结散花 创作不易&#xff0c;宝子…

【制作100个unity游戏之23】实现类似七日杀、森林一样的生存游戏8(附项目源码)

本节最终效果演示 文章目录 本节最终效果演示系列目录前言配置可使用物品功能下载一些水果模型代码实现使用物品 源码完结 系列目录 前言 欢迎来到【制作100个Unity游戏】系列&#xff01;本系列将引导您一步步学习如何使用Unity开发各种类型的游戏。在这第23篇中&#xff0c…

Java面对对象

Java面向对象 面对对象概述&#xff0c;类与对象&#xff0c;继承&#xff0c;重写与重载&#xff0c;多态&#xff0c;抽象&#xff0c;封装&#xff0c;包&#xff0c;泛型&#xff0c;异常 面对对象概述 什么是面向对象&#xff08;OOP&#xff09; 面向对象(Object Ori…

【python3.8 pre-commit报错】记录pre-commit install报错

一、问题 在执行pre-commit install --allow-missing-config命令时&#xff0c;报错 Traceback (most recent call last):File "C:\ProgramData\Anaconda3\envs\py38\lib\runpy.py", line 192, in _run_module_as_mainreturn _run_code(code, main_globals, None,F…

html,css,js速成

准备&#xff1a;vscode配好c&#xff0c;python&#xff0c;vue环境。 1. html hypertext markup language(超文本标记语言) 1. 基础语法 一个html元素由开始标签&#xff0c;填充文本&#xff0c;结束标签构成。 常见标签说明<b></b>粗体<i></i>…

免费分享一套SpringBoot+Vue药店(药房)管理系统,帅呆了~~

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的SpringBootVue药店(药房)管理系统 &#xff0c;分享下哈。 项目视频演示 【免费】SpringBootVue药店(药房)管理系统 Java毕业设计_哔哩哔哩_bilibili【免费】SpringBootVue药店(药房)管理系统 Java毕业设计…

Jmeter学习系列之五:基础线程组(Thread Group)

前言 线程组是一系列线程的集合,每一个线程代表着一个正在使用应用程序的用户。在 jmeter 中,每个线程意味着模拟一个真实用户向服务器发起请求。 在 jmeter 中,线程组组件运行用户设置线程数量、初始化方式等等配置。 例如,如果你设置线程数为 100,那么 jmeter 将创建…

C语言字符字符串函数:strcpy、strcat、strcmp介绍和模拟实现以及stnrcpy、strncat、strncmp介绍(近万字详解,建议三连收藏)

目录 1.strcpy(字符串拷贝函数&#xff09; 1.1函数介绍 1.2函数使用示范 1.3函数模拟实现 2.strcat(字符串追加函数&#xff09; 2.1函数介绍 2.2函数使用示范&#xff1a; 2.3函数模拟实现 &#xff1a; 2.4思考&#xff1a;字符串可以自己给自己追加吗&#xff1f; …

EDI报文到Excel转换方案详解

EDI目前已广泛应用于电子、物流、汽车、零售等行业。 越来越多的交易伙伴要求建立EDI连接&#xff0c;通过EDI来对接上下游交易伙伴&#xff0c;收发业务单据。 当我们与新的交易伙伴建立EDI连接时&#xff0c;有多种实施方案可供选择&#xff0c;如果您的单据量较少&#xf…

OBB头篇 | 原创自研 | YOLOv8 更换 SEResNeXtBottleneck 头 | 附详细结构图

左图:ResNet 的一个模块。右图:复杂度大致相同的 ResNeXt 模块,基数(cardinality)为32。图中的一层表示为(输入通道数,滤波器大小,输出通道数)。 1. 思路 ResNeXt是微软研究院在2017年发表的成果。它的设计灵感来自于经典的ResNet模型,但ResNeXt有个特别之处:它采用…