Files
Archive/nodepass

nodepass

Mentioned in Awesome Go GitHub release GitHub downloads Go Report Card License Go Reference Ask DeepWiki GitHub last commit

English | 简体中文

NodePass is an open-source, lightweight, enterprise-grade TCP/UDP network tunneling solution featuring an all-in-one architecture with separation of control and data channels, along with flexible and high-performance instance control. It supports zero-configuration deployment, intelligent connection pooling, tiered TLS encryption, and seamless protocol conversion. Designed for DevOps professionals and system administrators to effortlessly handle complex network scenarios including firewall traversal, NAT bypassing, and advanced tunnel management.

💎 Key Features

  • 🔀 Multiple Operating Modes

    • Server mode accepting incoming tunnels with configurable security
    • Client mode for establishing outbound connections to tunnel servers
    • Master mode with RESTful API for dynamic instance management
  • 🌍 Protocol Support

    • TCP tunneling with persistent connection handling
    • UDP datagram forwarding with configurable buffer sizes
    • Intelligent routing mechanisms for both protocols
  • 🛡️ Security Options

    • TLS Mode 0: Unencrypted mode for maximum speed in trusted networks
    • TLS Mode 1: Self-signed certificates for quick secure setup
    • TLS Mode 2: Custom certificate validation for enterprise security
  • Performance Features

    • Smart connection pooling with real-time capacity adaptation
    • Dynamic interval adjustment based on network conditions
    • Minimal resource footprint even under heavy load
  • 🧰 Simple Configuration

    • Zero configuration files required
    • Simple command-line parameters
    • Environment variables for fine-tuning performance

📋 Quick Start

📥 Installation

  • Pre-built Binaries: Download from releases page.
  • Container Image: docker pull ghcr.io/yosebyte/nodepass:latest

🚀 Basic Usage

Server Mode

nodepass "server://:10101/127.0.0.1:8080?log=debug&tls=1"

Client Mode

nodepass "client://server:10101/127.0.0.1:8080?min=128"

Master Mode (API)

nodepass "master://:10101/api?log=debug&tls=1"

📚 Documentation

Explore the complete documentation to learn more about NodePass:

🌐 Ecosystem

The NodePassProject organization develops various frontend applications and auxiliary tools to enhance the NodePass experience:

  • NodePassDash: A modern NodePass management interface that provides master management, instance management, traffic statistics, history records, and more.

  • NodePanel: A lightweight frontend panel that provides visual tunnel management, deployable on Vercel or Cloudflare Pages.

  • npsh: A collection of one-click scripts that provide simple deployment for API or Dashboard with flexible configuration and management.

💬 Discussion

📄 License

Project NodePass is licensed under the BSD 3-Clause License.

⚖️ Disclaimer

This project is provided "as is" without any warranties. Users assume all risks and must comply with local laws for legal use only. Developers are not liable for any direct, indirect, incidental, or consequential damages. Secondary development requires commitment to legal use and self-responsibility for legal compliance. Developers reserve the right to modify software features and this disclaimer at any time. Final interpretation rights belong to developers.

🤝 Sponsors

Stargazers

Stargazers over time