NPS反向代理流量分析

本文介绍了NPS,一款轻量级的内网穿透反向代理服务器,用于TCP、UDP流量转发。内容包括环境搭建、服务端和客户端配置,以及连接成功和失败时的流量分析,强调了加密后的流量安全性。

目录

0x01 声明:

0x02 简介:

0x03 环境搭建:

软件下载:

使用文档:

服务端配置:

客户端配置:

结果:

0x04 流量分析:

NPS连接成功流量:

NPS连接流量:

NPS连接流量(加密):

NPS连接失败流量(连接端口错误):

NPS连接失败流量(连接秘钥错误):


0x01 声明:

        仅供学习参考使用,请勿用作违法用途,否则后果自负。

0x02 简介:

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

0x03 环境搭建:

        软件下载:

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

        使用文档:

https://github.com/ehang-io/nps/blob/master/README_zh.md

        服务端配置:

        windows版本:(本文使用版本)

进入下载目录:

        nps.exe install(安装NPS)

进入安装目录

        C:\Program Files\nps        

        nps.exe start(启动NPS)

访问服务端ip:web服务端口(默认为8080)

使用用户名和密码登陆(默认admin/123,正式使用一定要更改)

新增客户端

        客户端配置:

        ./npc.exe -server=xxxx:8024 -vkey=123123 -type=tcp 

        结果:

0x04 流量分析:

        NPS连接成功流量:

        NPS连接流量:

        NPS连接流量(加密):

选择加密之后,就没办法在流量包中了解到连接特征。 

        NPS连接失败流量(连接端口错误):

        NPS连接失败流量(连接秘钥错误):

NPS中配置SOCKS5代理需要通过服务端和客户端的协同设置来实现。以下是一个完整的配置流程,涵盖了从服务端部署到客户端连接的全过程。 ### 服务端配置 1. **安装并启动 NPS 服务端** 首先确保你已经在公网服务器上正确安装了 NPS 服务端。可以通过官方 GitHub 仓库获取最新版本,并根据操作系统选择合适的二进制文件进行部署[^3]。 启动服务端后,默认情况下会监听多个端口,其中 SOCKS5 代理通常使用 `1080` 端口。你可以通过修改配置文件 `nps.conf` 来调整监听端口或其他参数: ```bash server_addr=0.0.0.0:8024 # 主要通信端口 socks5_proxy_port=1080 # SOCKS5 代理端口 ``` 2. **通过 Web 管理界面创建 SOCKS5 客户端任务** 登录 NPS 的 Web 管理界面(默认地址为 `http://<公网IP>:8080`),进入“客户端”页面,点击“新增”按钮来创建一个新的 SOCKS5 客户端任务。你需要填写以下信息: - **客户端名称**:用于标识该 SOCKS5 代理连接。 - **目标 IP 和端口**:填写内网目标机器的 IP 地址和对应的端口(例如 SSH 端口 22)。 - **协议类型**:选择 `socks5`。 - **认证信息(可选)**:如果启用了认证功能,则需在此处设置用户名和密码,客户端连接时必须提供这些凭据[^1]。 3. **确认服务端监听状态** 配置完成后,可以在服务端运行如下命令检查是否成功监听了 SOCKS5 端口: ```bash netstat -tuln | grep 1080 ``` ### 客户端配置 1. **下载并运行 NPS 客户端程序** 根据你的操作系统下载对应平台的 NPS 客户端,解压后编辑 `npc.conf` 文件以配置连接参数: ```ini [common] server_addr=39.97.238.139:8024 # NPS 服务端公网地址 conn_type=tcp auto_reconnect=true socks5_username=myuser # 如果启用了认证 socks5_password=mypassword ``` 保存配置文件后,执行客户端程序: ```bash ./npc ``` 2. **测试 SOCKS5 代理连接** 在客户端设备上设置 SOCKS5 代理,将代理地址设为 `127.0.0.1`,端口为本地映射的端口(默认为 `1080`)。可以使用如 `curl` 或浏览器插件等工具验证是否能够通过代理访问内网资源: ```bash curl --socks5-hostname 127.0.0.1:1080 http://内网IP ``` ### 认证与安全 如果你在创建客户端任务时设置了用户名和密码,则所有通过该 SOCKS5 代理的连接都必须携带相应的凭证信息。这有助于防止未经授权的访问,并增强安全性[^1]。 此外,建议定期更新 NPS 服务端和客户端至最新版本,以获得最新的功能支持和安全修复。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Kang_Sec

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值