nodepass内网穿透工具

简介

NodePass 是一种优雅、高效的 TCP 隧道解决方案,可在网络端点之间创建安全的通信桥梁。通过建立未加密的 TCP 控制通道,NodePass 可在受限制的网络环境中实现无缝数据传输,同时为数据通道提供可配置的安全选项。其服务器-客户端架构允许灵活的部署方案,从而能够跨越防火墙、NAT 和其他网络障碍访问服务。凭借其智能连接池、最小的资源占用和简单的命令语法,NodePass 为开发人员和系统管理员提供了一种强大且易于使用的工具,可解决复杂的网络挑战,而不会影响安全性或性能。

NodePass项目地址:链接直达

Docker方式

拉取容器镜像

1
docker pull ghcr.io/yosebyte/nodepass:latest

服务器模式运行

  • -p:将容器中的映射到本地
  • 10101:10101:本地隧道连接的端口:容器中隧道连接的端口
  • 8090:8090:本地转发端口:容器中本地转发端口
1
2
docker run -d --name nodepass-server -p 10101:10101 -p 8090:8090 \
ghcr.io/yosebyte/nodepass server://0.0.0.0:10101/0.0.0.0:8090

客户端模式运行

  • MIN_POOL_CAPACITY: 确保最小可用连接
  • MAX_POOL_CAPACITY: 防止过度资源消耗
1
2
3
4
5
docker run -d --name nodepass-client \
-e MIN_POOL_CAPACITY=32 \
-e MAX_POOL_CAPACITY=512 \
-p 8090:8090 \
ghcr.io/yosebyte/nodepass client://server.example.com:10101/127.0.0.1:8090

如果网站也docker容器部署的话,在使用docker方式进行内网穿透会出现如下的报错:
failed: port is already allocated

sh脚本

1
bash <(curl -sL https://cdn.yobc.de/shell/nodepass.sh)

服务器模式

语法:

1
nodepass server://<tunnel_addr>/<target_addr>?log=<level>&tls=<mode>&crt=<cert_file>&key=<key_file>
  • tunnel_addr: TCP隧道端点地址(控制通道),客户端将连接到此处(例如, 10.1.0.1:10101)
  • target_addr: 服务器监听传入连接(TCP和UDP)的地址,这些连接将被隧道传输到客户端(例如, 10.1.0.1:8090)
  • log: 日志级别(debug, info, warn, error, fatal)
  • tls: 目标数据通道的TLS加密模式 (0, 1, 2)
    • 0: 无TLS加密(明文TCP/UDP)
    • 1: 自签名证书(自动生成)
    • 2: 自定义证书(需要crtkey参数)
  • crt: 证书文件路径(当tls=2时必需)
  • key: 私钥文件路径(当tls=2时必需)

示例

1
nodepass "server://10.1.0.1:10101/10.1.0.1:8090?log=debug&tls=2&crt=/path/to/cert.pem&key=/path/to/key.pem"

客户端模式

语法:

1
nodepass client://<tunnel_addr>/<target_addr>?log=<level>
  • tunnel_addr: 要连接的NodePass服务器隧道端点地址(例如, 10.1.0.1:10101)
  • target_addr: 流量将被转发到的本地地址(例如, 127.0.0.1:8090)
  • log: 日志级别(debug, info, warn, error, fatal)

示例

1
nodepass client://10.1.0.1:10101/127.0.0.1:8090?log=info

nodepass内网穿透工具
https://skilladd.org/2025/04/08/7.nodepass内网穿透工具/
Author
skilladd
Posted on
April 8, 2025
Licensed under