Crates.io | narrowlink |
lib.rs | narrowlink |
version | 0.0.0 |
source | src |
created_at | 2023-01-06 00:31:06.3717 |
updated_at | 2023-08-09 04:22:26.639807 |
description | Narrowlink |
homepage | https://narrowlink.com |
repository | https://github.com/narrowlink/narrowlink/ |
max_upload_size | |
id | 751910 |
size | 6,171 |
Narrowlink comprises multiple crates, making it impractical to publish them all within a single repository. Therefore, we've opted to create this crate as an index for all the others. You can locate the source code and details of each individual crate at the following address:
You can also install all the components of Narrowlink using the following command:
cargo install narrowlink-gateway narrowlink-agent narrowlink-client narrowlink-token-generator
Port Forwarding without a Public IP Address: Access devices within your home network from external locations without public IP addresses.
Sharing Internet Access: Enable remote devices to access the internet through your network.
Publishing Your Local Webserver: Make your local webserver accessible on the internet, even without a public IP address.
Covert Communications: Narrowlink disguises traffic as regular web browsing using the WebSocket over HTTP/S protocol, enhancing privacy and bypassing firewalls.
Fine-Grained Access Control: Control access to agents and services based on IP addresses, domains, and agent names, allowing you to implement zero trust network access (ZTNA) policies.
End-to-End Encryption: Secure your communications with end-to-end encryption using the Xchacha20-Poly1305 cipher and HMAC-SHA256 for tamper-proofing.
User Management: Create different user spaces with individual access control policies, providing services to multiple users with a single gateway.
Automatic Certificate Management: Automatic generation and management of TLS certificates for published services using the ACME protocol.
SNI Proxy: Prevent the gateway from decrypting your TLS traffic by handling it on the agent's server with your certificate.
CDN Compatibility: Set up the gateway behind CDN services to enhance the performance of your services.
Flexibility: Orchestrate Narrowlink with other tools like SSH or sing-box to add more functionalities.
Cross-Platform and Lightweight: Written in Rust, Narrowlink is lightweight, fast, and cross-platform, supporting major desktop and mobile operating systems.
Narrowlink's architecture consists of three main components: the Gateway, Agents, and Clients. The Gateway serves as the central hub, routing packets between agents, clients, and browsers. Agents act as proxies, forwarding packets to or from targeted hosts within the local network. Clients send and receive packets to and from agents, facilitating communication with the Agent component. The Token Generator is responsible for generating tokens used for authentication and configuration within the Narrowlink network.
To get started with Narrowlink, please refer to the documentation page. This page provides two guides: Basic and Extended, which will help you learn more about the platform and walk you through the process of setting up a Narrowlink network and configuring your agents and clients.
We welcome contributions to the Narrowlink project. To contribute, please read the Contribution Guidelines and follow the code of conduct.
Narrowlink is released under the MPL-V2 and AGPL-3.0 licenses. Please see the LICENSE file for more details.