Atelier SysRes SE4 2025/2026 E2

De wiki-se.plil.fr
Aller à la navigation Aller à la recherche

Objectif

L'objectif est d'obtenir une architecture réseau complète et fonctionnelle délivrant des services tels que :

  • DNS et sa version sécurisée DNSSEC ;
  • SSH ;
  • HTTP et sa version sécurisée HTTPS.

Machines virtuelles

MV schema

Principe

Le première étape est de pouvoir sortir sur internet avec les trois VM de notre binôme.

Voir la page Atelier SysRes SE4 2025/2026 E1 de Pierre qui complète ma configuration pour plus d'informations.

Thème choisi

On a choisi le thème des liaisons dangereuses.

  • Machine virtuelle mandataire : SE4.Rosemonde
  • Machine virtuelle de Pierre : SE4.Merteuil
  • Ma machine virtuelle : SE4.Valmont
  • Commutateur virtuel entre les 2 VM élèves : pont_Gercourt

Création des MV

Capbreton

Capbreton est le commutateur de promotion sur lequel on créé nos vm. Pour s'y connecter :

ssh root@capbreton

Le mdp a été donné en cours par M.Redon.

Le bridge

Je commence par regarder la configuration réseau faite par Pierre pour notre commutateur :

root@capbreton:/etc/network/interfaces.d# cat SE42026_pcasimir_ahoudus
auto pont_Gercourt
iface pont_Gercourt inet manual
	bridge_ports none
	up ip link set $IFACE up
	down ip link set $IFACE down
  • iface : déclarer une interface réseau, ici en l'occurrence un bridge (~commutateur) virtuel.
  • inet : ipv4
  • manual : on ne déclare pas d’adresse ip donc ni static ni dynamic (dhcp)
  • bridge_ports none : on créé notre commutateur mais avec aucune interface réseau dessus. Les vm n’ont donc pas accès au réseau extérieur pour l’instant.

Création de SE4.Valmont

Commande pour créér une MV :

xen-create-image

On farfouille ensuite dans le man afin de trouver les paramètres à préciser.

root@capbreton:/etc/network/interfaces.d# xen-create-image --hostname=SE4.Valmont --dhcp --bridge=pont_Gercourt --dir=/usr/local/xen --size=10GB --dist=daedalus --memory=2048M --force

xen est l’outil qui permet de créer notre vm à l’instar de kvm utilisé au s7.

  • hostname : nom de ma vm
  • dhcp : allocation dynamique des adresses ip
  • bridge : commutateur virtuel
  • dir : répertoire où placer le fichier de conf de notre vm sur capbreton
  • size : taille de 10 Giga octets
  • dist : distribution linux utilisée, ici daedalus
  • memory : 2048 Megaoctets
  • force : force tous les paramètres précédents lors de la création

Résultat :

Installation Summary
---------------------
Hostname    	:  SE4.Valmont
Distribution	:  daedalus
MAC Address 	:  00:16:3E:D2:D4:02
IP Address(es)  :  dynamic
SSH Fingerprint :  SHA256:TfRzNoqs+pbOeAwAcYxqDEOYPA3Yb2y92bn6CTBKXb0 (DSA)
SSH Fingerprint :  SHA256:5aVsMgXLVM6MmRWuWcZczNuEaBs5Wm/g/y+lNBx7pfs (ECDSA)
SSH Fingerprint :  SHA256:gd9wXAtAnkxrxIPh2mwxu6P7otRWNsTLadBLqm3rZCQ (ED25519)
SSH Fingerprint :  SHA256:hECFwaJN0epOo9N4Qi2050ofL7eMKmNiBybKcpUcxM4 (RSA)
Root Password   : X

Il faut bien noter le Root Password X puisque l'on en aura besoin par la suite pour se connecter à notre VM. On peut voir tous les fichiers de configuration des vm qui existent à ce jour dans le répertoire /etc/xen/ :

root@capbreton:/var# ls /etc/xen/
aigle.cfg  	g8_router.cfg      	nyala.cfg     	oxenstored.conf  pteranodon.cfg  SE4.Merteuil.cfg   SE5-azongo.cfg	SE5.kelbachi.cfg  xend-pci-permissive.sxp  xlexample.hvm
bigorneau.cfg  hawker.cfg      	ornithorynque.cfg  palourde.cfg  	raptor.cfg  	SE4.Rosemonde.cfg  SE5-crhanim.cfg   SE5.vdetrez.cfg 	xend-pci-quirks.sxp  	xlexample.pvlinux
caribou.cfg	heterodontosaurus.cfg  oronge.cfg 	proxmox.cfg  	scripts  	SE4.Valmont.cfg	SE5-handrian.cfg  xend-config.sxp 	xl.conf

