Linux : Les réseaux

Établir des règles réseau

TESTEZ LINKEDIN LEARNING GRATUITEMENT ET SANS ENGAGEMENT

Tester maintenant Afficher tous les abonnements
À l'aide de commandes iptables, vous mettrez en place un comportement réseau par défaut. Initiez-vous également à l'ajout de règles spécifiques.
08:32

Transcription

Sur la distribution Debian, on va manipuler, directement, les différents flux réseau qui vont passer par la machine à l'aide de cette commande iptables. Alors comment est-ce qu'on va faire ça ? Eh bien tout d'abord, on a plusieurs choses qui vont nous intéresser quand on va visualiser ces règles-là. La première chose c'est que, pour le moment je me vais m'intéresser juste à cette chaîne INPUT. Je vois ici, la policy qui est ACCEPT. Cette policy va déterminer un comportement par défaut. Ça va être le comportement que va avoir Netfilter concernant la chaîne INPUT quand il n'y a pas de règle spécifique correspondant à un motif d'un paquet qui passe sur le réseau. Qu'est-ce que ça veut dire ? Ça veut dire que je vais pouvoir définir différentes règles faisant correspondre à des motifs du paquet qui arrive sur le réseau. Je vais prendre un exemple. Si, ici, à l'aide ma commande iptables, je définis un motif de paquets. Je vais dire que je vais rajouter dans ma chaîne INPUT et maintenant je vais définir, je vais décrire le type de paquet qui va m'intéresser. Et le type de paquets qui m'interesse, par exemple, ça va être de vouloir autoriser tous les paquets de type SSH. Donc, je vais dire que ce sont les paquets qui utilisent le protocole tcp, -p tcp, pour protocole tcp, dont le port destination, puisque je suis sur la chaîne INPUT et que ce sont des gens qui vont venir se connecter chez moi, donc ils vont venir vers ma connexion SSH. Eh bien, ces demandes de connexion-là, -j jump, je vais définir l'action à faire, je vais accepter la connexion. Donc, si je fais ça, que je rappelle mon iptables -L, je vois que je vais avoir, là-dessous, une action associée à un motif de paquets. Alors, quand je vais modifier ma policy, ici, ça va être la policy qui va être à effectuer pour tous les paquets qui ne correspondent à aucun motif décrit plus bas. Donc, je vais pouvoir maintenant, définir, par exemple, la policy DROP qui est que les paquets qui vont arriver sur la machine et qui ne correspondent pas à une des règles définies plus bas, eh ben ces paquets là vont être DROP-és. C'est une des trois actions possibles. L'action DROP, ça veut dire que le paquet, je ferai comme si je ne l'avais jamais entendu. Pour ça, je vais faire quoi ? Je vais faire sudo iptables -P, parce que je vais définir la politique par défaut. Ça va être pour la chaîne INPUT et la politique à appliquer, ça sera DROP. Si je fais ça, cette fois, je rappelle mon iptables -L, je vois que la policy est DROP et que la connexion en SSH est autorisée. Je peux vérifier ça en allant, par exemple, sur le routeur. Je suis sur le routeur. Est-ce que je peux joindre la machine avec la commande ping ? ping 192.168.10.5 Eh bien, la machine ne me répond pas. Je vais faire Ctrl+C. Et est-ce que je peux faire un SSH de 192.168.10.5 ? Eh bien, cette fois, la connexion SSH fonctionne. Donc, on voit que le ping a été bloqué, mais le SSH est passé. Donc je vais faire Ctrl+C, parce que je ne souhaite pas me connecter en SSH. Mais on voit que le filtrage que j'ai mis en place fonctionne bien. Si je reviens sur ma distribution Debian, alors, je vais effacer la page, sudo iptables -L. Je vois donc que ma politique par défaut, c'est le DROP et que j'accepte les connexions SSH. Ah oui, mais je me dis : Je vais interdire les connexions SSH qui viennent du routeur. J'accepte toutes les connexions, mais, on a pas le droit de venir se connecter depuis le routeur. Donc pour ça, je vais rajouter une autre règle, iptables -A, pour ajouter une nouvelle règle. Je l'ajoute sur la chaîne INPUT, pour les paquets qui arrivent. Je vais définir que la règle est la suivante : Quand les paquets viennent de l'adresse IP du routeur, c'est le 192.168.10.253 que le protocole, c'est du tcp et que le port de destination, c'est le port SSH, donc là ça ne change pas grand chose par rapport à ce que j'avais tout à l'heure. Cette fois, je vais faire une nouvelle action, qui est l'action REJECT. Si jamais, j'ajoute cette règle-là que je fais un iptables -L, il va tenter de trouver un nom qui serait associé à l'adresse IP du 192.168.10.53 et il ne va pas en trouver. Voilà. Donc, j'ai deux règles. La première règle, c'est que j'accepte le SSH et la deuxième règle, quand ça vient du routeur, eh ben je vais rejeter la connexion. Voyons voir si ça fonctionne. Cette fois, je retourne sur le routeur. Voilà. Je suis sur le routeur. Est-ce que je peux ping-er le routeur ? Ça ne marche pas. Est-ce que je peux me connecter sur le routeur ? Eh bien, ça marche. Pourquoi est-ce que ça fonctionne, alors que je viens de mettre une règle qui l'interdisait ? Retournons voir ces règles-là. Voilà, je suis à nouveau sur ma Debian et voyons les règles. Les règles sont lues, en réalité, dans l'ordre dans lequel elles ont été affichées. Donc ça veut dire que si, ici, le paquet correspond au motif qui est là, quand une connexion vient de la part de mon routeur et bien c'est une connexion qui est à destination du SSH, eh bien, qu'est-ce que je fais ? J'accepte la connexion. A aucun moment, il n'est capable de venir jusque là. Donc, ça veut dire que l'ordre des règles est important. Donc ce que je vais faire, c'est inverser l'ordre des règles. Donc je vais effacer ma deuxième règle et je vais l'insérer à la première position. Donc pour ça, je vais tout d'abord effacer ma page. Je rappelle mes règles. Voilà mes règles actuelles. Et donc, je vais faire un sudo iptables -D INPUT 2 Donc, j'efface la règle numéro deux. Voilà, si je refais le iptables -L, elle n'est plus là. Donc, cette fois je vais pouvoir faire sudo iptables -D INPUT 1 que je vais rajouter, je vais insérer, à la première position, ma règle : Quand la source, ça correspond au 192.168.10.253 que le protocole, c'est du tcp et que le port de destination, c'est SSH, eh bien je vais rejeter le paquet, la demande de connexion. Et cette fois, si j'efface ma page, et que je rappelle le iptables -L, j'ai les règles qui s'affichent et cette fois, j'ai bien ma règle qui rejette la connexion qui est immédiatement présente avant la règle qui accepte les autres connexions. Allons faire un petit tour sur le routeur pour voir si ça marche. Sur mon routeur, si cette fois, je tente de me connecter, eh ben j'ai directement un message me disant que la connexion a été refusée. Donc, cette fois, mon filtrage a bien fonctionné. Et maintenant, si je souhaite rendre ces règles-là permanentes, c'est-à-dire que les règles, maintenant, elles me satisfont et je vais vouloir les enregistrer pour qu'elles soient appliquées dès le démarrage de la machine. Eh bien pour ça, c'est comme quand on veut rendre persistante la translation d'adresse réseau, il faut installer le logiciel iptables-persistent. Voilà, bon, il est déjà installé. Et dans ce cas là, je n'aurai plus qu'à rentrer en tant que root. Donc je vais reprendre une commande en tant que root, je fais sudo -s pour avoir un shell en tant que root. Et cette fois, je ferai iptables-save Si jamais je fais iptables -save, eh bien il va me générer les différentes règles, mais il ne les sauvegarde pas. Pour les sauvegarder, je vais rappeler la commande et je vais mettre /etc/iptables /rules.v4 Il me sauvegarde les différentes règles et on voit ici que dans la règle INPUT, j'ai mes différentes règles avec un format un petit peu différent de celui que j'ai rentré, mais je retrouve bien les règles, ici. Donc, voilà comment est-ce qu'on configure le filtrage sur les distributions Debian et, de la même manière, sur les distributions Ubuntu.

Linux : Les réseaux

Maîtrisez la configuration des réseaux sur Linux. Mettez en place une configuration adaptée aux serveurs, et abordez le Network Manager, plus adapté aux postes de travail.

2h20 (26 vidéos)
Aucun commentaire n´est disponible actuellement
 
Thématiques :
IT
Administration réseau
Spécial abonnés
Date de parution :7 mars 2017

Votre formation est disponible en ligne avec option de téléchargement. Bonne nouvelle : vous ne devez pas choisir entre les deux. Dès que vous achetez une formation, vous disposez des deux options de consultation !

Le téléchargement vous permet de consulter la formation hors ligne et offre une interface plus conviviale. Si vous travaillez sur différents ordinateurs ou que vous ne voulez pas regarder la formation en une seule fois, connectez-vous sur cette page pour consulter en ligne les vidéos de la formation. Nous vous souhaitons un excellent apprentissage avec cette formation vidéo.

N'hésitez pas à nous contacter si vous avez des questions !