ZFW Security Expansion Proposal
By-Roket Community Contribution for ZimaOS
ENGLISH
Introduction
Hello ZimaOS community,
I’m By-Roket, a Systems Administrator / IT Infrastructure Manager, with a strong interest in self-hosting, networking, virtualization, Docker and infrastructure security.
I recently adopted ZimaOS and quickly became interested in its philosophy:
Making self-hosting and server administration accessible without requiring every user to become a Linux or networking specialist.
While using and testing ZimaOS, I also started looking closely at areas where security, visibility and administration could be improved.
My objective is not to criticize what already exists.
It is rather to:
-
understand what is missing;
-
build on good existing foundations;
-
improve security where useful;
-
keep administration simple;
-
contribute practical solutions to the ZimaOS community.
This is what brought me to ZFW.
Original ZFW Project
First of all, full credit goes to the original project and its maintainer:
Holger Kuehn / Lintux
Upstream repository
https://github.com/chicohaager/zfw
ZFW already provides an excellent security foundation for ZimaOS.
It adds one particularly important component that ZimaOS does not currently provide by default:
A real host firewall integrated directly into the ZimaOS dashboard.
Existing ZFW strengths already include
-
Host firewall integration; -
Docker published-port filtering through DOCKER-USER; -
IPv4 and IPv6 support; -
Safe-Apply protection; -
Exposure visibility; -
Firewall events and connection information; -
Docker/container-aware firewall rules; -
GeoIP functionality; -
Inbound rules; -
Outbound rules; -
Connection rate limiting; -
Scheduled firewall rules; -
ZimaOS session authentication for its control API.
ZFW therefore already provides a very strong base.
My intention is not to replace ZFW and not to create a closed competing product.
My preferred direction is:
Collaborate with the existing project, propose improvements upstream whenever possible, and keep development aligned with the ZimaOS community.
ZFW Architecture & Security Model
One part of the current architecture that should remain is the separation between the firewall engine and its management interface.
The ZFW control daemon listens only on:
127.0.0.1
The ZimaOS gateway then provides access to the module.
This is the correct security model.
The control daemon does not need to listen on:
0.0.0.0
even when services hosted on ZimaOS are accessible through:
-
LAN;
-
VPN;
-
NAT;
-
UPnP;
-
IPv6;
-
reverse proxy;
-
Zima Net;
-
other tunnels.
The daemon is the control plane.
The firewall itself protects traffic on the network interfaces.
Conceptually
ZimaOS UI
│
â–Ľ
ZimaOS Gateway
│
â–Ľ
ZFW Control Daemon
127.0.0.1 only
│
â–Ľ
Firewall Engine
│
├── eth0
├── eth1
├── Docker
├── IPv4
├── IPv6
├── VPN
└── other interfaces
Keeping the control API local prevents it from becoming an additional exposed network service.
Vision — ZimaOS Host Security Center
The long-term idea would be to progressively evolve ZFW into a more complete:
ZimaOS Host Security Center
without turning ZimaOS into a complicated enterprise firewall.
A normal user should easily be able to answer four questions:
What is exposed?
Who can access it?
Why is it allowed?
What has been blocked?
Advanced configuration should remain available, but the default interface should remain understandable.
Network Interface Management
ZFW could automatically detect available interfaces such as:
-
Ethernet;
-
Wi-Fi;
-
Docker bridges;
-
WireGuard;
-
Tailscale;
-
Zima Net;
-
other VPN interfaces;
-
tunnel interfaces.
Instead of treating every interface identically, the administrator could classify them.
Example
eth0 → Protected LAN
eth1 → Management network
wg0 → Trusted VPN
docker0 → Docker
tun0 → Zima Net
Possible states:
-
Protected; -
Trusted; -
Excluded; -
Management only.
This could help users with multiple LANs, VLANs, VPNs or dedicated management networks.
Configurable Auto-Ban / Brute-Force Protection
ZFW already contains threat-detection foundations.
The idea would be to extend them into a complete Auto-Ban system configurable directly from the UI.
Example
10 blocked attempts
within 60 seconds
→ Ban the source IP
The administrator could configure:
-
number of attempts;
-
detection window;
-
monitored ports;
-
monitored services;
-
IPv4 / IPv6;
-
enabled / disabled state.
Default behaviour proposed
Instead of automatically unbanning an attacker after a predefined delay:
Bans could remain persistent until administrator action.
Banned IP Management
A dedicated page could display all blocked sources.
Example
IP Address
IPv4 / IPv6
Public / Private
Country
Reason
Target Port
Target Service
First Detection
Last Detection
Number of Attempts
Status
Available actions
-
Unblock; -
Keep blocked; -
Add to whitelist; -
Add administrator note.
Example:
185.xxx.xxx.xxx
Public IPv4
Country: XX
Reason: SSH brute-force
Port: 22
Attempts: 46
Status: BLOCKED
Global Whitelist & Blacklist
Whitelist
Addresses or networks that automatic protections should never block.
Examples:
192.168.70.0/24
10.10.10.0/24
Trusted VPN subnet
Administrator workstation
Management VLAN
Blacklist
Manual permanent blocking of:
-
IPv4;
-
IPv6;
-
CIDR networks.
Domain blocking could potentially be investigated later, but actual firewall enforcement should preferably remain based on resolved IP addresses and networks.
Local Anti-Flood / Anti-DDoS Protection
Another protection layer could defend the ZimaOS host against abusive traffic that actually reaches it.
Possible protections:
-
SYN flood;
-
excessive new connections;
-
excessive simultaneous connections per source;
-
UDP flood;
-
ICMP flood;
-
abnormal connection bursts;
-
service-specific connection abuse.
Possible settings
Maximum new connections / second
Maximum simultaneous connections / IP
Detection window
Target service
Action
Possible actions
Rate Limit
Drop
Auto-Ban
Important limitation
This feature should never be advertised as protection against every type of DDoS attack.
If someone sends:
5 Gbit/s
toward a connection limited to:
1 Gbit/s
the Internet connection may already be saturated before packets reach ZimaOS.
That type of attack requires upstream protection from:
-
ISP;
-
router/firewall;
-
hosting provider;
-
CDN;
-
dedicated anti-DDoS infrastructure.
The goal here would instead be:
Protect the ZimaOS host and its services against abusive traffic that reaches the machine.
Improved GeoIP Protection
ZFW already provides GeoIP foundations.
The objective would therefore be to improve their accessibility and presentation.
Inbound GeoIP
Example:
ALLOW all countries
EXCEPT:
RU
CN
KP
...
or:
ALLOW ONLY:
FR
BE
CH
DE
Outbound GeoIP
Example:
Application:
IoT Service
Block outbound connections to:
Selected countries
This could be useful for:
-
IoT-related applications;
-
externally downloaded applications;
-
applications expected to communicate only with specific regions;
-
sensitive services.
Improved Exposure Dashboard
One feature I would particularly like to explore is an improved Exposure dashboard.
Example
Service
Port
Protocol
Interface
Host / Docker
LAN Access
VPN Access
Potential WAN Exposure
Firewall Protection
Example result
Jellyfin
Port: 8096
Docker
LAN: âś“
VPN: âś“
WAN: Possible
Protection: Active
Another example:
SSH
Port: 22
Host Service
LAN: âś“
VPN: âś“
WAN: âś—
Protection: Active
And:
Admin Panel
Port: 8080
Docker
LAN: âś“
WAN: Possible
âš Warning
The objective is simple:
Users should not need to inspect Docker mappings, sockets or iptables manually just to understand their exposure.