On repère alors bien le fichier de configuration de notre VM fraîchement créée : SE4.Valmont.cfg. Une fois notre vm créée, le fichier de configuration SE4.Valmont.cfg est apparu, on n’a plus qu’à le modifier :

root@capbreton:/etc/xen# vim SE4.Valmont.cfg

On modifie alors les “vif” : virtual interface et on ajoute les 2 commutateurs virtuels par lequel passera notre vm à savoir celui de notre binôme et celui de la promotion.

vif       = [ 'mac=00:16:3E:D2:D4:02,bridge=pont_Gercourt',
              'mac=00:16:3E:D2:D4:03,bridge=bridgeStudents']

Configuration de la machine de service

Système de fichiers

La prochaine étape est de créer un système de fichier pour notre vm.

On doit ainsi créer home et var comme répertoires. Sachant qu’un var usuel contient les librairies, les logs, les fichiers temporaires …

root@capbreton:/var# ls
backups  cache games  lib  local  lock  log  mail  opt  run  spool  tmp  www

Afin de monter les volumes logiques, on regarde le cours de M. Redon paragraphe 4.4 et l’on tape les commandes suivantes :

root@capbreton:/dev/virtual# lvcreate -L5G -nSE4.Valmont.var virtual
root@capbreton:/dev/virtual# lvcreate -L5G -nSE4.Valmont.home virtual

avec :

  • L: Logical Volume Size, ci 5Giga
  • n : name
  • virtual : nom du répertoire dans lequel seront ces volumes logiques.

On voit bien nos volumes logiques :

root@capbreton:/dev/virtual# ls

hawker-home   rex-2-swap   SE4.Apollo.var SE4.ElMordjene.home  SE4.Gtr-var SE4.jeanluc.home  SE4.Kratos.var SE4.Orion.home SE4.Rigo.var SE4.Valmont.home
hawker-var rex-3-disk  SE4.Atreus.home SE4.ElMordjene.var   SE4.Gyro-home  SE4.jeanluc.var   SE4.Merteuil.home  SE4.Orion.var   SE4.Rod.home SE4.Valmont.var
proxmox-disk  rex-3-swap   SE4.Atreus.var SE4.Gaby.home     SE4.Gyro.home  SE4.Jinx-home SE4.Merteuil.var SE4.Poseidon.home  SE4.Rod.var    SE4.Vi-home
proxmox-swap  rex-var       SE4.Bree.home SE4.Gaby.var     SE4.Gyro-var   SE4.Jinx-var  SE4.Moon.home SE4.Poseidon.var   SE4.Rosemonde.home SE4.Vi-var
rex-2-disk SE4.Apollo.home  SE4.Bree.var SE4.Gtr-home     SE4.Gyro.var   SE4.Kratos.home   SE4.Moon.var SE4.Rigo.home    SE4.Rosemonde.var

On retourne alors dans le fichier de configuration de notre VM et on ajoute les partitions /var et /home tout juste créées.

disk    = [
          'file:/usr/local/xen/domains/SE4.Valmont/disk.img,xvda2,w',
          'file:/usr/local/xen/domains/SE4.Valmont/swap.img,xvda1,w',
          'phy:/dev/virtual/SE4.Valmont.home,xvda3,w',
          'phy:/dev/virtual/SE4.Valmont.var,xvdb1,w'
            ]

avec :

  • phy : partition physique
  • /dev/virtual/SE4.Valmont.home : chemin vers la partition home
  • xvda3 : xen virtual disk numéro 3, zone a du disque
  • w : droits d’écriture

Lancement de la VM

On peut alors lancer notre vm. A noter que create est un faux ami puisqu’il lance juste la vm et que c’est la commande create-image qui crée réellement notre vm.

root@capbreton:/etc/xen# xen create SE4.Valmont.cfg
Parsing config from SE4.Valmont.cfg

root@capbreton:/etc/xen# xen list
Name                                 ID   Mem VCPUs State Time(s)
Domain-0                              0  4055 4 r-----  216582.9
SE5-handrian                         20  1024 1 -b---- 4898.2
SE5.kelbachi                         25  2048 1 -b---- 4028.6
SE5-crhanim                          29  2048 1 - b---- 2990.5
SE5-azongo                           34  1024 1 -b---- 204.7
SE5.vdetrez                          38  2048 1 -b---- 320.5
SE4.Merteuil                         44  2048 1 -b----  45.2
SE4.Rosemonde                        47  2048 1 -b---- 41.8
SE4.Valmont                          49  2048 1 -b----   3.3

SE4.Valmont existe, on peut à présent rentrer dans ma vm :

root@capbreton:/etc/xen# xen console SE4.Valmont
SE4 login: root
Password:
root@SE4:~#

Le mdp étant le fameux Root Password X mentionné plus haut.

Remarque : pour sortir de la VM : ctrl altgr crochet droit

Utilisation de vi

