
easywall v2.14.0
Interface web pour le pare-feu nftables sous Linux, écrite en Go. La commande apply s'annule automatiquement après 120 secondes, sauf si vous la confirmez — vous ne pouvez pas vous verrouiller hors du système. Installation via Debian et Docker.
easywall
Your firewall. Your rules. No surprises.
Démo en direct · Documentation · Journal des modifications
nftables via une interface web qui ne peut pas vous verrouiller dehors : chaque application s'annule d'elle-même à moins que vous ne la confirmiez.
L'idée
Modifier une règle ne change rien. L'appliquer change tout — pendant 120 secondes. Si les nouvelles règles coupent votre connexion, vous ne pouvez pas cliquer sur Confirmer, et c'est le fait de ne pas confirmer qui rétablit les anciennes règles.
Architecture
Deux processus. Celui exposé au réseau ne détient aucun privilège qui vaille la peine d'être volé.
Une réécriture complète de l'easywall original — Python, Flask, iptables via
subprocess — qui a été archivé en 2022 après une CVE. Les deux causes racines ont disparu :
les privilèges résident dans un processus différent, et le chemin d'application construit des structures Go
au lieu d'une ligne de commande. Comment ça fonctionne →
Installation
# Debian / Ubuntu — amd64 and arm64
ARCH=$(dpkg --print-architecture)
wget https://github.com/jp1337/easywall/releases/latest/download/easywall_$ARCH.deb
sudo dpkg -i easywall_$ARCH.deb && sudo apt-get install -f
# Docker
git clone https://github.com/jp1337/easywall.git && cd easywall && docker compose up -d
# From source — Go 1.27+, nftables
git clone https://github.com/jp1337/easywall.git && cd easywall
make build && sudo make install
sudo systemctl enable --now easywall-core easywall-web
Ouvrez ensuite https://localhost:12227. La première visite
configure le compte et prépare les premières règles.
Ce que vous obtenez
| Ports | TCP et UDP, simple ou plage, avec routage anti-force brute SSH par règle |
| Liste de blocage et liste d'autorisation | IPv4, IPv6 et CIDR, évaluées avant toute règle de port |
| Modules de protection | Douze, cinq activés par défaut — floods, scans, bogons, fragments, broadcast/multicast/anycast |
| Redirection de ports | Redirections NAT avec sélection du protocole |
| Règles personnalisées | nftables brut, vérifié syntaxiquement avant application |
| Export / import | L'ensemble des règles au format JSON |
| Journal d'audit | Ce qui a changé et quand, un objet JSON par ligne |
| Coexistence avec Docker | Possède table inet easywall, ne touche à rien d'autre |
| English, Deutsch, Français | Modifiable dans l'interface, y compris avant la connexion. Une langue peut être partielle : ce qui manque s'affiche en anglais, et l'écart est signalé plutôt que masqué |
| Clair et sombre | Suit le système d'exploitation, avec un basculement manuel ; les deux sont vérifiés en contraste |