Warning: This project is under active development and is not secure at the moment. Do not attempt to use this software in any production capacity until this notice is removed.
You have been warned.
FireGuard is a host-it-yourself VPN and firewall configurable through a Web UI. It aims to be a simple way to setup a VPN and optional firewall for all your devices.
Use FireGuard to:
- Set up your own VPN
- Block, inspect, or capture outgoing traffic from your phone / tablet / computer to any IP(s)
FireGuard is written in the Elixir programming language and composed as an Umbrella project consisting of three Elixir packages:
- apps/fg_http: The Web Application
- apps/fg_wall: Firewall Management Process
- apps/fg_vpn: WireGuard™ Management Process
For now, FireGuard assumes these apps are all running on the same host.
Currently, the only supported method of running FireGuard is locally. MacOS and Linux users shouldn't have any problems. Windows will Probably Work™.
You'll need recent versions of the following tools installed:
- ansible
- vagrant
- VirtualBox
With the above installed, you should be able to navigate into the project root and just run:
$ vagrant up
This will download the VM base box, provision it with dependencies, bootstrap the FireGuard DB, launch the FireGuard Services, and print instructions for connecting to the Web UI.
See CONTRIBUTING.md.