Skip to content

Latest commit

 

History

History
160 lines (118 loc) · 3.35 KB

roadmap.md

File metadata and controls

160 lines (118 loc) · 3.35 KB

GhostGate Roadmap

This roadmap keeps the project buildable in small pieces. Each phase ends with something testable.

Current Status

The core VMware lab is complete:

  • router VM
  • client VM
  • NAT
  • dnsmasq
  • DNS logging
  • ad/tracker blocking
  • firewall baseline
  • traffic monitoring
  • Tor mode
  • lockdown mode
  • dashboard
  • CLI

WireGuard is documented and scripted for both a local third-VM server and a VPS server. Split tunneling is documented as an advanced extension and should only be enabled after route-specific tests are added.

Phase 0: Repository Setup

Goal: make the project readable before writing technical scripts.

  • Create the repository
  • Add the README
  • Add the folder structure
  • Add architecture notes
  • Add roadmap
  • Add learning notes
  • Add ethical use policy
  • Add example configs without secrets

Phase 1: Virtual Router Foundation

Goal:

Client VM -> Router VM -> Internet

Tasks:

  • Create the Router VM
  • Create the Client VM
  • Configure VMware LAN Segment GhostGate-Lab
  • Assign static IPs
  • Enable IP forwarding on the Router VM
  • Add NAT rules
  • Test client-to-router ping
  • Test client-to-internet ping by IP
  • Test domain resolution

Phase 2: DNS and Filtering

Goal:

Client VM -> Router VM DNS -> Internet

Tasks:

  • Install dnsmasq
  • Configure the Router VM as DNS resolver
  • Enable DNS query logging
  • Add a blocklist
  • Block tracker test domains
  • Prevent direct DNS leaks

Phase 3: Monitoring and Firewall

Goal: make traffic visible and controllable.

Tasks:

  • Install tcpdump
  • Install iftop
  • Install vnstat
  • Add a monitoring script
  • Add basic firewall rules
  • Save firewall rules persistently
  • Add lockdown mode

Phase 4: Tor Gateway Mode

Goal:

Client VM -> Router VM -> Tor -> Internet

Tasks:

  • Install Tor
  • Configure Tor transparent proxy ports
  • Redirect client TCP traffic through Tor
  • Redirect DNS through Tor DNSPort
  • Add tor-on and tor-off scripts
  • Test with Tor Project API

Phase 5: WireGuard VPN Mode

Goal:

Client VM -> Router VM -> WireGuard VPN -> Internet

Tasks:

  • Learn WireGuard basics
  • Prepare local WireGuard server VM guide
  • Prepare VPS WireGuard guide
  • Add Router VM WireGuard client template
  • Route client traffic through wg0
  • Add vpn-on and vpn-off scripts
  • Add a public IP and handshake test path

Phase 6: Dashboard and CLI

Goal: make GhostGate easier to inspect and operate.

Tasks:

  • Build a Flask dashboard
  • Show DNS, firewall, traffic, and service state
  • Show Tor and WireGuard status
  • Add ghostgate CLI commands
  • Add baseline service

Phase 7: Split Tunneling and Polish

Goal: turn the lab into a polished open-source project.

Tasks:

  • Add split tunneling policy configuration
  • Add direct/VPN/Tor/block categories
  • Add leak test command
  • Improve troubleshooting docs
  • Add final demo script
  • Clean up README and docs
  • Add screenshots
  • Add demo video or GIF

Optional Future Upgrades

  • dashboard mode switching with authentication
  • automatic blocklist updates
  • DNS-over-TLS or DNS-over-HTTPS upstream
  • fully automated split tunneling
  • traffic charts
  • Raspberry Pi hardware deployment