Previous Up Next

8  Corrigé du DS du 16 janvier 2018

Tous documents autorisés. Répondez directement sur l’énoncé. Vous trouverez la correction sur le site web habituel.

8.1  Présentation de l’examen

Cet examen passe en revue tous les aspects de configuration IP, d’isolation et de virtualisation vus en cours. L’idée est de vous faire étudier un système de serveurs Web installés dans une machine virtuelle, chaque serveur Web étant isolé au sein d’un conteneur. Pour une isolation encore plus complète et pour de meilleures performances, les serveurs Web peuvent être connectés sur des VLANs différents.

Il va vous être demandé de configurer l’ensemble du système y compris les équipements réseau et y compris une station de test des serveurs Web. Le schéma du dispositif est donné par la figure ci-dessous :

Quelques explications sur le schéma :

Les réseaux IPv4 sont définis comme suit :

8.2  Exercice de configuration du routeur

Donnez la configuration du routeur pour permettre une communication non restreinte entre les différents réseaux IPv4 et avec internet. On suppose que le routeur d’accès à Internet a comme adresse IPv4 dans VLAN42 172.16.0.198. Il est demandé d’affecter aux interfaces du routeur les premières adresses utilisables des réseaux IPv4. Il est indiqué que ce type de routeur se configure avec la méthode des interfaces "vlan". Il n’est pas demandé de configurer un mot de passe.

> enable
# configure terminal
(config)# interface gigabitEthernet0 
(config-if)# switchport 
(config-if)# switchport trunk encapsulation dot1q 
(config-if)# switchport mode trunk 
(config-if)# exit 
(config)# interface vlan2 
(config-if)# ip address 10.187.0.1 255.255.0.0 
(config-if)# exit 
(config)# interface vlan3 
(config-if)# ip address 10.218.0.1 255.255.0.0 
(config-if)# exit
(config)# interface vlan4 
(config-if)# ip address 10.53.0.1 255.255.0.0 
(config-if)# exit 
(config)# interface vlan10 
(config-if)# ip address 192.168.51.1 255.255.255.0 
(config-if)# exit 
(config)# interface vlan42 
(config-if)# ip address 172.16.0.193 255.255.255.248 
(config-if)# exit 
(config)# ip route 0.0.0.0 0.0.0.0 172.16.0.198 
(config)# exit 
# write 

8.3  Exercice de configuration du commutateur

Donnez la configuration du commutateur pour qu’il se comporte comme indiqué dans la présentation. Il n’est pas demandé de configurer un mot de passe ni de configurer une adresse IPv4 de gestion.

> enable 
# configure terminal 
(config)# interface gigabitEthernet0/1 
(config-if)# switchport 
(config-if)# switchport trunk encapsulation dot1q 
(config-if)# switchport mode trunk 
(config-if)# exit 
(config)# interface gigabitEthernet0/2 
(config-if)# switchport 
(config-if)# switchport mode access 
(config-if)# switchport access vlan 10 
(config-if)# exit 
(config)# interface gigabitEthernet1/1
(config-if)# switchport 
(config-if)# switchport mode access 
(config-if)# switchport access vlan 2 
(config-if)# exit
(config)# interface gigabitEthernet1/2 
(config-if)# switchport 
(config-if)# switchport mode access 
(config-if)# switchport access vlan 3
(config-if)# exit
(config)# interface gigabitEthernet1/3 
(config-if)# switchport
(config-if)# switchport mode access 
(config-if)# switchport access vlan 4
(config-if)# exit
(config)# exit 
# write 

8.4  Exercice de configuration réseau de la station

Donnez une configuration réseau possible de la station de test. Vous devez effectuer une configuration pérenne. Il n’existe pas de serveur DHCP utilisable sur le réseau.

# cat /etc/network/interfaces
auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
  address 192.168.51.42
  netmask 255.255.255.0
  gateway 192.168.51.1

