77 lines
3.1 KiB
Markdown
77 lines
3.1 KiB
Markdown
# VPN Gateway Documentation
|
|
|
|
## Overview
|
|
|
|
This documentation covers the VPN Gateway multi-provider system with permanent killswitch protection.
|
|
|
|
## Contents
|
|
|
|
- [Quick Start Guide](QUICKSTART.md) - Get up and running in minutes
|
|
- [Provider Configuration](PROVIDERS.md) - Detailed provider setup
|
|
- [Security Documentation](SECURITY.md) - Security features and best practices
|
|
- [API Reference](API.md) - WebUI API endpoints
|
|
- [Troubleshooting](TROUBLESHOOTING.md) - Common issues and solutions
|
|
- [FAQ](FAQ.md) - Frequently asked questions
|
|
|
|
## Architecture
|
|
|
|
```
|
|
┌─────────────────────────────────────┐
|
|
│ Client Devices │
|
|
└────────────┬────────────────────────┘
|
|
│
|
|
▼
|
|
┌─────────────────────────────────────┐
|
|
│ VPN Gateway Container │
|
|
│ ┌─────────────────────────────┐ │
|
|
│ │ WebUI (Port 80/5000) │ │
|
|
│ └──────────┬──────────────────┘ │
|
|
│ │ │
|
|
│ ┌──────────▼──────────────────┐ │
|
|
│ │ Flask Backend (Python) │ │
|
|
│ └──────────┬──────────────────┘ │
|
|
│ │ │
|
|
│ ┌──────────▼──────────────────┐ │
|
|
│ │ WireGuard Interface (wg0) │ │
|
|
│ └──────────┬──────────────────┘ │
|
|
│ │ │
|
|
│ ┌──────────▼──────────────────┐ │
|
|
│ │ Killswitch (iptables) │ │
|
|
│ └──────────┬──────────────────┘ │
|
|
└─────────────┼───────────────────────┘
|
|
│
|
|
▼
|
|
┌──────────────────┐
|
|
│ VPN Provider │
|
|
│ • Mullvad │
|
|
│ • Custom Server │
|
|
│ • Imported Config│
|
|
└──────────────────┘
|
|
```
|
|
|
|
## Key Components
|
|
|
|
### 1. Killswitch
|
|
- Permanent firewall rules
|
|
- Blocks all non-VPN traffic
|
|
- Cannot be disabled via UI
|
|
|
|
### 2. WebUI
|
|
- Modern responsive interface
|
|
- Real-time status monitoring
|
|
- Multi-provider support
|
|
|
|
### 3. Backend
|
|
- Flask-based API
|
|
- Provider management
|
|
- Connection handling
|
|
|
|
### 4. Security Monitor
|
|
- Continuous monitoring
|
|
- Leak detection
|
|
- Auto-recovery
|
|
|
|
## Support
|
|
|
|
- GitHub Issues: https://github.com/yourusername/vpn-gateway/issues
|
|
- Documentation: https://github.com/yourusername/vpn-gateway/wiki
|