NAT / UPnP / WAN Exposure Detection
Where technically possible, ZFW could also warn about possible external exposure caused by:
-
UPnP;
-
NAT-PMP;
-
router port forwarding;
-
public IPv6;
-
reverse tunnels;
-
remote access services.
The wording should remain conservative.
For example:
âš Potential WAN exposure detected
rather than:
This service is definitely accessible from the Internet
unless ZFW can actually verify that.
Avoiding false security information is important.

Application-Aware Firewall Rules
Firewall rules should increasingly follow applications, not just static port numbers.
Instead of:
TCP 8096
TCP 8920
UDP xxxx
the administrator could define:
Jellyfin
→ LAN
→ Trusted VPN
The firewall policy should ideally continue to follow the application when:
-
the container is recreated;
-
its internal IP changes;
-
published ports change;
-
the application is updated.
This would make firewall management much easier for normal ZimaOS users.

User → Application Access Control
Another feature worth investigating would be access control based on ZimaOS users.
Concept
Administrator
→ All applications
Family User
→ Jellyfin
→ Files
Home Automation User
→ Home Assistant only
However, this feature must remain technically honest.
A network firewall normally sees:
IP Address
Connection
Protocol
Port
It does not automatically know which human is using the browser.
Reliable per-user control therefore requires a trusted identity layer such as:
-
authenticated gateway;
-
reverse proxy authentication;
-
usable ZimaOS identity information;
-
another secure authentication mechanism.
If a secure association between identity and network connection cannot be established:
ZFW should not pretend that it can provide reliable user-based firewall control.
This feature should therefore begin as a research area, not as a promised capability.

Safe-Apply Improvements
Safe-Apply is already one of the most important ZFW features.
That philosophy should remain central.
Possible improvements:
-
clearer rollback countdown; -
visible current Safe-Apply state; -
protected management IP; -
protected management network; -
optional rescue network; -
automatic configuration snapshot before Apply; -
easier restoration of the last known-good configuration.
A firewall should never make recovery harder than the problem it is trying to solve.

Configuration Backup & History
Possible configuration-management features:
-
configuration snapshots;
-
last known-good configuration;
-
manual backup;
-
restore;
-
rule history;
-
change history.
Example
2026-09-03 14:32
Rule:
Jellyfin LAN
Previous source:
192.168.1.0/24
New source:
192.168.70.0/24
This would also make troubleshooting much easier.

Dry-Run / Simulation Mode
Before applying a firewall configuration, ZFW could simulate the expected result.
Example
SSH
192.168.70.20
→ ALLOWED
Jellyfin
192.168.70.25
→ ALLOWED
Jellyfin
10.20.30.5
→ BLOCKED
SMB
Guest VLAN
→ BLOCKED
This could significantly reduce configuration errors.

IPv4 / IPv6 Parity
IPv6 should never become the forgotten side door.
Every important security function should clearly indicate whether it protects:
IPv4 âś“
IPv6 âś“
or clearly report a limitation:
IPv4 âś“
IPv6 âś—
The objective is to avoid improving IPv4 security while silently leaving a different path open through IPv6.

Privacy, Transparency & Trust
Trust is particularly important for a security module.
The principles I would like to preserve are:
Open Source
The source code should remain publicly inspectable.
No Added Telemetry
No usage analytics added by this project.
Local-First
Firewall rules, security events and banned addresses remain on the user’s ZimaOS system.
No Mandatory Cloud
Core firewall functionality should work locally.
No Hidden Remote Control
No external service should be able to silently change firewall rules.
No External Collection of Firewall Events
Security information should remain local unless the administrator explicitly configures an external integration.

Licensing & Upstream Coordination
Before publishing any modified ZFW build, I want to clarify the licensing situation directly with the original maintainer.
The current ZFW project metadata identifies the project as using the:
ISC License
However, I could not find a dedicated LICENSE file at the repository root.
Before publishing any derived beta build, I would therefore like to obtain explicit confirmation regarding:
-
modification rights;
-
redistribution;
-
attribution requirements;
-
use of the ZFW name;
-
preferred contribution workflow.
Until this is clarified, this project remains:
An architecture and community contribution proposal — not a redistributed ZFW release.
Technical research, isolated testing and proof-of-concept development can continue.
However, I do not intend to publicly distribute a modified ZFW beta until the licensing and upstream position are clearly confirmed.
My preferred outcome remains:
Upstream collaboration whenever possible.

Development & Testing Strategy
Development should initially happen in isolated test environments rather than on a production ZimaOS server.
Planned environments may include:
-
Proxmox;
-
VMware;
-
ZimaOS virtual machines;
-
snapshots;
-
multiple virtual network interfaces;
-
Docker test applications;
-
IPv4;
-
IPv6;
-
VPN;
-
tunnel scenarios.
Failure scenarios should be deliberately tested.
Example
Bad firewall rule
→ Can Safe-Apply recover?
Docker restart
→ Are firewall protections restored?
ZimaOS reboot
→ Does ZFW return correctly?
Network interface changes
→ Can the administrator still recover?
IPv6 enabled
→ Are protections equivalent to IPv4?
The objective is not only to test whether a feature works.
It is also to test:
What happens when it fails?

