Il m'est impossible d'accéder à mes applis docker depuis l'extérieur (derrière NPM et vers un NDD) alors que ça fonctionnait sans souci jusque ici.
- Nextcloud
- VaultWarden
J'ai eu le même souci lors d'une mise à jour. Je me suis retrouvé pendant 36 heures avec mes CMS non accessibles à l'extérieur alors que tout fonctionnait nickel en local. J'ai donc désactivé le pare-feu et recontacté le développeur Lintux.
Il m'a donc indiqué le principe et la configuration à opérer.
Je viens de voir qu'il a encore fait une mise à jour 1.0.21 ⇾ 1.0.22 et commenté mon souci, extrait traduit :
"Signalé sur le terrain : un CMS publié sur 443 fonctionnait depuis le réseau local et était mort depuis Internet, tandis que chaque règle du tableau indiquait « Autoriser » et avait été vérifiée une par une. ZeroTier a fonctionné ; la désactivation de ZFW a résolu le problème..."
Bien que pas trop spécialiste en sécurité, je ferai un tuto de la configuration de base de ce Pare-Feu spécifiquement créé pour ZimaOS/Docker. Dans l'attente de la rédaction de celui-ci, cette notice :
Principe 1 : le pare-feu ferme tous les ports d'écoute du réseau local (en IPv4) des piles docker qui ne sont pas autorisés (onglet Rules) + autorise l'accès à Zéro Tiers et SSH local (pour ne pas se retrouver à la porte en cas de fausse manip).
Principe 2 : lors de la première installation du Pare-Feu (par défaut désactivé), les ports d'écoute de chacune des piles docker déjà installées sont reconnues et inscrites dans l'onglet "Rules". Il faut
ajouter (si seule liaison en locale) les piles en "host" comme Plex en 32400. Ainsi que l'accès à l
'interface ZimaOS si changé de 80 à autre (
comme 82) pour cause de Proxy inversé installé (utilise les ports 80, 81, 443).
Il faut supprimer ou
ne pas ajouter deux fois le même port local si plusieurs fonctionnalités qui l'utilisent. Exemple : le port de l'interface est connu en 80 + le Proxy-Inversé en 80 aussi (donc supprimer l'une des lignes).
Principe 3 : par défaut seul le réseau local est autorisé et uniquement en IPv4. Par exemple si le 443 est autorisé, il ne fonctionnera que sur le réseau local, mais pas en externe.
Principe 4 : avant d'activer le Pare-Feu, ZWF permet de
tester pendant 2 minutes une simulation d'activation et revient en désactivation, avec le
bouton "Safe Apply".

Principe 5 : pour ouvrir un port à l'
externe accessible aux IPv4 et IPv6, il faut indiquer la
source en mode "any".
Ci-après une capture d'écran du début de la configuration de l
'onglet "Rules" de mon serveur.
Important :
1. Lors de la création dune
nouvelle pile docker, il ne faut pas oublier d'inscrire le
port d'écoute local si nécessaire.
2. Pour la
validation d'un NDD, il ne faudra pas oublier d'ouvrir momentanément le port
80 en source "Any".
3. Normalement mon Plex ne passe que par un NDD (443) pour l'externe. Sur la capture d'écran (
pour test sur une install classique), il est indiqué en 32401 (externe) et 32400 (local).
4.
Tester l'accès externe avec, par exemple à domicile, un téléphone portable déconnecté de la WiFi.
En résumé, pour un
accès externe indiquer la règle du
port concerné en "Any + Auto" (en + du routeur bien sûr

).
NB1 Pour l'aspect pratique, indiquez le nom du service pour chaque port si vous avez pas mal d'apps docker.
NB2 Il y a possibilité d'autoriser et/ou d'interdire des IP ainsi que des Pays (création des "Rules").
NB3 Comme sur un Pare-Feu "classique", l'ordre hiérarchique des colonnes (1, 2, 3...) ⇾ la première règle prime sur la seconde.
