可视化web管理的内网穿透神器NPS

简介: 可视化web管理的内网穿透神器NPS

nps是一款轻量级、高性能、功能强大的内网穿透代理服务器。目前支持tcp、udp流量转发,可支持任何tcp、udp上层协议,支持内网http代理、内网socks5代理、p2p等,并带有功能强大的web管理端。

使用内网穿透技术可以使你在公共网络环境也能轻松连接你的内网设备,除了之前介绍过的frp之后,此款NPS也是比较推荐的,通过Web管理的方式快速地创建和管理穿透设备。


1.环境准备


为了统一管理我的项目,依然使用docker来部署项目,感兴趣的小伙伴也可以采用二进制部署的方式,网上的类似的文章很多,故不再重复介绍。

在自己的Linux(Ubuntu/CentOS 7+)服务器上执行以下命令安装docker, 安装完成后执行第二条命令,启动并设置开机启动docker。

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
systemctl enable --now docker


2.安装NPS


首先拉取最新的镜像:

docker pull ffdfgdfg/nps


image.png


创建一个目录用于存放配置文件:

mkdir -p /opt/docker/nps

将准备好的配置文件放进去,待后续引用:

cd /opt/docker/nps && wget https://qny.aoarasi.com/software/conf.zip
# 如果提示找不到wget命令: -bash: wget: command not found,请使用下面命令安装,再重复上面的命令。
# CentOS系: yum -y install wget
# Ubuntu系: sudo apt-get -y install wget

解压配置文件:

yum -y install unzip 
# 如果是Ubuntu请使用以下命令
# sudo apt-get -y install unzip
unzip conf.zip

运行项目:

docker run -d --name nps \
--restart=always \
--net=host \
-v /opt/docker/nps/conf:/conf \
ffdfgdfg/nps

image.png


通过查看日志可以发现,该系统目前一共占用了3个端口:

docker logs nps

image.png


分别为80、443和8080,其中8080中管理端口。


3.访问管理后台


在浏览器中输入的你的ip:8080,其ip为电脑的ip地址,如果是云服务器请使用公网ip代替。默认登录用户名和密码为:admin/123


image.png


4.服务端简单配置



新增加一个客户端。


image.png

image.png


5.配置客户端


无配置文件:docker run -d --name npc --net=host ffdfgdfg/npc -server=ip:port -vkey=<web界面中显示的密钥> <以及一些其他参数>

这里的web界面中显示的密钥这是根据自己的配置来的,按照提示修改。

image.png

我这里仅在同一台机器上测试验证,实际情况适配修改。

docker run -d \
--name npc \
--net=host \
--restart=always \
ffdfgdfg/npc \
-server=192.168.31.92:8024 \
-vkey=test

image.png


6.测试访问


刷新后台,可以看到在线客户端已经变为1,说明客户端已经与服务器连接成功。


image.png

最后


我这里仅演示了最基础的tcp代理,还有很多好玩的功能大家可以慢慢研究、尝试。

docker项目地址:

服务端:https://hub.docker.com/r/ffdfgdfg/nps
客户端:https://hub.docker.com/r/ffdfgdfg/npc
相关文章
|
21小时前
|
Kubernetes Oracle 关系型数据库
实时计算 Flink版产品使用合集之web ui能否在线管理数据source和处理数据
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
8天前
|
应用服务中间件 中间件 缓存
Web应急响应0基础讲解国赛信安管理与评估二阶段
Web应急响应0基础讲解国赛信安管理与评估二阶段
Web应急响应0基础讲解国赛信安管理与评估二阶段
|
8天前
|
SQL Java
20:基于EL与JSTL的产品管理页-Java Web
20:基于EL与JSTL的产品管理页-Java Web
24 5
|
8天前
|
SQL 安全 Go
如何在 Python 中进行 Web 应用程序的安全性管理,例如防止 SQL 注入?
在Python Web开发中,确保应用安全至关重要,主要防范SQL注入、XSS和CSRF攻击。措施包括:使用参数化查询或ORM防止SQL注入;过滤与转义用户输入抵御XSS;添加CSRF令牌抵挡CSRF;启用HTTPS保障数据传输安全;实现强身份验证和授权系统;智能处理错误信息;定期更新及审计以修复漏洞;严格输入验证;并培训开发者提升安全意识。持续关注和改进是保证安全的关键。
22 0
|
8天前
|
开发框架 安全 搜索推荐
如何使用Python Flask发布web页面至公网并实现远程访问【内网穿透】
如何使用Python Flask发布web页面至公网并实现远程访问【内网穿透】
|
8天前
|
消息中间件 监控
RabbitMQ的Web管理页面
RabbitMQ的Web管理页面
27 0
|
8天前
|
存储 安全 Java
理解Session和Cookie:Java Web开发中的用户状态管理
【4月更文挑战第3天】本文探讨了Web应用中用户状态管理的两种主要机制——Session和Cookie。Session在服务器端存储数据,更安全,适合大量数据,而Cookie存储在客户端,可能影响性能但支持持久化。在Java Web开发中,使用Servlet API操作Session和Cookie,注意敏感信息安全、Session管理及Cookie安全设置。理解两者差异并恰当使用是优化应用性能和用户体验的关键。
|
8天前
|
NoSQL 关系型数据库 Linux
Star 1.6k!当Web遇上Linux和数据库!一站式管理平台的开源之旅!
Star 1.6k!当Web遇上Linux和数据库!一站式管理平台的开源之旅!
|
8天前
|
SQL 安全 测试技术
如何在 Python 中进行 Web 应用程序的安全性管理,例如防止 SQL 注入?
如何在 Python 中进行 Web 应用程序的安全性管理,例如防止 SQL 注入?
23 0
|
8天前
|
数据可视化 前端开发
web前端-Echarts-5.3高级可视化和图表组合布局
web前端-Echarts-5.3高级可视化和图表组合布局