Current Project Status
At this stage, this project is:
A design and architecture proposal
There is currently:
-
no public modified By-Roket ZFW release;
-
no public beta fork;
-
no replacement for the official ZFW project.
Before moving toward a distributable beta, I would like feedback from:
-
Holger / Lintux;
-
IceWhale;
-
existing ZFW users;
-
ZimaOS community members;
-
network/security users.

Feedback Requested
I would especially appreciate feedback on the following questions:
Architecture
Which features belong directly inside ZFW?
Which features should potentially remain separate modules?
Security
Are there important attack scenarios missing from this proposal?
Networking
Which network configurations should be tested?
Usability
Which functions would actually help normal ZimaOS users?
Compatibility
Which ZimaOS services or networking components should never be accidentally filtered?
Final Goal
The objective can be summarized simply:
Build on the excellent foundation already provided by ZFW, fill useful security gaps, keep everything transparent, and make ZimaOS safer without making it harder to use.
If Holger is interested in collaborating or accepting some of these improvements directly upstream, that would be my preferred direction.
— By-Roket
FRANÇAIS
Proposition d’évolution de ZFW Security
Contribution communautaire By-Roket pour ZimaOS
Introduction
Bonjour à toute la communauté ZimaOS,
Je suis By-Roket, Responsable / Administrateur Systèmes et infrastructures IT, avec un intérêt particulier pour le self-hosting, les réseaux, la virtualisation, Docker et la sécurité des infrastructures.
J’ai récemment adopté ZimaOS et je me suis rapidement intéressé à sa philosophie :
Rendre le self-hosting et l’administration d’un serveur accessibles sans obliger chaque utilisateur à devenir spécialiste Linux ou réseau.
En utilisant et en testant ZimaOS, j’ai également commencé à examiner les domaines dans lesquels la sécurité, la visibilité et l’administration pourraient encore évoluer.
Mon objectif n’est pas de critiquer ce qui existe déjà .
Il est plutĂ´t de :
-
comprendre les fonctions manquantes ;
-
s’appuyer sur les bonnes bases existantes ;
-
améliorer la sécurité lorsque cela est utile ;
-
conserver une administration simple ;
-
proposer des solutions utiles à la communauté ZimaOS.
C’est ce qui m’a amené à m’intéresser à ZFW.
Projet ZFW original
Tout d’abord, le mérite du projet original revient à son développeur et mainteneur :
Holger Kuehn / Lintux
Dépôt upstream
https://github.com/chicohaager/zfw
ZFW constitue déjà une excellente base de sécurité pour ZimaOS.
Il apporte notamment un élément particulièrement important qui n’est actuellement pas présent nativement dans ZimaOS :
Un véritable pare-feu hôte intégré directement au tableau de bord ZimaOS.
Parmi les fonctions et points forts actuels de ZFW
-
Pare-feu hôte intégré ; -
filtrage des ports Docker publiés via DOCKER-USER; -
prise en charge IPv4 et IPv6 ; -
Safe-Apply ; -
visibilité des services exposés ; -
événements firewall et informations sur les connexions ; -
règles prenant en compte les conteneurs Docker ; -
fonctions GeoIP ; -
règles entrantes ; -
règles sortantes ; -
limitation du nombre de connexions ; -
règles horaires ; -
authentification de l’API avec les sessions ZimaOS.
ZFW fournit donc déjà un socle particulièrement solide.
Mon objectif n’est ni de remplacer ZFW, ni de créer un produit fermé concurrent.
Ma préférence serait :
Collaborer avec le projet existant, proposer les améliorations upstream lorsque cela est possible et rester dans l’esprit de la communauté ZimaOS.
Architecture et modèle de sécurité ZFW
Une partie importante de l’architecture actuelle doit selon moi être conservée : la séparation entre le moteur firewall et son interface d’administration.
Le daemon de contrôle ZFW écoute uniquement sur :
127.0.0.1
La passerelle ZimaOS permet ensuite à l’interface d’accéder au module.
C’est le bon modèle de sécurité.
Le daemon n’a pas besoin d’écouter sur :
0.0.0.0
mĂŞme lorsque certains services ZimaOS sont accessibles via :
-
LAN ;
-
VPN ;
-
NAT ;
-
UPnP ;
-
IPv6 ;
-
reverse proxy ;
-
Zima Net ;
-
autres tunnels.
Le daemon représente le plan de contrôle.
Le moteur firewall protège quant à lui le trafic des interfaces réseau.
Schéma simplifié
Interface ZimaOS
│
â–Ľ
Passerelle ZimaOS
│
â–Ľ
Daemon ZFW
127.0.0.1 uniquement
│
â–Ľ
Moteur Firewall
│
├── eth0
├── eth1
├── Docker
├── IPv4
├── IPv6
├── VPN
└── autres interfaces
Vision — Centre de sécurité ZimaOS
L’objectif à plus long terme serait de faire progressivement évoluer ZFW vers un véritable :
Centre de sécurité hôte pour ZimaOS
sans transformer ZimaOS en pare-feu d’entreprise compliqué.
Un utilisateur classique devrait facilement pouvoir répondre à quatre questions :
Qu’est-ce qui est exposé ?
Qui peut y accéder ?
Pourquoi cet accès est-il autorisé ?
Qu’est-ce qui a été bloqué ?
Les réglages avancés resteraient accessibles lorsque nécessaire.
Gestion des interfaces réseau
ZFW pourrait automatiquement détecter :
-
Ethernet ;
-
Wi-Fi ;
-
bridges Docker ;
-
WireGuard ;
-
Tailscale ;
-
Zima Net ;
-
autres VPN ;
-
autres tunnels.
L’administrateur pourrait définir pour chaque interface :
-
Protégée ; -
Fiable ; -
Exclue ; -
Administration uniquement.
Exemple
eth0 → LAN protégé
eth1 → Réseau d’administration
wg0 → VPN fiable
docker0 → Docker
tun0 → Zima Net
Auto-Ban / Protection brute-force configurable
ZFW possède déjà des bases permettant de détecter certains comportements suspects.
L’idée serait d’étendre cette base en véritable système Auto-Ban configurable directement depuis l’interface.
Exemple
10 tentatives bloquées
en moins de 60 secondes
→ Bannissement de l’IP source
L’administrateur pourrait choisir :
-
nombre de tentatives ;
-
fenêtre de détection ;
-
ports concernés ;
-
services concernés ;
-
IPv4 / IPv6 ;
-
activation / désactivation.
Comportement proposé par défaut
Plutôt qu’un déblocage automatique après quelques heures :
Le bannissement pourrait rester permanent jusqu’à intervention de l’administrateur.
Gestion des IP bannies
Une page dédiée pourrait afficher :
Adresse IP
IPv4 / IPv6
Publique / Privée
Pays
Motif
Port ciblé
Service ciblé
Première détection
Dernière détection
Nombre de tentatives
État
Actions
-
Débloquer ; -
Laisser bloquée ; -
Ajouter Ă la liste blanche ; -
Ajouter une note.
Listes blanche et noire globales
Liste blanche
Adresses ou réseaux ne devant jamais être bloqués automatiquement.
Exemples :
Réseau d’administration
Poste administrateur
VPN de confiance
VLAN Management
Liste noire
Blocage manuel de :
-
IPv4 ;
-
IPv6 ;
-
réseaux CIDR.
La gestion de domaines pourrait éventuellement être étudiée plus tard, mais le moteur firewall devrait idéalement continuer à travailler sur de véritables IP et réseaux.
Protection locale anti-flood / anti-DDoS
Une autre couche pourrait protéger la machine contre le trafic abusif qui arrive réellement jusqu’à elle.
Exemples :
-
SYN flood ;
-
trop de nouvelles connexions ;
-
trop de connexions simultanées par IP ;
-
UDP flood ;
-
ICMP flood ;
-
rafales de connexions ;
-
abus ciblé contre un service.
Paramètres possibles
Connexions nouvelles maximum / seconde
Connexions simultanées maximum / IP
Fenêtre de détection
Service ciblé
Action
Actions possibles
Limiter
Bloquer
Auto-Ban
Limite importante
Cette fonction ne doit pas être présentée comme une solution miracle contre tous les DDoS.
Si une connexion Internet de :
1 Gbit/s
reçoit :
5 Gbit/s
de trafic malveillant, la connexion peut être saturée avant même que ZimaOS puisse intervenir.
La protection doit alors intervenir en amont :
-
opérateur ;
-
routeur/firewall ;
-
hébergeur ;
-
CDN ;
-
solution anti-DDoS.
L’objectif de ZFW serait plutôt :
Protéger la machine ZimaOS et ses services contre le trafic abusif qui atteint réellement le serveur.
GeoIP amélioré
ZFW possède déjà des fonctions GeoIP.
L’objectif serait donc d’améliorer leur présentation et leur facilité d’utilisation.
Entrant
Tout autoriser
SAUF :
Pays sélectionnés
ou :
Autoriser UNIQUEMENT :
FR
BE
CH
DE
Sortant
Exemple :
Application :
Service IoT
Bloquer les connexions
vers certains pays
Vue Exposition améliorée
Une vue Exposition pourrait regrouper :
Service
Port
Protocole
Interface
HĂ´te / Docker
Accès LAN
Accès VPN
Exposition WAN potentielle
Protection Firewall
Exemple
Jellyfin
Port : 8096
Docker
LAN : âś“
VPN : âś“
WAN : Possible
Protection : Active
L’objectif :
Comprendre immédiatement ce qui écoute et ce qui peut être atteint sans devoir analyser manuellement Docker, les sockets ou iptables.

Détection NAT / UPnP / exposition WAN
Lorsque cela est techniquement possible, ZFW pourrait signaler une exposition potentielle liée à :
-
UPnP ;
-
NAT-PMP ;
-
redirections de ports ;
-
IPv6 publique ;
-
reverse tunnels ;
-
services d’accès distant.
Exemple :
⚠Exposition WAN potentielle détectée
Il faudra néanmoins éviter d’affirmer qu’un service est réellement accessible depuis Internet si cela n’a pas pu être vérifié.

Règles orientées applications
L’objectif serait de gérer progressivement les applications elles-mêmes plutôt que simplement leurs ports.
Exemple :
Jellyfin
→ LAN
→ VPN fiable
La règle devrait idéalement continuer à fonctionner lorsque :
-
le conteneur est recréé ;
-
son IP interne change ;
-
ses ports sont remappés ;
-
l’application est mise à jour.

Contrôle Utilisateur → Application
Une autre piste serait d’étudier :
Utilisateur ZimaOS
→ Applications autorisées
Exemple
Administrateur
→ Toutes les applications
Utilisateur famille
→ Jellyfin
→ Fichiers
Cependant, un pare-feu voit principalement :
Adresse IP
Connexion
Port
Protocole
Il ne sait pas naturellement quelle personne utilise un navigateur.
Un contrôle fiable par utilisateur nécessitera donc une vraie couche d’identité :
-
passerelle authentifiée ;
-
reverse proxy ;
-
identité native ZimaOS exploitable ;
-
autre mécanisme sûr.
Cette fonction doit donc commencer comme axe de recherche, et non comme promesse.

