Maison >Opération et maintenance >exploitation et maintenance Linux >Pare-feu logiciel iptables sous Linux - afficher et effacer les règles, définir la politique par défaut

Pare-feu logiciel iptables sous Linux - afficher et effacer les règles, définir la politique par défaut

齐天大圣
齐天大圣original
2020-11-18 15:19:013729parcourir

Un pare-feu est un moyen permettant aux utilisateurs de restreindre certaines adresses IP ou l'accès des utilisateurs à leurs hôtes. Les pare-feu sont divisés en deux catégories : les pare-feu matériels et les pare-feu logiciels. Les pare-feu logiciels sont principalement utilisés pour filtrer les paquets de données, tandis que les pare-feu matériels sont principalement utilisés pour se protéger contre les attaques malveillantes et filtrer les paquets de données, telles que les attaques DDOS. Ici, nous allons expliquer le pare-feu logiciel sous Linux-iptables.

iptables et firewalld

Sous centOS6, le pare-feu logiciel par défaut est iptables, et dans centos7, c'est firewalld. Quel est le lien entre eux ? En fait, firewalld est un logiciel nouvellement intégré à l'iptables d'origine.

Lors de l'apprentissage d'iptables, il est recommandé de fermer d'abord firewalld et d'activer iptables

yum install iptables-services
systemctl stop firewalld
systemctl start iptables

tables et chaînes d'iptables

iptables Différentes tables représentent différentes fonctions. Il y a 4 tables par défaut

  • filter (filter) nat (traduction d'adresse) mangle raw

Sous différentes tables, il y a leurs propres chaînes de règles :

  • filter (INPUT/OUTPUT/FORWARD)

  • nat (prerouting/output/postouting )

Les significations représentées par ces chaînes sont les suivantes :

  • Chaîne INPUT - les paquets de données entrants appliquent les règles de cette chaîne de règles

  • Chaîne OUTPUT - les paquets sortants appliquent les règles de cette chaîne de règles

  • Chaîne FORWARD - applique les règles de cette chaîne de règles lors du transfert des paquets Règles

  • Chaîne PREROUTING - Appliquer les règles de cette chaîne avant de router le paquet de données

  • Chaîne POSTROUTING - Appliquer les règles au paquet de données Appliquer les règles de cette chaîne après le routage

Visualisation et effacement des règles d'iptables

Vue des règles

Exemple d'utilisation : iptables [-t tables] -L [-nv]

Options et paramètres :

  • -t est suivi de le type de table. Si cette option est omise, la valeur par défaut est la table de filtre.

  • -L Lister les règles du tableau actuel

  • -n Ne pas effectuer de vérification inversée du nom de domaine et de l'IP

  • -v affiche plus d'informations

# 查看filter表的规则
# iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
   67  4444 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
    2   286 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited
Chain OUTPUT (policy ACCEPT 38 packets, 4664 bytes)
 pkts bytes target     prot opt in     out     source               destination  
 
# 查看nat表的规则
iptables -t nat -L -nv

La signification des options de règle sous la chaîne est la suivante :

  • target : représente l'opération à effectuer, ACCEPT release, drop, rejet

  • prot : représente le protocole de paquet de données utilisé, notamment tcp, udp et icmp

  • opt : informations de description

  • source : restreindre un certain hôte source

  • destination : restreindre un certain hôte de destination

La signification des cinq règles de la chaîne INPUT présentée ci-dessus est la suivante :

  1. Tant que l'état du paquet de données est RELATED, ESTABLISHED, il est accepté

  2. Tant qu'il s'agit d'un paquet icmp, il est accepté

  3. Tant qu'il s'agit d'une carte réseau de bouclage local, tout les données sont acceptées

  4. Tant qu'il s'agit d'un paquet actif envoyé au port 22 de connexion, les paquets TCP sont acceptés.

  5. Rejeter tous les paquets

Effacer les règles d'iptables

Une fois centOS7 installé par défaut, le système dispose déjà de nombreuses règles iptables. Nous allons vous apprendre ici comment effacer ces règles.

Exemple d'utilisation : iptables [-t tables] [-FXZ]

Options et paramètres :

  • -F Nettoyer toutes les règles personnalisées

  • -X Effacer toutes les règles définies par l'utilisateur

  • -Z Remettre toutes les statistiques à zéro

# iptables -F
# iptables -X
# iptables -Z

Afficher les règles spécifiques

Utilisez iptables-save pour afficher les règles spécifiques

Utilisation : iptables-save [-t tables]

# iptables-save -t filter
# Generated by iptables-save v1.4.21 on Sat Nov 14 21:51:56 2020
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [56:7196]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
 
# Completed on Sat Nov 14 21:51:56 2020

Définir la stratégie par défaut

Après avoir effacé les règles, il ne reste que la stratégie par défaut. La politique par défaut est que lorsqu'une de nos règles n'est pas respectée, la règle par défaut est utilisée. Les stratégies par défaut sont ACCEPT (accepter les paquets) et DROP (abandonner les paquets)

Utilisation : iptables [-t tables] -P [INPUT|OUTPUT|FORWARD…] [ACCEPT|DROP]

Maintenant, nous essayons de changer la chaîne INPUT par défaut du filtre en DROP, la chaîne OUTPUT et FORWARD en ACCETP

iptables -t filter -P INPUT DROP
# 注意,该命令敲完后,你的终端就可能会断开连接了
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT

Recommandations associées : "cours Linux"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn