Administration réseau sous Linux/TP Netfilter

Préalable

modifier
  • tiny et bigboss doivent être lancés (voir TP VDN)
  • le réseau de bigboss doit être configuré (lancez ~reseaux/vdn-0.6/scripts/bigbossBaseConfig si ce n'est pas déjà fait)
  • le réseau de tiny doit être configuré (voir TP Configuration réseau)
  • Apache doit être configuré


Introduction

modifier
  • Lire le wikilivre sur Netfilter
  • Afficher les règles contenues dans les chaînes INPUT, OUTPUT et FORWARD sur bigboss. Il ne devrait y en avoir aucune.
  • créez des scripts pour écrire vos règles voir ici.
  • Attention l'interface eth1, utilisée par les systèmes virtuels ne doit pas être bloquée !
  • Ajoutez sur bigboss (de préférence grâce à un script) une règle dans la chaîne INPUT qui enverra sur la cible LOG toutes les trames ICMP reçues.
  • Affichez les règles de cette chaîne et vérifier que celle ajoutée apparaît.
  • Lancer un ping de tiny vers bigboss
  • Vérifiez que les paquets sont affichés. S'ils ne le sont pas, ouvrir un terminal sur bigboss et lancer la commande tail -f /var/log/kern.log
  • Faites un ping de bigboss vers une adresse IP inconnue (par exemple 1.2.3.4) et constatez le résultat.

Politique de blocage par défaut

modifier
  • Lancez le serveur Web et vérifiez qu'il fonctionne.
  • Créez un script, pour tout interdire.

ATTENTION: L’INTERFACE ETH1 NE DOIT PAS ÊTRE BLOQUÉE : si vous utilisez une police par défaut il faut ensuite re-autoriser eth1. Le plus simple est peut être d'interdire l'accès pour eth0 (2 règles). À vous de voir.

  • Lancez votre script et vérifiez que le serveur Web n'est plus joignable.

Autorisation d'accès

modifier
  • Ajouter les règles autorisant l'accès au serveur telnet sur bigboss et testez à partir de tiny (commande telnet).
  • Ajoutez les règles permettant l'accès au serveur Web de bigboss à partir de tiny.
  • Quels sont les adresses IP et les ports autorisés en source ? en destination ?
  • Vérifier que le serveur Web est de nouveau joignable.
  • Faites de même avec l'autorisation d'accès à la commande ping. Et seulement ping pas pour tout ICMP. (il faut utiliser l'option --icmp-type avec echo-request ou echo-reply).