Amélioration de Safe-Apply
Safe-Apply est déjà l’une des fonctions les plus importantes de ZFW.
Elle devrait rester au centre du projet.
Améliorations possibles :
-
compte Ă rebours plus visible ; -
état du rollback ; -
IP d’administration protégée ; -
réseau d’administration protégé ; -
réseau de secours ; -
snapshot automatique avant Apply ; -
restauration simplifiée de la dernière configuration fonctionnelle.

Sauvegardes et historique
Fonctions possibles :
-
snapshots de configuration ;
-
dernière configuration valide ;
-
sauvegarde manuelle ;
-
restauration ;
-
historique des règles ;
-
historique des modifications.

Mode simulation / Dry-Run
Avant d’appliquer une configuration :
SSH
192.168.70.20
→ AUTORISÉ
Jellyfin
LAN
→ AUTORISÉ
Jellyfin
Guest VLAN
→ BLOQUÉ
SMB
Guest VLAN
→ BLOQUÉ
Cette fonction pourrait considérablement réduire les erreurs.

Parité IPv4 / IPv6
IPv6 ne doit jamais devenir une porte secondaire oubliée.
Chaque fonction importante devrait indiquer clairement :
IPv4 âś“
IPv6 âś“
ou signaler clairement ses limitations.

Confidentialité, transparence et confiance
Les principes que je souhaite conserver sont :
Code source ouvert
Le code doit rester inspectable.
Pas de télémétrie ajoutée
Pas d’analytics ou de suivi d’utilisation ajouté par ce projet.
Fonctionnement local
Les règles, événements et IP bannies restent sur la machine ZimaOS.
Aucun cloud obligatoire
Les fonctions principales doivent fonctionner localement.
Aucun contrôle distant caché
Aucun service externe ne doit pouvoir modifier silencieusement le firewall.
Pas de collecte externe des événements
Sauf configuration volontaire de l’administrateur.