Nous sommes à présent dans la VM, mais comme rien n’est encore installé et que notre machine n’est pas encore reliée au réseau, il est nécessaire d’utiliser vi au lieu de vim.

Micro-guide de survie pour vi :
o retour à la ligne suivante
a after, lettre d’après
y puis p copier coller
yy copier ligne entière
d effacer ligne
x effacer un caractère

Monter les partitions

On regarde alors notre fichier fstab : /etc/fstab (File Systems Table) qui indique à Linux quoi monter, où, et comment, automatiquement au démarrage.

root@SE4:/etc# cat fstab

# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>   <dump>  <pass>
proc        /proc       proc defaults   0  0
devpts    /dev/pts    devpts  rw,noexec,nosuid,gid=5,mode=620 0  0
/dev/xvda1 none swap sw 0 0
/dev/xvda2 / ext4 noatime,nodiratime,errors=remount-ro 0 1
/dev/xvda3 /home ext4 defaults 0 2
/dev/xvdb1 /var ext4 defaults 0 2  

On a bien la configuration que l’on avait précisé dans notre vm.cfg On peut alors monter le système de fichier sur notre vm :

root@SE4:/etc# mkfs -t ext4 /dev/xvdb1

mke2fs 1.47.0 (5-Feb-2023)
Creating filesystem with 1310720 4k blocks and 327680 inodes
Filesystem UUID: 6ea1f244-2f1c-45b0-a5f6-6e486a2981eb
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736
Allocating group tables: done                      
Writing inode tables: done                      
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

Détail :

  • mkfs : make file system
  • t : type de système de fichier, ici ext4
  • xvdb1 : xen virtual disk b 1

On peut regarder ce qui est de monté pour l’instant dans le répertoire /mnt

root@SE4:/# ls /mnt

On monte le tout :

root@SE4:/# mount /dev/xvdb1 /mnt

[ 1067.865103] EXT4-fs (xvdb1): mounted filesystem with ordered data mode. Opts: (null)

root@SE4:/# mv /var/* /mnt

On peut alors démonter notre syst de fichier de /mnt car /mnt répertoire temporaire ?

root@SE4:/etc# umount /mnt

On montre l'autre partition :

root@SE4:/etc# mkfs -t ext4 /dev/xvda3

mke2fs 1.47.0 (5-Feb-2023)
Creating filesystem with 1310720 4k blocks and 327680 inodes
Filesystem UUID: c0267bea-d6a4-4737-b66a-84f5907d730a
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736
Allocating group tables: done                    
Writing inode tables: done                      
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

On monte tout (a :all) :

root@SE4:/etc# mount -a

[ 1163.659170] EXT4-fs (xvda3): mounted filesystem with ordered data mode. Opts: (null)
[ 1163.694459] EXT4-fs (xvdb1): mounted filesystem with ordered data mode. Opts: (null)

On a bien le répertoire var créé :

root@SE4:/# ls /var
backups  cache lib  local  lock  log  lost+found  mail  opt  run  spool  tmp

Acces à Internet (Ping)

IPV4

On liste alors les paquets déjà présents sur notre vm :

root@SE4:/# dpkg -l

On doit alors configurer notre fichier /etc/network/interfaces afin de rajouter une interface réseau eth1 pour accéder à internet et installer des paquets comme vim par exemple.

root@Valmont:~# vi /etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback

# pour pont_gercourt
auto eth0
iface eth0 inet static
    up ip link set $IFACE up
    down ip link set $IFACE down
    address 192.168.3.3/27
   # gateway 192.168.3.1
   
# pour bridge_students
auto eth1
iface eth1 inet dhcp
   # up ip link set $IFACE up
   # down ip link set $IFACE down

Remarque : pour l’instant, on ne se sert pas d’eth0 et on sort sur internet juste avec eth1 via bridge_students. On doit ensuite activer les interfaces réseaux :

root@Valmont:~# ifdown eth0 ; ifup eth0
root@Valmont:~# ifdown eth1 ; ifup eth1

Même si l’interface eth0 ne nous est pas utile pour l’instant, il faut tout de même l’activer afin qu’elle soit reconnue et que l’on comprenne que l’on a deux interfaces. On teste ensuite la connexion ipv4

root@Valmont:~# ping -4 google.com
PING  (142.250.74.238) 56(84) bytes of data.
64 bytes from par10s40-in-f14.1e100.net (142.250.74.238): icmp_seq=1 ttl=113 time=5.18 ms
64 bytes from par10s40-in-f14.1e100.net (142.250.74.238): icmp_seq=2 ttl=113 time=5.17 ms
64 bytes from par10s40-in-f14.1e100.net (142.250.74.238): icmp_seq=3 ttl=113 time=5.20 ms
64 bytes from par10s40-in-f14.1e100.net (142.250.74.238): icmp_seq=4 ttl=113 time=5.90 ms
64 bytes from par10s40-in-f14.1e100.net (142.250.74.238): icmp_seq=5 ttl=113 time=5.27 ms
64 bytes from par10s40-in-f14.1e100.net (142.250.74.238): icmp_seq=6 ttl=113 time=5.79 ms
^C
---  ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5006ms
rtt min/avg/max/mdev = 5.171/5.417/5.896/0.304 ms
IPV6

