Dans ce didacticiel, nous allons vous montrer comment configurer le pare-feu Iptables sur CentOS. Pour ceux d'entre vous qui ne le savaient pas, Iptables est un programme d'application en espace utilisateur qui permet à un administrateur système de configurer les tables fournies par le pare-feu du noyau Linux (implémentées sous forme de différents modules Netfilter) et les chaînes et règles qu'il stocke. Différents modules et programmes du noyau sont actuellement utilisés pour différents protocoles ; iptables s'applique à IPv4, ip6tables à IPv6, arptables à ARP, et ebtables pour les trames Ethernet.
Cet article suppose que vous avez au moins des connaissances de base sur Linux, que vous savez utiliser le shell et, plus important encore, que vous hébergez votre site sur votre propre VPS. L'installation est assez simple et suppose que vous s'exécutent dans le compte root, sinon vous devrez peut-être ajouter 'sudo
‘ aux commandes pour obtenir les privilèges root. Je vais vous montrer étape par étape comment configurer le pare-feu Iptables sur un serveur CentOS.
Prérequis
- Un serveur exécutant l'un des systèmes d'exploitation suivants :CentOS Linux.
- Il est recommandé d'utiliser une nouvelle installation du système d'exploitation pour éviter tout problème potentiel.
- Un
non-root sudo user
ou l'accès à l'root user
. Nous vous recommandons d'agir en tant qu'non-root sudo user
, cependant, car vous pouvez endommager votre système si vous ne faites pas attention lorsque vous agissez en tant que root.
Configuration du pare-feu Iptables sur CentOS
Configurer Iptables
Vous pouvez utiliser la procédure suivante pour vérifier qu'iptables a été installé et afficher l'état d'iptables. Ouvrez le terminal et tapez la commande suivante :
# iptables -V # yum info iptables
Si le message ci-dessus n'apparaît pas, vous pouvez saisir la commande suivante pour installer iptables :
# yum -y install iptables
Comprendre le pare-feu, à l'heure actuelle, il existe un total de quatre chaînes :
- INPUT :La chaîne par défaut est utilisée pour les paquets adressés au système.
- OUTPUT :La chaîne par défaut générée à partir du système.
- FORWARD :les chaînes par défaut sont utilisées lorsque les paquets sont envoyés via une autre interface.
- RH-Firewall-1-INPUT :la chaîne personnalisée définie par l'utilisateur.
Signification des cibles
- La cible ACCEPTER signifie autoriser le paquet.
- La cible REJECT signifie supprimer le paquet et envoyer un message d'erreur à l'hôte distant.
- La cible DROP signifie abandonner le paquet et n'envoie pas de message d'erreur à l'hôte distant ou à l'hôte d'envoi.
La configuration par défaut d'iptables sur CentOS n'autorise pas l'accès aux ports HTTP (TCP PORT # 80) et HTTPS (TCP PORT # 443) utilisés par le serveur Web Nginx. Vous pouvez faire étape par étape de configuration :
Étape 1 :Vider toutes les règles Iptables
# iptables -F # iptables -X # iptables -t nat -F # iptables -t nat -X # iptables -t mangle -F # iptables -t mangle -X
Étape 2 :Définissez des règles par défaut
# iptables -P INPUT DROP # iptables -P FORWARD ACCEPT # iptables -P OUTPUT ACCEPT
Étape 3 :Autoriser l'accès à HTTP (port 80) et HTTPS (port 443)
# iptables -A INPUT -i lo -j ACCEPT # iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT # iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT # iptables -A INPUT -p icmp -j ACCEPT # iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT # iptables -A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
Activer et enregistrer iptables
Tapez les deux commandes suivantes pour activer le pare-feu :
# chkconfig iptables on # service iptables save
Félicitations ! Vous avez configuré le pare-feu avec succès. Merci d'avoir utilisé ce didacticiel pour la configuration du pare-feu Iptables dans le système CentOS. Pour obtenir de l'aide supplémentaire ou des informations utiles, nous vous recommandons de consulter le site Web officiel de CentOS.