GNU/Linux >> Tutoriels Linux >  >> Linux

Comment verrouiller votre serveur CentOS avec IPTables

Vérifié et testé le 11/01/16

Présentation

Dans ce didacticiel, nous expliquerons comment effectuer certaines modifications IPTables de base qui contribueront grandement à sécuriser votre serveur. Cela se fait sur une nouvelle installation de CentOS 6.5 64bit dans notre Atlantic.Net Cloud.

Verrouiller votre serveur CentOS avec IPTables

L'utilisation des IPTables CentOS intégrées est un excellent moyen de garantir un serveur privé virtuel sécurisé, car il est déjà installé et en cours d'exécution lors de la création du serveur. Pour vérifier cela, il vous suffit d'exécuter ce qui suit pour vérifier l'état d'IPTables et il imprimera ses ensembles de règles actuels.

service iptables status

Si vous n'exécutez pas en tant que root, ajoutez simplement un sudo devant celui-ci. Nous continuerons ce didacticiel de sécurisation comme si vous étiez l'utilisateur root.

Pour modifier vos IPTables, vous devez d'abord accéder à son fichier de configuration. Dans cet exemple, nous utilisons vi mais vous pouvez utiliser l'éditeur que vous préférez.

vi /etc/sysconfig/iptables

Exemple /etc/sysconfig/iptables

Vous devriez obtenir une page qui ressemble à celle ci-dessus. La première chose que nous voulons faire est si vous avez un port SSH personnalisé (vous devriez si vous avez suivi le tutoriel Changer votre port SSH dans CentOS (lien) ou si vous l'avez changé vous-même), changez la ligne qui indique :

--dport 22

être :

--dport yourcustomSSHport

En suivant notre exemple dans le didacticiel sur le port SSH personnalisé ci-dessus, la ligne doit indiquer :

-A INPUT -m state -state NEW -m tcp -p tcp --dport 3389 -j ACCEPT

Si vous n'avez pas de port SSH personnalisé, vous pouvez l'ignorer, mais vous devriez penser à en ajouter un ! Ensuite, nous voulons prendre la section qui dit :

:INPUT ACCEPT [0:0] and :FORWARD ACCEPT [0:0]

et faites-lui dire :

:INPUT DROP [0:0] and :FORWARD DROP [0:0]

Ce que cela fait, c'est qu'il dit à IPTables de bloquer et de supprimer tout le trafic qui ne va pas vers les ports que vous spécifiez pour autoriser le passage. Cela empêchera les personnes d'essayer d'utiliser les services que vous exécutez, à moins que vous n'ayez ouvert ces ports au public.

Et c'est tout! Votre serveur est maintenant plus sécurisé en modifiant simplement quelques éléments dans IPTables. Pour que les modifications prennent effet, vous devrez enregistrer et quitter le fichier, puis exécuter :

service iptables restart

Cela entraînera l'entrée en vigueur immédiate de vos nouvelles règles et elles resteront en vigueur pendant les redémarrages. Si vous souhaitez obtenir plus de restrictions avec vos tables IP, en particulier l'accès à SSH, vous pouvez procéder comme suit pour chaque adresse IP qui doit être autorisée. Cela implique de modifier la règle SSH et d'en ajouter d'autres. Là où il indique la règle SSH que nous avons identifiée précédemment, vous souhaitez la modifier pour qu'elle soit :

-A INPUT -s IPADDR –m tcp –p tcp  --dport 3389 –j ACCEPT

Où IPADDR est votre adresse IP à laquelle vous souhaitez avoir un accès SSH à votre serveur. Si vous n'avez pas configuré de port SSH personnalisé, vous voudriez qu'il reste 22 et non 3389.

Pour autoriser des ports spécifiques, par exemple pour l'accès Web à votre site Web, tout ce que vous avez à faire est de connaître/trouver le port sur lequel le service s'exécute (ou sur lequel vous l'avez configuré) et son protocole (TCP ou UDP) et de l'autoriser. Par exemple, l'accès au site :

-A INPUT -m tcp -p tcp --dport 80 -j ACCEPT

Et maintenant, Internet a accès à l'hébergement Web que vous faites.

Gardez à l'esprit que lors de l'ajout de nouvelles règles aux sections INPUT ou FORWARD, il est recommandé de regrouper les nouvelles règles avec des règles similaires. INPUT avec INPUT et FORWARD avec FORWARD. Vous voudrez également vous assurer que toutes les règles que vous ajoutez et qui autorisent le passage d'un nouveau port sont répertoriées AU-DESSUS de toute instruction de rejet pour cet ensemble de règles. S'ils sont répertoriés après les lignes de rejet, les règles ne prendront pas effet.

Pour voir la sortie de ce que fait IPTables et bloque avec ses règles, vous pouvez exécuter ce qui suit. Il affichera les règles que vous avez et tout ce qui concerne les paquets concernant la suppression des connexions ou leur autorisation.

iptables -L -vn

Pour savoir ce que signifient tous les segments IPTables et plus d'informations à leur sujet, veuillez consulter notre section IPTables (lien).

Remarque * Vous pouvez toujours accéder à votre serveur via notre visualiseur VNC dans le portail cloud si vous vous verrouillez *

Merci d'avoir suivi ce mode d'emploi. Veuillez consulter notre blog pour une foule d'articles et de procédures, y compris d'autres articles liés à IPTables tels que Comment :Configuration de base des fichiers IPTables et Comment :Dépannage de base d'IPTables ; et envisagez un serveur d'hébergement VPS leader sur le marché d'Atlantic.Net.


Linux
  1. Comment attribuer IPv6 sur votre serveur CentOS

  2. Comment surveiller l'utilisation des ressources de votre serveur avec Munin sur CentOS 6

  3. Comment protéger Apache et SSH avec Fail2Ban sur CentOS 8

  4. Comment sécuriser le service SSH avec Port Knocking

  5. Utiliser iptables avec CentOS 7

Comment configurer SSH sur CentOS et RHEL

Comment :sécuriser votre serveur Ubuntu ou Debian avec IPTables

Comment installer votre propre serveur VNC – Fedora / CentOS

Comment se connecter en SSH à votre serveur Linux à partir de Windows

Comment sécuriser SSH avec Fail2Ban

Comment configurer un pare-feu sur votre serveur Linux