Initial commit: Project structure, Coordinator Server v1.0.0, and Documentation
This commit is contained in:
commit
0ead98d0c4
18 files changed
+2073
No files matched your search
+48
@@ -0,0 +1,48 @@
|
||||
# MeshVPN - High Performance Overlay Network
|
||||
|
||||
A production-grade, lightweight mesh VPN solution designed for zero-config connectivity.
|
||||
|
||||
## 🚀 Overview
|
||||
MeshVPN allows you to create a secure, peer-to-peer encrypted network across Windows, macOS, and Linux without requiring manual port forwarding.
|
||||
|
||||
### Key Features
|
||||
- **All-in-One Coordinator**: Integrated STUN, Coordination, and WebUI.
|
||||
- **Zero-Config Onboarding**: Join a network using a single shared "Network Key".
|
||||
- **Extreme Performance**: Rust-based data plane with memory footprint < 256MB.
|
||||
- **NAT Traversal**: Advanced UDP hole punching and blind relay (DERP) support.
|
||||
- **Professional UI**: Enterprise-grade glassmorphism dashboard for server monitoring.
|
||||
|
||||
## 📂 Project Structure
|
||||
- `/server`: Go-based Coordinator, STUN, and Web Dashboard.
|
||||
- `/client`: Rust-based cross-platform client agent.
|
||||
- `install_meshvpn.sh`: Automated one-click VPS deployment script.
|
||||
- `/docs`: Technical specifications and deployment guides.
|
||||
|
||||
## 🛠 Installation
|
||||
|
||||
### Server (VPS)
|
||||
Run the automated installer on your Ubuntu VPS:
|
||||
```bash
|
||||
chmod +x install_meshvpn.sh
|
||||
sudo ./install_meshvpn.sh
|
||||
```
|
||||
Then start the server:
|
||||
```bash
|
||||
cd ~/meshvpn/server && go run main.go
|
||||
```
|
||||
|
||||
### Client (Windows/Linux/macOS)
|
||||
1. Install the [Rust toolchain](https://rustup.rs/).
|
||||
2. Build the release binary:
|
||||
```bash
|
||||
cargo build --release
|
||||
```
|
||||
3. Run as Administrator/Root.
|
||||
|
||||
## 🛡 Security
|
||||
- **E2EE**: All traffic is encrypted via the Noise Protocol (WireGuard).
|
||||
- **Zero-Trust Coordination**: The server facilitates introductions but cannot decrypt user traffic.
|
||||
- **Identity**: Nodes are identified by a combination of a shared network key and unique public keys.
|
||||
|
||||
## 📄 License
|
||||
MIT License
|
||||
Reference in new issue
Block a user