6104 links
  • GuiGui's Show
  • Home
  • Login
  • RSS Feed
  • ATOM Feed
  • Tag cloud
  • Picture wall
  • Daily
Links per page: 20 50 100
 
  • Sets - nftables wiki

    Dans ma courte introduction à nftables, la plus récente interface utilisateur pour piloter Netfilter, le pare-feu de Linux, j'indique que, pour supprimer une règle de filtrage, il faut récupérer son numéro interne (handle) puis demander sa suppression avec ce numéro.

    Depuis, je me demandais comment vont s'adapter les outils comme fail2ban, qui font aujourd'hui des iptables -A INPUT -s <IP> -j DROP + iptables -D INPUT -s <IP> -j DROP, c'est-à-dire un retrait en citant mot pour mot la règle ajoutée.

    J'ai pensé aux ipsets, mais ils semblent être incompatibles avec nftables.

    Guerby m'a apporté la réponse sans que je la cherche : il faut utiliser les ensembles nommés (named sets) de nftables. Ainsi, on n'ajoute pas une règle de filtrage dans le moteur de filtrage, mais une IP (ou un port, une interface réseau, etc.) à un ensemble.

    Exemple d'utilisation :

    # « flags interval » permet d'ajouter des réseaux / préfixes, voir https://serverfault.com/questions/978113/hello-nftables-named-sets-that-match-network-prefixes-though-filter-or-variables
    $ sudo nft add set ip filter testSet { type ipv4_addr\; flags interval\;}
    
    $ sudo nft add element ip filter testSet { 192.0.2.0/24, 198.18.0.14 }
    
    $ sudo nft list set ip filter testSet
    
    $ sudo nft delete element ip filter testSet { 198.18.0.14 }
    
    # Il faut d'abord créer la table, puis la chaîne, puis associer la chaîne à un hook du noyau, etc., ça, ça ne change pas
    $ sudo nft insert rule ip filter INPUT ip saddr @testSet counter drop
    October 16, 2020 at 6:32:45 PM UTC - permalink - http://wiki.nftables.org/wiki-nftables/index.php/Sets#Named_sets
Links per page: 20 50 100
 
Mentions légales identiques à celles de mon blog | CC BY-SA 3.0

Shaarli - The personal, minimalist, super fast, database-free, bookmarking service by the Shaarli community