Licence et coordination upstream
Avant de publier une version modifiée de ZFW, je souhaite clarifier directement la situation de la licence avec le mainteneur original.
Les métadonnées actuelles du projet indiquent :
Licence ISC
Cependant, je n’ai pas trouvé de fichier LICENSE dédié à la racine du dépôt.
Je souhaite donc obtenir une confirmation concernant :
-
les droits de modification ;
-
la redistribution ;
-
l’attribution ;
-
l’utilisation du nom ZFW ;
-
la méthode souhaitée pour contribuer.
En attendant, ce projet reste :
Une proposition d’architecture et de contribution communautaire — pas une nouvelle distribution ZFW.
Les recherches, tests en VM et preuves de concept peuvent continuer.
Cependant, je ne souhaite pas distribuer publiquement une bêta dérivée avant d’avoir clarifié ce point.
Ma préférence reste :
La collaboration upstream lorsque cela est possible.

Méthode de développement et de test
Le développement commencera dans des environnements isolés plutôt que sur un serveur ZimaOS de production.
Environnements envisagés :
-
Proxmox ;
-
VMware ;
-
VM ZimaOS ;
-
snapshots ;
-
plusieurs interfaces réseau ;
-
applications Docker de test ;
-
IPv4 ;
-
IPv6 ;
-
VPN ;
-
tunnels.
Les scénarios d’échec devront être volontairement testés.
Exemple
Mauvaise règle firewall
→ Safe-Apply permet-il de récupérer ?
Redémarrage Docker
→ Les protections restent-elles actives ?
Redémarrage ZimaOS
→ ZFW revient-il correctement ?
Modification d’interface
→ L’administrateur conserve-t-il un accès ?
Le but n’est pas seulement de vérifier :
Est-ce que cela fonctionne ?
mais également :
Que se passe-t-il lorsque cela ne fonctionne pas ?

État actuel du projet
À ce stade, il s’agit :
d’une proposition de conception et d’architecture
Il n’existe actuellement :
-
aucune version ZFW publique modifiée par By-Roket ;
-
aucune bĂŞta publique ;
-
aucun remplacement du projet ZFW officiel.
Avant d’aller vers une bêta distribuable, je souhaite recueillir les avis :
-
de Holger / Lintux ;
-
d’IceWhale ;
-
des utilisateurs actuels de ZFW ;
-
de la communauté ZimaOS ;
-
d’utilisateurs spécialisés réseau/sécurité.

Retours recherchés
Je serais particulièrement intéressé par vos avis concernant :
Architecture
Quelles fonctions devraient être intégrées directement dans ZFW ?
Quelles fonctions devraient éventuellement rester dans des modules séparés ?
Sécurité
Quels scénarios d’attaque importants manquent dans cette proposition ?
Réseau
Quelles architectures réseau devraient être testées ?
Simplicité
Quelles fonctions seraient réellement utiles à un utilisateur ZimaOS classique ?
Compatibilité
Quels services ou composants ZimaOS doivent absolument rester protégés contre une mauvaise règle ?
Objectif final
L’objectif peut être résumé simplement :
S’appuyer sur l’excellente base déjà fournie par ZFW, combler certains besoins utiles en matière de sécurité, conserver un projet transparent et rendre ZimaOS plus sûr sans le rendre plus difficile à utiliser.
Si Holger souhaite collaborer ou intégrer directement certaines évolutions dans le projet upstream, ce serait ma direction privilégiée.
— By-Roket