On peut aussi ping en ipv6 cependant il faut mettre l’@ip de ggl car dans /etc/resolv.conf, le nom google est pas résolu.

Contenu de /etc/resolv.conf sans google :

root@Valmont:~# cat /etc/resolv.conf
domain plil.info
search plil.info
nameserver 172.26.188.12

La preuve en image :

root@Valmont:~# ping -6 google.com

PING google.com(par10s38-in-x0e.1e100.net (2a00:1450:4007:805::200e)) 56 data bytes
^CFrom 2001:660:4401:113::1 icmp_seq=1 Destination unreachable: No route
--- google.com ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms

L’ip de google est disponible sur le net : https://fr.wikipedia.org/wiki/Google_Public_DNS Et ça marche :

root@Valmont:~# ping -6 2001:4860:4860::8888

PING 2001:4860:4860::8888(2001:4860:4860::8888) 56 data bytes
64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=113 time=4.05 ms
64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=113 time=4.06 ms
64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=113 time=3.97 ms
64 bytes from 2001:4860:4860::8888: icmp_seq=4 ttl=113 time=3.95 ms
64 bytes from 2001:4860:4860::8888: icmp_seq=5 ttl=113 time=3.95 ms
64 bytes from 2001:4860:4860::8888: icmp_seq=6 ttl=113 time=3.99 ms
^C
--- 2001:4860:4860::8888 ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 5006ms
rtt min/avg/max/mdev = 3.948/3.993/4.064/0.045 ms

ou plus simplement :

root@Valmont:~# host google.com
google.com has address 142.250.74.238
google.com has IPv6 address 2a00:1450:4007:80b::200e
google.com mail is handled by 10 smtp.google.com.
root@Valmont:~# ping 2a00:1450:4007:80b::200e
PING 2a00:1450:4007:80b::200e(2a00:1450:4007:80b::200e) 56 data bytes
From 2001:660:4401:113::1 icmp_seq=1 Destination unreachable: No route
From 2001:660:4401:113::1 icmp_seq=2 Destination unreachable: No route
From 2001:660:4401:113::1 icmp_seq=3 Destination unreachable: No route
^C
--- 2a00:1450:4007:80b::200e ping statistics ---
3 packets transmitted, 0 received, +3 errors, 100% packet loss, time 2004ms

Installation paquetages réseau

On installe ensuite les paquets nécessaires mentionnés dans le sujet, à savoir :

  • bind9 (au lieu de bind) pour le serveur DNS
  • apache2 pour le serveur web

On installe également :

  • vim pour la survie
  • ntp ntpdate afin que nos vm connaissent la date
root@Valmont:~# apt install bind9
root@Valmont:~# apt install apache2
root@Valmont:~# apt install vim
root@Valmont:~# apt install ntp ntpdate

Configuration de la machine mandataire

Modification configuration réseau et installation paquetages réseau

On procède pour Rosemonde de la même manière que l'on a fait pour Valmont.

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
    	address 192.168.3.1/24

auto eth1
iface eth1 inet6 auto

iface eth1 inet static
    	address 193.48.57.165/27
    	gateway 193.48.57.163

Mascarade

On configure la mascarade à l'aide d'iptables.

root@Rosemonde:~# apt install iptables

Explications ici : https://rex.plil.fr/Enseignement/Reseau/Reseau.SE5/reseau044.html Notre configuration :

root@Rosemonde:~# cat /etc/iptables/rules.v4
# Generated by iptables-save v1.8.9 (nf_tables) on Thu Jan 22 18:31:33 2026
*nat
:PREROUTING ACCEPT [0:0]
:INPUT ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:POSTROUTING ACCEPT [0:0]
-A PREROUTING -d 193.48.57.165/32 -p tcp -m tcp --dport 2020 -j DNAT --to-destination 192.168.3.2
-A PREROUTING -d 193.48.57.165/32 -p tcp -m tcp --dport 2021 -j DNAT --to-destination 192.168.3.3
-A POSTROUTING -s 192.168.3.0/29 -j MASQUERADE
COMMIT
# Completed on Thu Jan 22 18:31:33 2026

On peut à présent se connecter en ssh sur nos machines directement depuis la mandataire avec précision du port (2021 pour Valmont) plutôt que de repasser par Capbreton.

