WG-Box is Wireguard GUI with network namespace isolation, audio support, process management, and a bunch of other features to allow you to launch programs in their own VPN box.. Started out as a side project to use and slowly built in new features for day to day use.
Features:
- CLI & GUI
- Wireguard integration - Creates isolated temporary network namespaces for VPN connections
- Command execution - Run GUI programs, scripts inside network namespaces.
- Command Management - Supports predefined and customizable commands.
- Audio support - Supports PulseAudio and PipeWire on a per-VPN session.
- Port Forwarding - Automatic Port Forwarding with natpmpc (Only tested with ProtonVPN) and automatic background renewel.
- IP Leak Protection - Automatic kill switch preventing any traffic leaking from the VPN utilizing IPTables. (Still improving but functionality works)
- Drag and drop VPN configs
Todo (No promises..):
- Support for downloading and importing wireguard configs from commercial VPN providers. (ProtonVPN, NordVPN, Mullvad, etc)
- OpenVPN Support.
- NFTables
- Better UI - especially listing available vpns by country, supported features etc.
- Clean code..
Please feel free to suggest improvements or submit pull requests! :)
WG-Box has been tested on ARCH Linux, KDE Wayland but with untested, attempted support for X11 and other distros.
Clone the repo and run the installer sudo ./install.sh
Easy uninstall with sudo ./install.sh -u
Disclaimer: code was never meant to be clean, it was a side project for myself but has slowly built out.