Ci-dessous, les différences entre deux révisions de la page.
| Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
| netadmin:firewalld [2025/10/11 10:32] – yoann | netadmin:firewalld [2026/07/19 12:01] (Version actuelle) – yoann | ||
|---|---|---|---|
| Ligne 5: | Ligne 5: | ||
| :TODO: | :TODO: | ||
| + | |||
| + | ===== Les zones ===== | ||
| + | |||
| + | firewalld s' | ||
| + | |||
| + | Les zones pré-existantes : | ||
| + | |||
| + | * **drop** : Niveau de confiance minimal, connexions entrantes supprimées sans notification et connexions sortantes autorisées ; | ||
| + | * **block** : Niveau de confiance minimal, connexions entrantes rejetées avec notification ('' | ||
| + | * **public** : Niveau de confiance bas, certains services entrants acceptés (ssh par exemple) et on peut en ajouter à la demande à l'aide des règles. | ||
| + | * **external** : Zone dans laquelle on place une interface reliée à une réseau externe (WAN par exemple) quand on utilise le serveur comme passerelle. Le '' | ||
| + | * **internal** : Autre extrémité de la zone de **external** quand on utilise le serveur comme passerelle. Cette zone est de bonne confiance, et on peut éditer les services acceptés avec des règles ; | ||
| + | * **dmz** : Zone réservée pour les serveurs en '' | ||
| + | * **work** : Bon niveau de confiance. Zone utilisée pour les machines sur réseau d' | ||
| + | * **home** : Bon niveau de confiance. Zone utilisée pour une zone personnelle. La plupart des connexions entrantes sont autorisées, | ||
| + | * **trusted** : Niveau de confiance élevée. Zone utilisée pour les machines qui se font 100% confiance. A utiliser avec précaution évidemment. | ||
| + | |||
| + | <code bash> | ||
| + | # Lister les zones | ||
| + | firewall-cmd --get-zones | ||
| + | |||
| + | # Lister les zones utilisées | ||
| + | firewall-cmd --get-active-zones | ||
| + | |||
| + | # Détail du paramétrage d'une zone | ||
| + | firewall-cmd --info-zone MyZone | ||
| + | |||
| + | # Lister les zones et leur paramétrage | ||
| + | firewall-cmd --list-all-zones | ||
| + | |||
| + | # Créer une zone | ||
| + | # la zone est crée mais ne contient aucune règle | ||
| + | firewall-cmd --new-zone=MyNewZone --permanent | ||
| + | firewall-cmd --reload | ||
| + | </ | ||
| + | |||
| + | Lorsque qu'on invoque '' | ||
| + | * sur une zone ; | ||
| + | * de façon transitoire (il faudra utiliser l' | ||
| + | |||
| + | <code bash> | ||
| + | # Afficher la zone sur laquelle s' | ||
| + | # par défaut les actions de la commande | ||
| + | firewalld-cmd --get-default-zone | ||
| + | </ | ||
| + | |||
| + | Pour changer la zone par défaut : | ||
| + | |||
| + | <code bash> | ||
| + | # Passer la zone ' | ||
| + | firewall-cmd --set-default-zone=work | ||
| + | </ | ||
| + | |||
| + | Aux zones on peut affecter des interfaces ou des IP/réseaux source : | ||
| + | |||
| + | <code bash> | ||
| + | firewall-cmd --zone=work --add-interface=eno1 [--permanent] | ||
| + | firewall-cmd --zone=work --add-source=192.168.22.123 [--permanent] | ||
| + | firewall-cmd --zone=work --add-source=192.168.21.0/ | ||
| + | </ | ||
| + | |||
| + | ===== Création d'une zone personnalisée ===== | ||
| + | |||
| + | On peut définir de nouvelles zones. | ||
| + | |||
| + | < | ||
| + | La commande requiert l' | ||
| + | </ | ||
| + | |||
| + | <code bash> | ||
| + | firewall-cmd --permanent --new-zone=MyZone | ||
| + | firewall-cmd --reload | ||
| + | </ | ||
| + | |||
| + | La zone utilise un comportement par défaut s' | ||
| + | |||
| + | <code bash> | ||
| + | # firewall-cmd --permanent --zone=zone-name --set-target=< | ||
| + | |||
| + | firewall-cmd --permanent --zone=MyZone --set-target=REJECT | ||
| + | firewall-cmd --reload | ||
| + | </ | ||
| + | |||
| + | |||
| Ligne 63: | Ligne 147: | ||
| sudo firewall-cmd --zone=public --list-rich-rules | sudo firewall-cmd --zone=public --list-rich-rules | ||
| </ | </ | ||
| + | |||
| + | Une règle enrichie peut contenir une plage de ports consécutifs mais pas d' | ||
| ===== Sauvegarder la configuration ===== | ===== Sauvegarder la configuration ===== | ||
| + | |||
| + | Une fois les règles validées, on peut sauvegarder la configuration en cours d' | ||
| + | |||
| + | <code bash> | ||
| + | firewall-cmd --runtime-to-permanent | ||
| + | firewall-cmd --complete-reload | ||
| + | </ | ||
| + | |||
| Pour sauvegarder, | Pour sauvegarder, | ||
| Ligne 72: | Ligne 166: | ||
| * '' | * '' | ||
| * Les dossiers '' | * Les dossiers '' | ||
| + | |||
| + | ===== Réinitialiser la configuration ===== | ||
| + | |||
| + | <code bash> | ||
| + | firewall-cmd --reset-to-defaults | ||
| + | </ | ||
| + | |||
| + | |||
| + | ===== Verrouillage de la configuration (lockdown) ===== | ||
| + | |||
| + | Par défaut, les applications peuvent s' | ||
| + | |||
| + | ===== Mode panic ===== | ||
| + | |||
| + | Pour isoler la machine du réseau, on peut basculer rapidement en mode panic : cela revient à couper les connexions actives et à empêcher tout nouveau trafic entrant et sortant. | ||
| + | |||
| + | <code bash> | ||
| + | firewall-cmd --panic-on | ||
| + | |||
| + | firewall-cmd --panic-off | ||
| + | </ | ||
| + | |||
| + | Pour vérifier si le mode panic est actif : | ||
| + | <code bash> | ||
| + | firewall-cmd --query-panic | ||
| + | </ | ||
| Ligne 79: | Ligne 199: | ||
| * https:// | * https:// | ||
| * https:// | * https:// | ||
| + | * https:// | ||
| * https:// | * https:// | ||
| * https:// | * https:// | ||
| + | * [[https:// | ||
| + | * https:// | ||
| + | * https:// | ||