« Firewalld » : différence entre les versions

De Justine's wiki
Aller à la navigation Aller à la recherche
(Page créée avec « = Firewalld : configuration de base sur Debian 10 = Par défaut, il faut ajouter les interfaces et les services; autrement, on se met dehors soi-même. Par défaut, la z... »)
 
Aucun résumé des modifications
 
(2 versions intermédiaires par la même utilisatrice non affichées)
Ligne 1 : Ligne 1 :
[[Category:reseau]]
[[Category:linux]]
= Firewalld : configuration de base sur Debian 10 =
= Firewalld : configuration de base sur Debian 10 =


Ligne 22 : Ligne 24 :


Il s'agit d'une configuration très simple.
Il s'agit d'une configuration très simple.
= Bloquer une liste de blocs d'IPs =
[https://www.linode.com/community/questions/11143/top-tip-firewalld-and-ipset-country-blacklist Source]
...la Chine, par exemple.
Je télécharge la liste de tous les blocs d'IP de la Chine, [https://www.ipdeny.com/ipblocks/data/aggregated/cn-aggregated.zone Ici].
Ensuite, je vais créer un ipset, soit une longue liste d'IPs (ou d'adresses MAC).
Je commence par créer l'ipset:
firewall-cmd --permanent --new-ipset=blacklist_china --type=hash:net --option=family=inet --option=hashsize=4096 --option=maxelem=200000
* permanent : permanent...
* new-ipset : je la crée et lui donne un nom
* type : hash:net : Type de stockage. net pour des blocs, ip pour des adresses. On peut avoir la liste de tous les types avec firewall-cmd --get-ipset-types
* option:family:inet : ipv4
* hashize : Taille initiale de hash de la liste
* maxelem : nombre maximum d'élements
Je vais ensuite peupler mon ipset à partir du fichier téléchargé.
firewall-cmd --permanent --ipset=blacklist_china --add-entries-from-file=cn-aggregated.zone
Enfin, je vais ajouter mon ipset à la zone "DROP" : ils ne nous embêteront plus.
firewall-cmd --permanent --zone=drop --add-source=ipset:blacklist_china
firewall-cmd --reload
Si je veux bloquer tout sauf un seul port il suffit de créer une nouvelle zone qui droppe avec :
firewall-cmd --new-zone=blackhole --permanent
firewall-cmd --zone=blackhole --set-target=DROP --permanent
...et de lui passer l'IPSet.


= Comprendre la configuration multizones =
= Comprendre la configuration multizones =


[https://www.linuxjournal.com/content/understanding-firewalld-multi-zone-configurations Une ressource intéressante]
[https://www.linuxjournal.com/content/understanding-firewalld-multi-zone-configurations Une ressource intéressante]

Dernière version du 22 juin 2022 à 11:55

Firewalld : configuration de base sur Debian 10

Par défaut, il faut ajouter les interfaces et les services; autrement, on se met dehors soi-même.

Par défaut, la zone active est "public"; on peut utiliser les commandes suivantes:

firewall-cmd --list-all-zones
firewall-cmd --get-zones
firewall-cmd --get-active-zones
firewall-cmd --get-default-zone

Si ça ne donne rien, il faut malheureusement reboot; bug ou feature ?

<source lang="bash"> firewall-cmd --add-interface=ens18

  1. Ensuite, on peut ajouter des services

firewall-cmd --zone=public --add-service=ssh --permanent

  1. ... Ou des ports

firewall-cmd --add-port=80/tcp --permanent </source>

Le problème semble venir de l'utilisation suite à ces commandes de "firewall-cmd --reload". Dès que je la lance, j'ai une erreur nftables et je n'ai plus rien dans firewalld ? De toute façon, il suffit d'utiliser l'argument "--permanent" pour s'en passer.

Il s'agit d'une configuration très simple.

Bloquer une liste de blocs d'IPs

Source ...la Chine, par exemple.

Je télécharge la liste de tous les blocs d'IP de la Chine, Ici.

Ensuite, je vais créer un ipset, soit une longue liste d'IPs (ou d'adresses MAC).

Je commence par créer l'ipset:

firewall-cmd --permanent --new-ipset=blacklist_china --type=hash:net --option=family=inet --option=hashsize=4096 --option=maxelem=200000
  • permanent : permanent...
  • new-ipset : je la crée et lui donne un nom
  • type : hash:net : Type de stockage. net pour des blocs, ip pour des adresses. On peut avoir la liste de tous les types avec firewall-cmd --get-ipset-types
  • option:family:inet : ipv4
  • hashize : Taille initiale de hash de la liste
  • maxelem : nombre maximum d'élements

Je vais ensuite peupler mon ipset à partir du fichier téléchargé.

firewall-cmd --permanent --ipset=blacklist_china --add-entries-from-file=cn-aggregated.zone

Enfin, je vais ajouter mon ipset à la zone "DROP" : ils ne nous embêteront plus.

firewall-cmd --permanent --zone=drop --add-source=ipset:blacklist_china
firewall-cmd --reload

Si je veux bloquer tout sauf un seul port il suffit de créer une nouvelle zone qui droppe avec :

firewall-cmd --new-zone=blackhole --permanent
firewall-cmd --zone=blackhole --set-target=DROP --permanent

...et de lui passer l'IPSet.


Comprendre la configuration multizones

Une ressource intéressante