FortiSim: Fortinet Firewall Simulator
FortiSim is a browser-based Fortinet FortiGate firewall simulator. It provides both a CLI terminal that emulates FortiOS command syntax and a GUI that mirrors the FortiGate web management interface. Engineers can practice firewall configuration, build policy rulesets, and analyze rule interactions without needing access to physical hardware or vendor trial licenses.
The simulator includes a policy rule engine that evaluates firewall rules top-down, detects shadowed rules, and visualizes the effective security posture for any given traffic flow. Both interfaces share the same underlying configuration state, so changes in the CLI are immediately visible in the GUI and vice versa.
This project is open source and available on GitHub
Frontend application simulating FortiGate CLI and GUI interfaces:
Component-based architecture modeling FortiGate CLI and GUI interfaces with type-safe policy rule management
Recreating the FortiGate web interface aesthetic with responsive layouts and dark mode support
Strict typing for firewall policy objects, address groups, service definitions, and rule evaluation logic
Fast development with hot module replacement for rapid iteration on the CLI parser and GUI components
- Command tokenization
- Context-aware completion
- Syntax validation
- Help text generation
- Firewall policy logic
- Rule ordering
- Shadow detection
- Address/service objects
- Terminal emulator component
- Dual-view state sync
- Policy table rendering
- Real-time filtering
- Discriminated unions for rules
- Type-safe CLI commands
- Generic policy types
- Strict null checks
- ✓ FortiOS CLI emulation with tab completion
- ✓ GUI mirroring FortiGate web interface
- ✓ Policy rule engine with top-down evaluation
- ✓ Shadow rule detection and analysis
- ✓ Dual-interface state synchronization
- ✓ Address and service object management