ahouduss@zabeth15:~$ ssh root@193.48.57.165 -p 2021
root@193.48.57.165's password:
root@Valmont:~# ping -4 8.8.8.8
PING 8.8.8.8 (8.8.8.8) 56(84) bytes of data.
64 bytes from 8.8.8.8: icmp_seq=1 ttl=111 time=3.94 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=111 time=4.44 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=111 time=4.25 ms
^C
--- 8.8.8.8 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2003ms
rtt min/avg/max/mdev = 3.936/4.209/4.438/0.207 ms

Première architecture réseau

arch

Principe

Le but est de réaliser le montage ci-contre.

On connecte le local technique en E200, le SR52 (vlan1) et capbreton de la E306 (vlan 530) au C9200 en E304.

Le routage de site (IPv4)

Configurer le routeur avec un mot de passe administrateur

C9200-E304>enable
C9200-E304#conf t
C9200-E304(config)#enable secret X

Avec X le même mdp que pour Capbreton

Configuration SSH

C9200-E304(config)#aaa new-model                                                                 	 
C9200-E304(config)#username admin privilege 15 secret X
C9200-E304(config)#ip domain-name plil.info                                                      	 
C9200-E304(config)#crypto key generate rsa                                                       	 
How many bits in the modulus [1024]: 2048         
C9200-E304(config)#line vty 0 15                                                                 	 
C9200-E304(config-line)#transport input ssh

Accès SSH restreint

C9200-E304(config)#access-list 23 permit 172.26.0.0 0.0.255.255                                  	 
C9200-E304(config)#access-list 23 permit 193.48.57.0 0.0.0.255                                   	 
C9200-E304(config)#line vty 0 15                                                                 	 
C9200-E304(config-line)#access-class 23 in

On vérifie que les règles ont bien été appliquées :

C9200-E304#show run
… 
line vty 0 4 
access-class 23 in
transport input ssh 
line vty 5 15
access-class 23 in
transport input ssh 
! 
end

Désactivation de serveurs web

C9200-E304(config)#no ip http ?                                                                  	 
 …
  secure-server              	Enable HTTP secure server                                       	 
  secure-trustpoint          	Set http secure server certificate trustpoint                   	 
  server                     	Enable http server                                              	 
 …       
                                                                                                 	    
C9200-E304(config)#no ip http server                                                             	 
C9200-E304(config)#no ip http secure-server

Désactiver la configuration automatique des VLAN

C9200-E304#conf t
C9200-E304(config)#vtp mode transparent
Setting device to VTP Transparent mode for VLANS.

Vérification licence

C9200-E304(config)#license boot level network-advantage                                          	 
% use 'write' command to make license boot config take effect on next boot

vérifier que la licence a bien été activée : 

C9200-E304#sh license all                                                                        	 
Smart Licensing Status                                                                           	 
======================                                                                           	 
                                                                                                 	 
Smart Licensing is ENABLED

Interconnexion avec Internet (IPv4)

Configuration du vlan 2 = vlan MV-PROMO du C9200 de la E304 vers CAPBRETON

C9200-E304(config)#vlan 2                                                                   	 
C9200-E304(config-vlan)#name MV-PROMO                                                            	 
C9200-E304(config-vlan)#exit                                                                     	 
C9200-E304(config)#int vlan2              
C9200-E304(config-if)#ip address 193.48.57.163 255.255.255.224
C9200-E304#sh int status     
Port     	Name           	Status   	Vlan   	Duplex  Speed Type     
...
Te1/1/4                     	connected	1        	full	10G SFP-10GBase-SR
C9200-E304(config)#int te1/1/4                                                                   	 
C9200-E304(config-if)#switchport                                                                 	 
C9200-E304(config-if)#switchport mode access                                                     	 
C9200-E304(config-if)#switchport access vlan 2
C9200-E304#sh run int te1/1/4                                                                    	 
Building configuration...                                                                        	 
                                                                                                 	 
Current configuration : 91 bytes                                                                 	 
!                                                                                                	 
interface TenGigabitEthernet1/1/4                                                                	 
 switchport access vlan 2                                                                        	 
 switchport mode access                                                                          	 
end
C9200-E304#sh int status             
...
Port     	Name           	Status   	Vlan   	Duplex  Speed Type     
Te1/1/4                     	connected	2        	full	10G SFP-10GBase-SR
Building configuration...                                                                        	 
                                                                                                 	 
Current configuration : 65 bytes                                                                 	 
!                                                                                                	 
interface Vlan2                                                                                  	 
 ip address 193.48.57.163 255.255.255.224                                                        	 
end

Activation du LLDP (Link Layer Discovery Protocol)

C9200-E304(config)#lldp ?                                                                        	 
  holdtime	Specify the holdtime (in sec) to be sent in packets                                	 
  reinit  	Delay (in sec) for LLDP initialization on any interface                            	 
  run     	Enable LLDP                                                                        	 
  timer   	Specify the rate at which LLDP packets are sent (in sec)                           	 
  tlv-select  Selection of LLDP TLVs to send                                                     	 

