FireDog
A three-tier firewall system. The master is a Django + React web server where you author rules and monitor traffic; target tools enforce a default-DROP iptables policy on each managed Linux host, installed via SSH push from the master UI or a curl one-liner; dog-agent pairs each target with the master and streams heartbeat, statistics, and threats back over WebSocket.
Three tiers, one perimeter
Master (web server)
Django + React application. Hosts the policy editor, the live traffic dashboard, and the API that target tools and agents connect to.
Target firewall tools
Installed on each managed host under /opt/sentinelsuite/firedog. Default-DROP iptables policy with SYN-flood, port-scan, and SSH brute-force protections, plus a CLI rule manager. Deployed via SSH push from the master UI or the one-liner installer.
Traffic capture & threat scoring
Blocked traffic is logged to PCAP via ulogd2 and analysed by the traffic analyzer, which assigns threat scores. Statistics and threats stream to the master dashboard in real time.
Dog-agent link
The shared suite agent (dog-agent) authenticates each target to the master with a 2-phase pairing, pushes heartbeat, stats, and threats over WebSocket, and applies rule commands sent from the master.
Requirements — Master
- OS
- Linux · Debian 12+ · Ubuntu 22.04+
- Runtime
- Python 3.11–3.13 · Node 20
- Services
- PostgreSQL · Redis · nginx
- Memory
- 2 GB RAM · 4 GB recommended
- Web port
- TCP :80 / :443 · via nginx
Requirements — Target (firewall tools)
- OS
- Linux · Debian / Ubuntu
- Firewall
- iptables + ulogd2 · default-DROP policy
- Install
- curl one-liner or SSH push from master UI
- Installs to
- /opt/sentinelsuite/firedog
- Pairing
- dog-agent · .deb package, WebSocket
Master first, then pair your gateways
FireDog is distributed as source. Clone the repo and follow INSTALL.md — systemd units are in deploy/.
Clone the repo and follow INSTALL.md. It covers PostgreSQL, Redis, virtualenv, Daphne, Celery, and nginx. Systemd units are ready in deploy/.
# clone and follow INSTALL.md git clone https://github.com/Dognet-Technologies/firedog.git cd firedog # prerequisites: Python 3.11–3.13, Node 20, PostgreSQL, Redis, nginx cat INSTALL.md
Run this on each target to install the firewall tools (iptables policy, PCAP logging, traffic analyzer) under /opt/sentinelsuite/firedog. Or push the install from the master UI over SSH.
# install firewall tools + activate the firewall (default-DROP) on first run curl -fsSL https://raw.githubusercontent.com/Dognet-Technologies/firedog/stabile/firedog-package/get-firedog.sh | sudo bash # tools only — skip activation, pair from master UI later curl -fsSL https://raw.githubusercontent.com/Dognet-Technologies/firedog/stabile/firedog-package/get-firedog.sh | sudo bash -s -- --skip-init
Heads-up: activating the firewall applies a default-DROP policy on INPUT/OUTPUT — make sure you have console access, or use --skip-init and activate later. A specific branch or tag can be pinned with FIREDOG_REF=<ref>. Full instructions and pairing: INSTALL-TARGET.md.
Install dog-agent on every target (download the .deb), then add a [[targets]] block pointing at the FireDog master. See the Agent_Dog page for the full reference.
# install the suite agent (shared across all Dognet products) sudo dpkg -i dog-agent_1.0.0-1_amd64.deb # add a [[targets]] block for the FireDog master in agent.conf sudo nano /etc/dog-agent/agent.conf sudo systemctl enable --now dog-agent