8.5  Exercice sur la configuration du serveur de virtualisation

Deux aspects de la configuration du serveur de virtualisation sont abordés.

  1. Le serveur dispose de deux disques de 5To accessibles via les fichiers spéciaux /dev/sdu et /dev/sdb. Donnez les commandes permettant de créer un groupe de volumes LVM avec ces deux disques et de créer une partition virtuelle de 500Go pour la machine virtuelle.
    # pvcreate /dev/sdu /dev/sdb
    # vgcreate storage /dev/sdu /dev/sdb
    # lvcreate -L500G -nweb storage
    
  2. Donnez l’extrait du fichier de configuration permettant de créer à chaque démarrage du serveur le commutateur virtuel bridgeVLAN2.
    # cat /etc/network/interfaces
    ...
    auto eth0
    iface eth0 inet manual
    up ip link set $IFACE up
    
    auto bridgeVLAN2
    iface bridgeVLAN2 inet manual
    bridge_ports eth0
    ...
    

8.6  Exercice sur la configuration de la machine virtuelle

Il vous est demandé d’intuiter des extraits du fichier de configuration de la machine virtuelle suffixé .cfg .

  1. Donnez la valeur du mot clef disk dans le fichier de configuration.
    # grep "disk  *= " web.cfg 
    disk = [ 'phy:/dev/storage/web,xvda1,w' ]
    
  2. Donnez la valeur du mot clef vif dans le fichier de configuration.
    # grep "vif  *= " web.cfg 
    vif = [ 
      'mac=00:00:00:00:00:01, bridge=bridgeVLAN2', \ 
      'mac=00:00:00:00:00:02, bridge=bridgeVLAN3', \ 
      'mac=00:00:00:00:00:03, bridge=bridgeVLAN4' ]
    

8.7  Exercice sur la configuration d’un conteneur

Pour cet exercice vous supposerez les points suivants acquis :

Donnez le script shell permettant de réaliser les opérations suivantes :

# cat C_create.sh
#!/bin/sh
if [ $# != 2 ] ; then
  echo "Usage: `basename $0` <container> <bridge>" >&2
  exit
fi
dir=$1
br=$2
image=/usr/local/containers/$dir/disk.img
root=/var/lib/containers/$dir
test -f $image || ( echo "Cannot found image" >&2; exit )
mkdir -p $root || ( echo "Cannot create root" >&2; exit )
mount -o loop $image $root
if [ $? -ne 0 ] ; then echo "Bad image" >&2 ; exit ; fi
nohup unshare -p -f -m -n -u chroot $root /etc/rc.local &
pid=$!
ip link add vif type veth peer name eth0@vif1
ip link set vif master $br
if [ $? -ne 0 ] ; then kill $pid ; echo "Bad bridge" >&2 ; exit ; fi
ip link set eth0@vif netns /proc/$pid/ns/net name eth0

8.8  Exercice sur la copie d’un site Web

Pour cet exercice vous devez supposer que vous vous trouvez à travailler physiquement sur le serveur de virtualisation. Vous voulez transférer les fichiers d’un site Web qui se trouvent à la racine d’une clef USB dans le répertoire adéquat de votre conteneur. Vous allez donc connecter la clef USB sur le serveur de virtualisation. Donnez ensuite les commandes à taper pour effectuer le transfert sachant que le conteneur est, à ce moment, arrêté. Pour vous aider, voici le résultat de la commande lsusb après insertion de la clef USB :

# lsblk -o NAME -i
NAME
sdu
sdb
sde
`-sde1
sr0
# mkdir -p /tmp/mnt1 /tmp/mnt2 
# mount /dev/sde1 /tmp/mnt1
# mount -o loop /usr/local/containers/web48/disk.img /tmp/mnt2
# cp -ar /tmp/mnt1/* /tmp/mnt2/var/www/html
# umount /tmp/mnt[12]

Previous Up Next