C9200-E304(config)#lldp run

Configuration du vlan 530 = vlan INTERCO1 du C9200 de E304 vers la PLATEFORME

C9200-E304(config)#vlan 530                                                                      	 
C9200-E304(config-vlan)#name INTERCO1                                                            	 
C9200-E304(config-vlan)#exit                                                                     	 
C9200-E304(config)#interface Te1/1/1                                                             	 
C9200-E304(config-if)#switchport                                                                 	 
C9200-E304(config-if)#switchport mode access              
C9200-E304(config-if)#switchport access vlan 530
C9200-E304(config)#interface vlan 530                                                            	 
C9200-E304(config-if)#ip address 192.168.222.66 255.255.255.240

Ping

C9200-E304#ping 192.168.222.65                                                                   	 
Type escape sequence to abort.                                                                   	 
Sending 5, 100-byte ICMP Echos to 192.168.222.65, timeout is 2 seconds:                          	 
!!!!!                                                                                            	 
Success rate is 100 percent (5/5), round-trip min/avg/max = 1/2/4 ms

Remarque : sortie sur internet depuis la plateforme

On ne sait par quel routeur de la plateforme on sort sur internet donc M.Redon se connecte à ses machines.

ahouduss@zabeth15:~$ ssh rex@vervins.plil.fr
rex@vervins:~$ ip r
195.101.204.144/28 dev eth0  proto kernel  scope link  src 195.101.204.147
default via 195.101.204.158 dev eth0 onlink
rex@vervins:~$  ping 193.48.57.163
PING 193.48.57.163 (193.48.57.163) 56(84) bytes of data.
64 bytes from 193.48.57.163: icmp_seq=1 ttl=236 time=7.67 ms
64 bytes from 193.48.57.163: icmp_seq=2 ttl=236 time=7.78 ms
64 bytes from 193.48.57.163: icmp_seq=3 ttl=236 time=7.73 ms
^C
--- 193.48.57.163 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2004ms
rtt min/avg/max/mdev = 7.678/7.733/7.783/0.083 ms
rex@vervins:~$ traceroute 193.48.57.163
traceroute to 193.48.57.163 (193.48.57.163), 30 hops max, 60 byte packets
1  orouter.plil.fr (195.101.204.158)  0.135 ms * *
2  81.54.57.45 (81.54.57.45)  0.524 ms  0.501 ms  0.474 ms
3  lag-43.lil2-ig8.lille.transitip.raei.francetelecom.net (81.52.79.130)  0.739 ms  0.713 ms  0.686 ms
4  ae72-0.nmlil207.rbci.orange.net (81.253.183.9)  0.547 ms ae72-0.nmlil208.rbci.orange.net (81.253.183.13)  0.810 ms  0.790 ms
5  ae26-0.nclil201.rbci.orange.net (81.253.181.166)  0.533 ms  0.508 ms  0.499 ms
6  ae41-0.nilil101.rbci.orange.net (81.253.129.29)  0.562 ms ae41-0.nilil102.rbci.orange.net (193.252.100.109)  0.603 ms ae41-0.nilil101.rbci.orange.net (81.253.129.29)  0.533 ms
7  bundle-ether132.sgren192.rbci.orange.net (81.253.129.58)  0.860 ms  0.875 ms  0.971 ms
8  * * *
9  * * *
10  ae8.cr6-par11.ip4.gtt.net (141.136.110.229)  4.527 ms  4.571 ms  4.549 ms
11  te-0-2-0-2-ren-nr-lille-rtr-091.noc.renater.fr (193.51.180.87)  6.755 ms ip4.gtt.net (212.222.6.69)  3.889 ms  3.879 ms
12  193.51.190.243 (193.51.190.243)  6.509 ms  6.529 ms te0-1-0-3-ren-nr-lille-rtr-091.noc.renater.fr (193.51.177.60)  7.009 ms
13  193.51.190.243 (193.51.190.243)  6.496 ms * *
14  * * *
15  * **^C

On voit bien ici que la machine possédant l’adresse 193.48.57.163 sort sur internet puisqu’elle passe sur orange puis renater.

OSPF

L'OSPF est bien configuré :

C9200-E304#sh run         
...
router ospf 1                                                              	 
 router-id 192.168.222.66                                                  	 
 redistribute connected metric 10                                          	 
 network 192.168.222.64 0.0.0.15 area 10                                   	 
!

Le routage de site (IPv6)

C9200-E304(config)#interface vlan 1                                        	 
C9200-E304(config-if)#ipv6 enable

On a à présent nos 2 vlan

C9200-E304#show vlan
…    	 
2	MV-PROMO                     	active	Te1/1/4                    	 
530  INTERCO1                     	active	Te1/1/1
C9200-E304#show ipv6 interface vlan 1                                      	 
Vlan1 is up, line protocol is up                                           	 
  IPv6 is enabled, link-local address is FE80::6A9E:BFF:FE46:5A47
