Releases: defenx-tech/aegis-vpn
Release list
v3.1.1-beta
v3.1.1-beta — What's New
✨ Features
- Health check command — \�egis-vpn health\ shows service status, peer details, handshake times, uptime, public IP with color-coded output
- Telegram alerts — optional notifications on client add/remove via /etc/aegis-vpn/aegis.conf\
- --interface\ and --endpoint\ flags — better multi-interface host support, persistent endpoint for client configs
🐛 Bug Fixes
- CRLF in configs — generated WireGuard configs stripped of CRLF to prevent parsing errors
- DNS menu leak — interactive menu output no longer contaminates config variables
- Key drift — removed \SaveConfig=true, forced key sync after start and before client add
- Interface parsing — switched to \ip -o addr show\ for reliable parsing across distros
- ShellCheck warnings — fixed \grep -c\ double output, dead || echo 0, \cd\ error handling
- Key preservation — server keys preserved on setup re-run, generated only on first run
📚 Documentation
- Added CONTRIBUTING.md with dev workflow, testing guidance, and good first issues
- Added .github/topics.txt with repository topic tags
⚠️ Note
Beta release. All changes validated on Ubuntu 24.04 LTS. No new runtime dependencies.
Aegis-VPN v3.0.0
What's New
This is a major version release — the largest update since the project started.
Bug Fixes
add_client.sh— Fixed undefined$CLIENT_IPvariable that silently wrote broken peer entriesadd_client.sh— Fixed IP collision bug when re-adding clients after deletion (replacedls | grep -cwith lock file + counter)manage_clients.sh— Fixed destructivesedregex that could corruptwg0.confon client removal (rewritten withawk)setup.sh— Fixed typo/etc/systl.conf→/etc/sysctl.conf(IP forwarding was not persisting across reboots)
New Features
Server-Side Key Rotation (aegis-vpn rotate-server)
Resolves #5. Rotates the WireGuard server private key with minimal client disruption:
- Swaps the kernel-level key in-place via
wg set— interface stays up, no firewall flush - Clients lose ~1 handshake cycle (~5 s), then reconnect automatically
- All client configs updated atomically before any reconnection attempt
- Full audit record (old key, new key, timestamp, client count)
--qrflag re-displays QR codes for all clients after rotation
Client Key Rotation (aegis-vpn rotate <client>)
Regenerates a single client's keys without changing their IP, DNS, or tunnel mode. New QR code displayed automatically.
Status Dashboard (aegis-vpn status)
Shows WireGuard service state, uptime, and per-peer bandwidth (sent/received) via wg show transfer.
Backup & Restore (aegis-vpn backup / aegis-vpn restore <file>)
Creates a timestamped tarball of /etc/wireguard/ and clients/. Restore stops WireGuard, extracts, and restarts cleanly.
Config Validation (aegis-vpn check)
Validates wg0.conf integrity: checks key formats, detects orphaned peers (in server config but no client file), and detects orphaned client files (no matching server peer).
DNS Selection
When adding a client, choose your DNS resolver: Cloudflare, Google, Quad9, or custom.
Split Tunneling
When adding a client, choose between full tunnel (0.0.0.0/0) or VPN-only subnet routing.
Log Rotation
Logs auto-rotate at 10 MB, keeping 3 rotations.
Hardening
- New
scripts/lib.shshared library — eliminates duplicated constants across all scripts - Auto-detect network interface via
ip route(removes hardcodedenX0) set -euo pipefailacross all scripts- Input validation on client names (
[a-zA-Z0-9_-], max 32 chars) - Atomic lock file prevents IP allocation race conditions
CLI / UX
- 13-option interactive menu with live peer count in header
- Color output: green = online, red = offline, yellow = warning
- Live dashboard reads
wg showdata (replaces log file parsing) - Table-format
listwith Name / IPv4 / IPv6 / Status / Last Handshake - Spinners for long operations
aegis-vpn --help,aegis-vpn version
New Files
| File | Description |
|---|---|
scripts/lib.sh |
Shared constants, colors, utility functions |
scripts/rotate_server.sh |
Server key rotation |
scripts/rotate_client.sh |
Client key rotation |
scripts/backup_restore.sh |
Backup and restore |
scripts/validate.sh |
Config integrity validation |
Upgrade from v1.x
No migration needed — existing clients/*.conf and /etc/wireguard/wg0.conf remain compatible.
Run aegis-vpn check after upgrading to verify config integrity.
🛡️ Aegis-VPN v1.2 – Release Notes
Release Date: 25 Oct 2025
v1.2 makes Aegis-VPN more interactive, secure, and easier to manage. Here’s what’s new:
- Interactive menu system –
bin/aegis-vpngives you a terminal-based menu to start/stop the server, add/remove/list clients, and monitor connections. - IPv6 dual-stack support – now works seamlessly with both IPv4 and IPv6 addresses.
- Unified client management –
manage_client.shhandles adding, removing, and listing clients with auto-generated QR codes for mobile setup. - Hands-free install –
setup.sh --autoallows fully unattended server installation. - Polished terminal banner & smarter error handling – smoother startup, automatic fixes for missing dependencies, routing issues, and QR code generation errors.
Enjoy the upgrade, and happy VPN-ing! 🔐
🛡️ Aegis-VPN v1.1 – Release Notes
Release Date: 29 Sep 2025
v1.1 makes Aegis-VPN smoother, faster, and easier to use. Here’s what’s new:
- One script to rule them all –
manage_client.shlets you add, remove, or list clients without juggling multiple scripts. - Mobile setup made easy – QR codes are generated automatically when you create a client.
- Hands-free install – run
setup.sh --autofor a fully unattended server setup. - Dual-stack support – IPv4 + IPv6 now works out of the box.
- Polished terminal banner & smarter error handling – everything feels more professional and less painful to set up.
🛡️ Aegis-VPN v1.0 — Initial Release
Release Date: 16 September 2025
Author: Rabindra
Overview:
AEGIS VPN v1.0 is the first official release of my personal WireGuard VPN. It provides secure, fast, and automated remote access with easy client setup.
Key Features:
- WireGuard VPN (fast & secure)
- Automated server setup (
setup.sh) - Client configuration generator (
add-client.sh) - Basic firewall & server hardening
- Documentation & diagrams included
Limitations:
- IPv6 not supported yet
- Separate scripts for client management
- No unattended install
Quick Start:
sudo ./setup.sh
sudo ./add-client.sh <client-name>
sudo wg show
