GNU/Linux >> Tutoriels Linux >  >> Cent OS

Comment utiliser la commande ipset sous Linux

Les ensembles d'adresses IP sont des collections stockées d'adresses IP, de plages de réseau, d'adresses MAC, de numéros de port et de noms d'interface réseau. L'outil iptables peut tirer parti des ensembles d'adresses IP pour une correspondance des règles plus efficace. Par exemple, supposons que vous souhaitiez supprimer le trafic provenant de l'une des plages d'adresses IP que vous savez malveillantes. Au lieu de configurer directement des règles pour chaque plage dans iptables, vous pouvez créer un ensemble d'adresses IP, puis référencer cet ensemble dans une règle iptables. Cela rend vos ensembles de règles dynamiques et donc plus faciles à configurer ; chaque fois que vous avez besoin d'ajouter ou d'échanger des identifiants réseau gérés par le pare-feu, vous modifiez simplement l'ensemble d'adresses IP.

La commande ipset vous permet de créer et de modifier des ensembles d'adresses IP. Vous devez d'abord définir un nom, une méthode de stockage et un type de données pour votre ensemble, tels que :

# ipset create range_set hash:net

Dans ce cas, range_set est le nom, hash est la méthode de stockage et net est le type de données. Ensuite, vous pouvez ajouter les plages à l'ensemble :

# ipset add range_set 178.137.87.0/24
# ipset add range_set 46.148.22.0/24

Ensuite, vous utilisez iptables pour configurer une règle afin de supprimer le trafic dont la source correspond aux plages de cet ensemble :

# iptables -I INPUT -m set --match-set range_set src -j DROP

Sinon, pour supprimer le trafic dont la destination correspond à l'ensemble :

iptables -I OUTPUT -m set --match-set range_set dst -j DROP

SYNTAXE

La syntaxe de la commande ipset est :

# ipset [options] {command}

Bloquer une liste de réseaux

1. Commencez par créer un nouvel « ensemble » d'adresses réseau. Cela crée un nouvel ensemble "de hachage" d'adresses réseau "net" nommé "myset".

# ipset create myset hash:net

ou

# ipset -N myset nethash

2. Ajoutez toute adresse IP que vous souhaitez bloquer à l'ensemble.

# ipset add myset 14.144.0.0/12
# ipset add myset 27.8.0.0/13
# ipset add myset 58.16.0.0/15
# ipset add myset 1.1.1.0/24

3. Enfin, configurez iptables pour bloquer toute adresse de cet ensemble. Cette commande ajoutera une règle en haut de la chaîne "INPUT" pour que "-m" corresponde à l'ensemble nommé "myset" de ipset (-match-set) lorsqu'il s'agit d'un paquet "src" et "DROP", ou bloc, il.

# iptables -I INPUT -m set --match-set myset src -j DROP

Bloquer une liste d'adresses IP

1. Commencez par créer un nouvel "ensemble" d'adresses IP. Cela crée un nouvel ensemble "de hachage" d'adresses "ip" nommé "myset-ip".

# ipset create myset-ip hash:ip

ou

# ipset -N myset-ip iphash

2. Ajoutez toute adresse IP que vous souhaitez bloquer à l'ensemble.

# ipset add myset-ip 1.1.1.1
# ipset add myset-ip 2.2.2.2

3. Enfin, configurez iptables pour bloquer toute adresse de cet ensemble.

# iptables -I INPUT -m set --match-set myset-ip src -j DROP

Rendre ipset persistant

L'ipset que vous avez créé est stocké en mémoire et disparaîtra après le redémarrage. Pour rendre l'ipset persistant, vous devez procéder comme suit :

1. Enregistrez d'abord l'ipset dans /etc/ipset.conf :

# ipset save > /etc/ipset.conf

2. Activez ensuite ipset.service, qui fonctionne de manière similaire à iptables.service pour restaurer les règles iptables.

Autres commandes

1. Pour afficher les ensembles :

# ipset list

ou

# ipset -L

2. Pour supprimer un ensemble nommé "monensemble":

# ipset destroy myset

ou

# ipset -X myset

3. Pour supprimer tous les ensembles :

# ipset destroy


Cent OS
  1. Comment utiliser la commande Linux grep

  2. Comment utiliser la commande history sous Linux

  3. Comment utiliser la commande Su sous Linux

  4. Comment utiliser la commande d'écran Linux

  5. Comment utiliser la commande ldconfig sous Linux

Comment utiliser la commande sysctl sous Linux

Comment utiliser la commande d'arrêt de Linux

Comment utiliser grep sous Linux

Comment utiliser la commande Mkdir sous Linux

Comment utiliser la commande jobs sous Linux

Comment utiliser la commande screen sous Linux