C9200-E304#show ipv6 interface brief                                       	 
Vlan1              	[up/up]                                             	 
	FE80::6A9E:BFF:FE46:5A47                                               	 
Vlan2              	[up/up]                                             	 
	FE80::6A9E:BFF:FE46:5A77                                               	 
Vlan530            	[up/up]                                             	 
	unassigned
C9200-E304(config)#interface vlan 2                                        	 
C9200-E304(config-if)#ipv6 enable                                         	 
C9200-E304(config-if)#ipv6 address 2001:660:4401:60A0::/64 eui-64          	 
C9200-E304(config-if)#ipv6 nd prefix 2001:660:4401:60A0::/64 1000 900      	 
C9200-E304(config-if)# ipv6 nd router-preference high
C9200-E304#ipv6 unicast-routing

Interconnexion avec Internet (IPv6)

Configuration RIPv6 du routeur de la plateforme

C9200-E304(config)#ipv6 router rip tpse                                    	 
C9200-E304(config-rtr)#redistribute connected metric 1                     	 
C9200-E304(config-rtr)#redistribute rip 1 metric 1                         	 
C9200-E304(config-rtr)#redistribute static metric 1
C9200-E304(config)#interface vlan 530                                      	 
C9200-E304(config-if)#ipv6 enable                                 	 
C9200-E304(config-if)#ipv6 address  fe80::10 link-local                    	 
C9200-E304(config-if)#ipv6 rip tpse enable

Route

C9200-E304#sh ipv6 route                                                   	 
IPv6 Routing Table - default - 7 entries                                   	 
Codes: C - Connected, L - Local, S - Static, U - Per-user Static route     	 
   	B - BGP, R - RIP, H - NHRP, I1 - ISIS L1                            	 
   	I2 - ISIS L2, IA - ISIS interarea, IS - ISIS summary, D - EIGRP     	 
   	EX - EIGRP external, ND - ND Default, NDp - ND Prefix, DCE - Destination
   	NDr - Redirect, O - OSPF Intra, OI - OSPF Inter, OE1 - OSPF ext 1   	 
   	OE2 - OSPF ext 2, ON1 - OSPF NSSA ext 1, ON2 - OSPF NSSA ext 2      	 
   	la - LISP alt, lr - LISP site-registrations, ld - LISP dyn-eid      	 
   	lA - LISP away, le - LISP extranet-policy, lp - LISP publications   	 
R   ::/0 [120/2]                                                           	 
 	via FE80::1, Vlan530                                                  	 
R   2001:660:4401:6011::/64 [120/2]                                        	 
 	via FE80::1, Vlan530                                                  	 
R   2001:660:4401:60A0::/60 [120/2]                                        	 
 	via FE80::1, Vlan530                                                  	 
C   2001:660:4401:60A0::/64 [0/0]                                          	 
 	via Vlan2, directly connected                                         	 
L   2001:660:4401:60A0:6A9E:BFF:FE46:5A77/128 [0/0]                        	 
 	via Vlan2, receive                                                    	 
R   2001:660:4401:60B0::/60 [120/2]                                        	 
 	via FE80::1, Vlan530                                                  	 
L   FF00::/8 [0/0]                                                         	 
 	via Null0, receive

Ping

C9200-E304#ping 2a00:1450:4007:80b::200e                                   	 
Type escape sequence to abort.                                             	 
Sending 5, 100-byte ICMP Echos to 2A00:1450:4007:80B::200E, timeout is 2 second:
!!!!!                                                                      	 
Success rate is 100 percent (5/5), round-trip min/avg/max = 4/4/4 ms

Deuxième architecture réseau : redondance de routeurs (ajout E306)

Principe

On refait toutes les étapes décrites dans la section "Première architecture réseau" mais pour le routeur présent en E306 cette fois.

Deux modifications à noter toutefois :

  • l'ajout de l'option metric d'une valeur différente du routeur en E304 afin de définir un routeur prioritaire.
  • l'ajout du protocole VRRP ou Virtual Router Redundancy Protocol qui permet à plusieurs routeurs physiques de partager une même adresse IP virtuelle, assurant ainsi la continuité de service si l'un d'eux tombe en panne.

Priorités

En faisant un

C9200-E306#sh run

on voit alors les droits que l'on a configuré selon la version ip

IPV4

router ospf 1                                                                   
 router-id 193.48.57.164                                                        
 summary-address 10.0.0.0 255.0.0.0                                             
 redistribute static metric 20                                                  
 network 192.168.222.64 0.0.0.15 area 10                                        
!

Le routeur d'E306 a une métrique 20 et celui d'E304 10, donc celui d'E304 est bien prioritaire pour évacuer le trafic.

IPV6

ipv6 router rip tpse                                                            
 redistribute connected metric 1                                                
 redistribute static metric 1                                                   
 redistribute rip 1 metric 1                    
!

VRRP

Plan d'adressage :

IPv4
Adresse IPv4 virtuelle 193.48.57.162
C9200 E304 193.48.57.163
C9200 E306 193.48.57.164

Installation de vrrp v3 donc les commandes ne sont pas les memes que dans le sujet.

C9200-E304(config)#fhrp version vrrp v3
C9200-E304(config)#int vlan2                                    	                            	 
C9200-E304(config-if)#vrrp 1 address-family ipv4                           	 
C9200-E304(config-if-vrrp)#address 193.48.57.162                           	   
C9200-E304(config-if-vrrp)#preempt                                         	 
C9200-E304(config-if-vrrp)#priority 110

On configure de même pour la E306.

Après avoir fait les 2 vrrp et le virtuel on reload le routeur de la E304 on a bien le relai sur la E306 avec ping 8.8.8.8 de rosemonde.

Remarque connexions fibres

Comme on n'est pas sur du matériel Cisco comme au s7 mais Dell, la commande pour savoir quelle interface est reliée à quoi est :

root@capbreton:~# ethtool -p etherX

avec X le numéro de l'interface que l'on veut allumer afin de repérer la connexion.

Borne Wi-Fi E306

ahouduss@zabeth15:~$ ssh pifou@zabeth30
pifou@zabeth30:~$ sudo minicom -D /dev/ttyUSB1 -b 9600
ap(config)#int bvi1
ap(config-if)#ip address 172.27.0.3 255.255.0.0

Résumé adressage

Elément Adresse
Routeur C9200-E304 172.27.0.1/16
Routeur C9200-E306 172.27.0.2/16
Borne Wi-Fi E306 172.27.0.3/16
Borne Wi-Fi E304 172.27.0.4/16

Services

DNS

On créé notre zone :

$TTL	604800
@	IN	SOA	ns.valmont.tech.	admin.valmont.tech. (
        	20260126	; Serial (numero de version)
         	604800    	; Refresh
          	86400    	; Retry
        	2419200    	; Expire
         	604800 )	; Negative Cache TTL
;

@	IN	NS	ns.valmont.tech.
@	IN	NS	ns.merteuil.tech.

ns	IN	A	193.48.57.165	
ns	IN	AAAA	2001:660:4401:60a0:216:3eff:fed2:d403
@	IN	A	193.48.57.165
@	IN	AAAA	2001:660:4401:60a0:216:3eff:fed2:d403 

www 	IN 	CNAME 	valmont.tech.

Puis on modifie notre fichier de configuration de zones :

zone "valmont.tech" {
  type primary;  // version politiquement correcte de master
  file "/etc/bind/zones/valmont.tech/valmont.zone";
};

zone "merteuil.tech" {
  type secondary;  // version politiquement correcte de master
  primaries { 2001:660:4401:60a0:216:3eff:fe47:bbe7; } ;
  file "/etc/bind/backup/merteuil.tech.zone";
};

On fait également la zone DNS de Rosemonde notre mandataire.

DNSSEC

On ajoute ceci à notre configuration :

dnssec-policy "dnspol" {                                                            
   keys {                                                                           
       ksk key-directory lifetime unlimited algorithm 13;                           
       zsk key-directory lifetime unlimited algorithm 13;                           
   };                                                                               
   nsec3param;                                                                      
};

Serveur web

<VirtualHost *:80>
	ServerName valmont.tech

	ProxyPass / http://[2001:660:4401:60a0:216:3eff:fed2:d403]/
	ProxyPassReverse / http://[2001:660:4401:60a0:216:3eff:fed2:d403]/
</VirtualHost>


<IfModule mod_ssl.c>
<VirtualHost *:443>
	ServerName valmont.tech

	SSLEngine on
	SSLProxyEngine on
	ProxyPreserveHost on

	SSLCertificateFile /etc/ssl/csr/valmont.tech.csr
	SSLCertificateKeyFile /etc/ssl/private/valmont.tech.key
	SSLCertificateChainFile /etc/ssl/certs/GANDI/GandiCert.pem

	ProxyPass / https://[2001:660:4401:60a0:216:3eff:fed2:d403]/
	ProxyPassReverse / https://[2001:660:4401:60a0:216:3eff:fed2:d403]/

</VirtualHost>
</IfModule>
site

Filtrage des services

root@Valmont:~# apt install fail2ban

Configuration :

[sshd]
enable  = true
port	= ssh
filter  = sshd
maxretry = 3
findtime = 300
bantime  = 600

Effraction WiFi

Les craquantes ckracottes

Cassage de clef WEP d’un point d’accès WiFi

Cassage de mot de passe WPA-PSK par force brute

Sécurisation WiFi par WPA2-EAP