TP sysres IMA5sc 2018/2019 G2

De Wiki d'activités IMA
Révision datée du 17 décembre 2018 à 15:31 par Qboens (discussion | contributions) (Création du RAID)

TP GIS4 - Conteneur réalisation manuelle

Création des systèmes fichier

Dans le répertoire /home/pifou/Documents/IMA5/JDQB/PRA/ (Zabeth09)

 dd if=/dev/zero of=disk1 bs=1024k count=10240
 mkfs disk1

Dans /tmp création de répertoires pour le stockage

 mkdir JDQB_DISK1
 mkdir JDQB_DISK2
 mkdir JDQB_DISK3
 mount -o loop disk1 /tmp/JDQB_DISK1
 debootstrap --include=apache2,nano stable /tmp/JDQB_DISK1
 echo "proc /proc defaults 0 0" >> /tmp/JDQB_DISK1/etc/fstab
 umount -d /tmp/JDQB_DISK1

On clone le disk1 pour avoir disk2 et disk3 (cp)

On remonte les trois disques

 mount -o loop diskX /tmp/JDQB_DISKX

Lancement des conteneurs

Ouverture de trois terminaux en root, puis utilisation de la commande dans chacun des terminaux

 unshare -n -u -p -f -m chroot /tmp/JDQB_DISKX /bin/sh -c "mount /proc ; /bin/bash" ;


Dans chaque conteneur

 ip l set eth0 up

Cette commande s'applique aussi à eth1 pour le conteneur 1

Mise en place commutateur virtuel

Création des interfaces liées

iface_virt_X (interface virtuelle X) <-> iface_ns_X (interface namespace X)

 ip link add iface_virt_1 type veth peer name iface_ns_1
 ip link add iface_virt_2 type veth peer name iface_ns_2
 ip link add iface_virt_3 type veth peer name iface_ns_3


Création de notre propre pont

 ip link add jdqb_bridge type bridge

Ajout des parties des interfaces dans le commutateur

 ip link set iface_virt_1 master jdqb_bridge
 ip link set iface_virt_2 master jdqb_bridge
 ip link set iface_virt_3 master jdqb_bridge


Activation des interfaces

 ip link set iface_virt_1 up
 ip link set iface_virt_2 up 
 ip link set iface_virt_3 up  

Activation du pont

 ip address add dev jdqb_bridge 192.168.0.1/24

Montée du pont

 ip link set jdqb_bridge up

Connexion des conteneurs à leur interface virtuelle respective

 ip link set iface_ns_1 netns /proc/<PID1>/ns/net name eth0
 ip link set iface_ns_2 netns /proc/<PID2>/ns/net name eth0
 ip link set iface_ns_3 netns /proc/<PID3>/ns/net name eth0

Obtention des PIDs

 ps aux | grep unshare

Quatrième interface, reliant le mandataire web inverse (conteneur 1) et le bridge de zabeth09

 ip link add iface_virt_0 type veth peer name iface_ns_0
 ip link set iface_virt_0 master bridge
 ip link set iface_virt_0 up
 ip link set iface_ns_0 netns /proc/<PID1>/ns/net name eth1

Modification de la table IP

 iptables -F
 iptables -F -t nat
 iptables -P FORWARD ACCEPT

Attribution des adresses aux conteneurs

 nsenter -t <PID1> -n ip address add dev eth0 192.168.0.91/24
 nsenter -t <PID2> -n ip address add dev eth0 192.168.0.92/24
 nsenter -t <PID3> -n ip address add dev eth0 192.168.0.93/24
 nsenter -t <PID1> -n ip address add dev eth1 172.26.145.90/24

Mandataire inverse

Configuration Apache2

Afin de configurer notre premier conteneur en mandataire inverse, nous modifions le fichier : /etc/apache2/sites-available/000-default.conf

Nous ajoutons :

 <VirtualHost *:80>
 ...  
 ProxyPass /site1 http://192.168.0.92/
 ProxyPassReverse /site1 http://192.168.0.92/
 ProxyPass /site2 http://192.168.0.93/
 ProxyPassReverse /site2 http://192.168.0.93/
 ProxyRequests Off
 ...
 </VirtualHost>

Configuration réseau

Ajout de la route par défaut (Polytech) :

 ip route add default via 172.26.145.254

Configuration eth1 :

 ip add add dev eth1 172.26.145.90/24
 ip link set eth1 up

11h25 => Serveurs Web unshare OK

Création des conteneurs via Docker

InstructionsTexte italique

docker run -i -t debian

export http

apt-get install apache nano vi

En dehors conteneur docker commit <image name> sur le conteneur


Creer réseau privé docker network create


(2X)docker run -i -t <image name> --net nom réseau docker run -i -t <image name> --net nom réseau -p 80:80

DNS : vérifier les @IP des conteneurs LE mandataire inverse doit avoir @IP de zabeth

Procédure

Modification des paramètres de docker dans /etc/default/docker, commenter la ligne DOCKER_EPTS="--iptables=false"

 iptables-save
 service docker restart
 docker run -i -t debian /bin/bash

Dans le conteneur

 export http_proxy
 export https_proxy
 apt-get update
 apt-get install apache2 nano vim

Récupération ID du docker

 docker ps

Commit sur le docker

 docker commit <ID> apache2

Création du network

 docker network create jdqb_network

Lancement des conteneurs

 docker run -i -t --net jdqb_network apache2 
 docker run -i -t --net jdqb_network apache2
 docker run -i -t --net jdqb_network -p 80:80 apache2

Dans chaque conteneur

 ip a

Dans le conteneur mandataire

 nano /etc/apache2/sites-enabled/000-default.conf

Ajout des proxypass

 ProxyPass /site1 http://<IP conteneur 1>/
 ProxyPassReverse /site1 http://<IP conteneur 1>/
 ProxyPass /site2 http://<IP conteneur 2>/
 ProxyPassReverse /site2 http://<IP conteneur 2>/
 ProxyRequests Off

Ajout d'un DNS dans GANDI @plil.space

Type A , TTL 1800, nom jdqb-docker, <ip bridge zabeth>

Sur les trois conteneurs

 service apache2 restart

10h20 Serveurs Web (docker) OK

TP PRA - Mise en place du routeur Catalyst 3650

Séance 1 : 26/11/2018

Nous avons à notre disposition l'adresse IPV4 routée 193.48.57.160/27.

Nous disposons également de l'adresse IPV4 non routée 10.60.0.0/16.


Découpage réseau IPV4 routé en deux sous réseaux

Nous divisons l'IPV4 routée en deux sous réseaux.

Pour réaliser leur TP, les IMA2A5 ont utilisés les adresses comprises entre 193.48.57.160/28 et 193.48.57.175/28.

Nous utiliserons donc le second sous réseau : 193.48.57.176/28 à 193.48.57.191/28.


Par conséquent l'adresse IP du routeur 1 est 193.48.57.188/28

Celle du routeur 2 est 193.48.57.189/28

Et enfin le routeur virtuel, pour la diffusion entre routeurs, est 193.48.57.190/28


Découpage du réseau IPV4 non routée en sous réseaux

Nous découpons notre réseau en 254 sous réseaux disponibles. Les IMA2A5 ont utilisés les 5 premiers 10.60.1.0/24 à 10.60.5.0/24 .

Nous prendrons donc les adresses entre 10.60.11.0/24 et 10.60.21.0/24 .

Ces adresses seront routées vers les adresses comprises entre 193.48.57.177/28 et 193.48.57.187/28 .

Séance 2 : 27/11/2018

Configuration du routeur Catalyst 3560

Mise en place du routeur et connexion à celui ci

La configuration du routeur se fera via minicom.

Vérification de l'interface à utiliser :

 ls /dev/ | grep ttyUSB

Notre routeur est connecté sur ttyUSB0.

 minicom -os

Les paramètres de configuration de minicom sont les suivants :

- port /dev/ttyUSB0

- baud 9600

- 8 bits

- pas de bit de parité

- 1 bit de stop

- pas de contrôle de flux

Configuration du routeur : Configuration des ports

Passage en administrateur :

 Router>enable
 Router#

On liste les interfaces

 Router#show interface status
 
 
 Port      Name               Status       Vlan       Duplex    Speed   Type
 Gi0/1                        connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 Gi0/2                        connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 Gi0/3                        connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 Gi0/4                        connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 Gi0/5                        connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 Gi0/6                        connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 Gi0/7                        connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 Gi0/8                        connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 Gi0/9                        connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 Gi0/10                       connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 1
 
 Gi0/11                       connected    Trunk      a-full    a-100   10/100/1000BaseTX      // vers le commutateur 2 (en E306)
 
 // Non connecté
 [...interfaces Gi0/12-Gi0/48]
 
 // les fibres
 Te0/1                        notconnect   1          full      10G     10GBase-SR             // vers le local SR52
 Te0/2                        notconnect   1          full      10G     10GBase-SR             // vers cordouan

Afin d'accélérer la communication entre le routeur et le commutateur, les ports 1 à 10 du routeur seront connectés au commutateur.

 Router(config)#configure terminal
 Enter configuration commands, one per line.  End with CNTL/Z.
 Router(config)#interface range Gi0/1 - 11
 Switch(config-if)#switchport mode access
 Switch(config-if)#switchport access access trunk                                       
 Switch(config-if)#exit

Configuration de l'interface 10G vers le local SR52

 Router(config)#configure terminal
 Enter configuration commands, one per line.  End with CNTL/Z.
 Router(config)#interface Te0/1
 Switch(config-if)#switchport mode access
 Switch(config-if)#switchport access access vlan 131                                       // vlan 131 (interconnexion IMA5)
 Switch(config-if)#exit

Configuration de l'interface 10G vers Cordouan

 Router(config)#configure terminal
 Enter configuration commands, one per line.  End with CNTL/Z.
 Router(config)#interface Te0/2
 Switch(config-if)#switchport mode access
 Switch(config-if)#switchport access access vlan 43                                       // vlan 43 (XEN IMA5)
 Switch(config-if)#exit

PROBLEME :

 *Mar  1 01:42:30.518: %CDP-4-NATIVE_VLAN_MISMATCH: Native VLAN mismatch discovered on TenGigabitEthernet0/2 (43), with Switch GigabitEthernet3/2 (42).

A FAIRE :

  • configurer les interfaces / BDI

Mise en place de la machine virtuelle

Notre machine virtuelle a les paramètres suivants :

-Hostname = Dionysos

-@IP = 193.48.57.178

-Netmask = 255.255.255.240

-dossier = /usr/local/xen

 xen-create-image __hostname=Dionysos --ip=193.48.57.178 --netmask=255.255.255.240 --dir=/usr/local/xen

Dans le répertoire /etc/xen, nous modifions le fichier Dionysos.cfg.

Nous adaptons le bridge StudentsInfo, qui devient IMA5sc.

Pour que le système soit connecté dans /etc/network/interfaces nous ajoutons la gateway.

 gateway 193.48.57.190

Pour autoriser les connections ssh. Dans /etc/ssh/sshd_config

Puis nous lançons une instance de la VM

 xl create Dionysos.cfg
 xl console Dionysos


Nous avons modifié le mot de passe initial.


Pour éteindre une VM

 xl shutdown Dionysos


Séance 3 : 10/12/2018

Config Routeur 3560

  • Commande pour save la configuration
Switch#write

Correction sur la config du routeur

  • Vers le commutateur 4006 - 10 cables 1G (Notre Salle)
enable
conf t
interface range Gi0/1 - 10
switchport
switchport trunk encapsulation dot1q
switchport mode trunk
exit

  • Vers le commutateur 6000 - 1 cable 1G (Autre Salle)
enable
conf t
interface gi0/11
switchport
switchport trunk encapsulation dot1q
switchport mode trunk
exit


  • Vers Cordouan - cable 10G (Fibre)
conf t
interface Te0/2
switchport trunk encapsulation dot1q
switchport mode access
switchport access vlan 43                                       // vlan 43 (XEN IMA5)
exit
  • Vers le local SR52
conf t
interface Te0/1
switchport trunk encapsulation dot1q
switchport mode access
switchport access vlan 131                                       // vlan 131 (interconnexion IMA5)
exit
  • Le vlan 11 (Groupe 1)
conf t
int vlan11
ip address 10.60.11.252 255.255.255.0
standby version 2
standby 11 ip 10.60.11.254
standby 11 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60C1::/64
ipv6 nd router-preference High
exit
  • Le vlan 12 (Groupe 2)
conf t
int vlan12
ip address 10.60.12.252 255.255.255.0
standby version 2
standby 12 ip 10.60.12.254
standby 12 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60C2::/64
ipv6 nd router-preference High
exit
  • Le vlan 13 (Groupe 3)
conf t
int vlan13
ip address 10.60.13.252 255.255.255.0
standby version 2
standby 13 ip 10.60.13.254
standby 13 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60C3::/64
ipv6 nd router-preference High
exit
  • Le vlan 14 (Groupe 4)
conf t
int vlan14
ip address 10.60.14.252 255.255.255.0
standby version 2
standby 14 ip 10.60.14.254
standby 14 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60C4::/64
ipv6 nd router-preference High
exit
  • Le vlan 15 (Groupe 5)
conf t
int vlan15
ip address 10.60.15.252 255.255.255.0
standby version 2
standby 15 ip 10.60.15.254
standby 15 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60C5::/64
ipv6 nd router-preference High
exit
  • Le vlan 16 (Groupe 6)
conf t
int vlan16
ip address 10.60.16.252 255.255.255.0
standby version 2
standby 16 ip 10.60.16.254
standby 16 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60C6::/64
ipv6 nd router-preference High
exit
  • Le vlan 17 (Groupe 7)
conf t
int vlan17
ip address 10.60.17.252 255.255.255.0
standby version 2
standby 17 ip 10.60.17.254
standby 17 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60C7::/64
ipv6 nd router-preference High
exit
  • Le vlan 18 (Groupe 8)
conf t
int vlan18
ip address 10.60.18.252 255.255.255.0
standby version 2
standby 18 ip 10.60.18.254
standby 18 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60C8::/64
ipv6 nd router-preference High
exit
  • Le vlan 19 (Groupe 9)


conf t
int vlan19
ip address 10.60.19.252 255.255.255.0
standby version 2
standby 19 ip 10.60.19.254
standby 19 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60C9::/64
ipv6 nd router-preference High
exit
  • Le vlan 20 (Groupe 10)
conf t
int vlan20
ip address 10.60.20.252 255.255.255.0
standby version 2
standby 20 ip 10.60.20.254
standby 20 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60CA::/64
ipv6 nd router-preference High
exit
  • Le vlan 21 (Groupe 11)


conf t
int vlan21
ip address 10.60.21.252 255.255.255.0
standby version 2
standby 21 ip 10.60.21.254
standby 21 preempt
ipv6 enable
ipv6 address autoconfig
ipv6 nd prefix 2001:660:4401:60CB::/64
ipv6 nd router-preference High
exit
  • Le vlan 43 (IM5sc)
Switch(config)#int vlan43
Switch(config-if)#ip address 193.48.57.188 255.255.255.240
Switch(config-if)#standby version 2
Switch(config-if)#standby 22 ip 193.48.57.190
Switch(config-if)#standby 22 preempt
Switch(config-if)#ipv6 enable
Switch(config-if)#ipv6 address autoconfig
Switch(config-if)#ipv6 nd prefix 2001:660:4401:60C0::/64
Switch(config-if)#ipv6 nd router-preference High
Switch(config-if)#exit
  • Le vlan 131 (Interconnexion)
Switch(config)#int vlan 131
Switch(config-if)#ip address 192.168.222.9 255.255.255.248         
Switch(config-if)#ipv6 address fe80::2 link-local                  
Switch(config-if)#ipv6 enable
Switch(config-if)#ipv6 rip tpima2a5 enable                        
Switch(config-if)#exit
  • Nommer les VLANs
vlan 11
name groupe1
exit
vlan 12
name groupe2
exit
vlan 13
name groupe3
exit
vlan 14
name groupe4
vlan 15
name groupe5
exit
vlan 16
name groupe6
exit
vlan 17
name groupe7
exit
vlan 18
name groupe8
exit
vlan 19
name groupe9
exit
vlan 20
name groupe10
exit
vlan 21
name groupe11
exit
vlan 43
name Xen
exit
vlan 131
name interconnexion
exit
Switch#conf t
Switch(config)#ip routing
Switch(config)#exit
Switch#show ip route      
*Mar  1 01:50:21.052: %SYS-5-CONFIG_I: Configured from cons                   
Switch#show ip route      
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
       E1 - OSPF external type 1, E2 - OSPF external type 2
       i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
       ia - IS-IS inter area, * - candidate default, U - per-user static route
       o - ODR, P - periodic downloaded static route

Gateway of last resort is not set

     193.48.57.0/28 is subnetted, 1 subnets
C       193.48.57.176 is directly connected, Vlan43
     10.0.0.0/24 is subnetted, 11 subnets
C       10.60.20.0 is directly connected, Vlan20
C       10.60.21.0 is directly connected, Vlan21
C       10.60.18.0 is directly connected, Vlan18
C       10.60.19.0 is directly connected, Vlan19
C       10.60.16.0 is directly connected, Vlan16
C       10.60.17.0 is directly connected, Vlan17
C       10.60.14.0 is directly connected, Vlan14
C       10.60.15.0 is directly connected, Vlan15
C       10.60.12.0 is directly connected, Vlan12
C       10.60.13.0 is directly connected, Vlan13
C       10.60.11.0 is directly connected, Vlan11
     192.168.222.0/29 is subnetted, 1 subnets
C       192.168.222.8 is directly connected, Vlan131
  • OSPF
Switch(config)#router ospf 1        
Switch(config-router)#router-id 10.60.11.252 
Switch(config-router)#summary-address 193.48.57.176 255.255.255.240
Switch(config-router)#redistribute connected subnets 
Switch(config-router)#summary-address 192.168.0.0 255.255.255.0 not-advertise
Switch(config-router)#summary-address 10.60.0.0 255.255.0.0 not-advertise    
Switch(config-router)#network 192.168.222.8 0.0.0.7 area 2
Switch(config-router)#exit

Mise en place des partitions pour la VM

Sur cordouan

 lvcreate -L10G -nIMA5_Dionysos_var virtual
 lvcreate -L10G -nIMA5_Dionysos_home virtual
 
 
 mke2fs /dev/virtual/IMA5_Dionysos_var
 mke2fs /dev/virtual/IMA5_Dionysos_home

Dans le fichier /etc/xen/Dionysos.cfg


disk        = [
                 'file:/usr/local/xen/domains/Dionysos/disk.img,xvda2,w',
                 'file:/usr/local/xen/domains/Dionysos/swap.img,xvda1,w
                 'phy:/dev/virtual/IMA5_Dionysos_var,xvdb2,w',
                 'phy:/dev/virtual/IMA5_Dionysos_home,xvdb1,w',
              ]

Sur la VM, dans le fichier /etc/fstab

 /dev/xvdb1 /home ext4 defaults 0 3


Le cas du répertoire /var est plus complexe.

Si nous utilisons la même méthode que pour /home, nous perdrons le /var. Nous ne pourrions donc plus utiliser apt-get, par exemple.

Dans la VM, dans le fichier /etc/fstab

 /dev/xvdb2 /var ext4 defaults 0 2

Puis dans le terminal de la VM

 mount /dev/xvdb2 /mnt 
 mv /var/* /mnt/
 unmount /mnt
 mount -a

Via la commande df nous contrôlons le résultat.

  Filesystem     1K-blocks    Used Available Use% Mounted on
  ...                  ...     ...       ...  ... ...
  /dev/xvdb1      10255636   36888   9678076   1% /home
  /dev/xvdb2      10321208   23028   9773892   1% /var

Mise en place serveur DNS

Utilisation de la méthode bind

Dans le répertoire /etc/bind, nous modifirons les trois fichiers suivants :

named.conf.options

 options {
       directory "/var/cache/bind";
 
       // If there is a firewall between you and nameservers you want
       // to talk to, you may need to fix the firewall to allow multiple
       // ports to talk.  See http://www.kb.cert.org/vuls/id/800113
 
       // If your ISP provided one or more IP addresses for stable
       // nameservers, you probably want to use them as forwarders.
       // Uncomment the following block, and insert the addresses replacing
       // the all-0's placeholder.
 
       // forwarders {
       //   0.0.0.0;
       // };
 
       //========================================================================
       // If BIND logs error messages about the root key being expired,
       // you will need to update your keys.  See https://www.isc.org/bind-keys
       //========================================================================
 
       //Mise en place du DNSSEC
       dnssec-enable yes;
 
       dnssec-validation auto;
 
       auth-nxdomain no;
       listen-on-v6 { any; };
       allow-recursion{localhost;};
 };


named.conf.local

 zone "dionysos.space"{
       type master;
       file "/etc/bind/db.dionysos.space";
       allow-transfer{217.70.177.40;}; //Autorisation transfert vers ns6.gandi.net
 };


Puis nous créons le fichier /etc/bind/db.dionysos.space

 cp db.local db.dionysos.pw 

Dans ce fichier nous entrons les paramètres suivants

 ;
 ; BIND data file for local loopback interface
 ;
 $TTL    604800
 $include /root/SSL_certif/dionysos-ksk.key
 $include /root/SSL_certif/dionysos-zsk.key
 
 @       IN      SOA     ns.dionysos.space. root.dionysos.space (
                               2         ; Serial
                          604800         ; Refresh
                           86400         ; Retry
                         2419200         ; Expire
                          604800 )       ; Negative Cache TTL
 ;
         IN      NS      ns.dionysos.space. ;dns principal
         IN      NS      ns6.gandi.net.     ;dns secondaire
 @       IN      A       193.48.57.178      ;acces sans le "www."
 ns      IN      NS      193.48.57.178      ;acces avec http https
 www     IN      A       193.48.57.178;     ;acces avec le "www.

Certificat SSL

 openssl req -nodes -newkey rsa:2048 -sha1 -keyout dionysos.space.key -out dionysos.space.csr
 ...
 Common Name (e.g. server FQDN or YOUR name) []:dionysos.space et dionysos.space.key
 Email Address []:qboens@polytech-lille.net

Cette opération génére deux fichiers : dionysos.space.crt et dionysos.space.key

Une fois cette étape faite on récupére sur gandi GandiStandardSSLCA2.pem, dans l'onglet du certificat.

Tous les fichiers sont placés dans le répertoire SSL_certif

 mv dionysos.space.csr SSL_certif
 mv dionysos.space.key SSL_certif
 mv GandiStandardSSLCA2.pem SSL_certif


Installation de DNSSEC

Création de la clef KSK

 dnssec-keygen -a RSASHA1 -b 2048 -f KSK -r /dev/urandom -n ZONE dionysos.space

Création de la clef ZSK

 dnssec-keygen -a RSASHA1 -b 1024 -r /dev/urandom -n ZONE dionysos.space


Ces clefs ont été crées dans le dossier SSL_certif


Création d'un fichier signé à partir de db.dionysos.space

 dnssec-signzone -o dionysos.space -k dionysos-ksk.key /etc/bind/db.dionysos.space dionysos-zsk.key 


Dans named.conf.local nous changons le fichier cible, pour que bind9 prenne en compte db.dionysos.space.signed, qui est le fichier signé

 zone "dionysos.space"{
       type master;
       file "/etc/bind/db.dionysos.space.signed";
       allow-transfer{217.70.177.40;}; //Autorisation transfert vers ns6.gandi.net
 };

Puis nous relançons bind9

 service bind9 restart

Sur le site gandi nous ajoutons les deux clefs, dans l'onglet DNSSEC

Séance 3.5 : 14/12/2018

Craquage WPA/PSK par dictionnaire

Materiel utilisé :

  • un PC portable
  • une clé Wi-Pi (nécessaire pour le PC portable que nous avons utilisé pour la partie handshake)
  • Zabeth13 pour le craquage

Récupération du handshake

Premièrement sur le PC portable SOLE,

#ip a

pour vérifier que nous disposons bien d'une interface wifi wlx40a5ef0f68ce, puis nous l'utilisons pour écouter sur le wifi :

#airmon-ng start <nom_de_l'interface>

On récupère l'interface retournée, dans notre cas wlan0mon

#airodump-ng wlan0mon

On note l'ESSID de cracotte02 et son channel pour ensuite renvoyer dans des fichiers

#airodump-ng --bssid <ESSID cracotte02> wlan0mon --channel 9 --write FILENAME

On dispose ensuite de 4 fichiers FILENAME.cap FILENAME.csv FILENAME.kismet.csv FILENAME.kismet.netxml

On peut à présent transférer ces fichiers sur ZABETH13 via clé usb:

Rappel montage USB

#fdisk -l                                                 //avant de brancher la clé USB
#fdisk -l                                                 //on récupère l'emplacement de la clé (ex: /dev/sdb -> /dev/sdb1)
#mkdir /media/MA_CLE_USB
#mount /dev/sdb1 /media/MA_CLE_USB
#mv /home/pifou/Mon_FICHIER /media/MA_CLE_USB             //répéter autant que nécessaire
#umount /media/MA_CLE_USB

Crack WPA/PSK

On crée un petit programme main.c pour lister tous les codes possibles, on sait qu'il s'agit d'un code de 8 chiffres

#include <stdio.h>
#include <stdlib.h>

int main(){
    int i;
    // key is 8 numeric digits
    for(i=0;i<99999999;i++){
        printf("%d\n",i);
    }
    return 0;
}

On compile et on stock dans un txt

#gcc main.c -o main -Wall
#./main > dictionnaire.txt

On peut à présent lancer le crack

#aircrack-ng FILENAME.cap -w dictionnaire.txt


Crack-cracotte02.png

Après un certains temps d'execution, on obtient la clé

Found key.png

Clé : 42429902

Séance 4 : 17/12/2018

IPV6 routeur

Vlan 43 - XEN

conf t
no int vlan43
int vlan43
ip address 193.48.57.188 255.255.255.240
standby version 2
standby 22 ip 193.48.57.190
standby 22 preempt
ipv6 enable
ipv6 address 2001:660:4401:60C0::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C0::/64 1000 900
ipv6 nd router-preference High
exit

Vlan 131 - Interconnexion

conf t
no int vlan 131
int vlan 131
ip address 192.168.222.9 255.255.255.248         
ipv6 address fe80::2 link-local                  
ipv6 enable
ipv6 rip tpima2a5 enable                        
exit

Vlan 10+N - Groupe N

IPv4

  • Notre Routeur : 10.60.10+N.252
  • Routeur Virtuel : 10.60.10+N.254


IPv6

2001:660:4401:60XX

  • VLAN 11 à 21 : C1 à CB
  • VLAN 43 : C0


conf t
no int vlan11
int vlan11
ip address 10.60.11.252 255.255.255.0
standby version 2
standby 11 ip 10.60.11.254
standby 11 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60C1::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C1::/64 1000 900
ipv6 nd router-preference High
exit
vlan 11
name groupe1
exit
conf t
no int vlan12
int vlan12
ip address 10.60.12.252 255.255.255.0
standby version 2
standby 12 ip 10.60.12.254
standby 12 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60C2::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C2::/64 1000 900
ipv6 nd router-preference High
exit
vlan 12
name groupe2
exit
conf t
no int vlan13
int vlan13
ip address 10.60.13.252 255.255.255.0
standby version 2
standby 13 ip 10.60.13.254
standby 13 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60C3::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C3::/64 1000 900
ipv6 nd router-preference High
exit
vlan 13
name groupe3
exit
conf t
no int vlan14
int vlan14
ip address 10.60.14.252 255.255.255.0
standby version 2
standby 14 ip 10.60.14.254
standby 14 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60C4::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C4::/64 1000 900
ipv6 nd router-preference High
exit
vlan 14
name groupe4
exit
conf t
no int vlan15
int vlan15
ip address 10.60.15.252 255.255.255.0
standby version 2
standby 15 ip 10.60.15.254
standby 15 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60C5::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C5::/64 1000 900
ipv6 nd router-preference High
exit
vlan 15
name groupe5
exit
conf t
no int vlan16
int vlan16
ip address 10.60.16.252 255.255.255.0
standby version 2
standby 16 ip 10.60.16.254
standby 16 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60C6::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C6::/64 1000 900
ipv6 nd router-preference High
exit
vlan 16
name groupe6
exit
conf t
no int vlan17
int vlan17
ip address 10.60.17.252 255.255.255.0
standby version 2
standby 17 ip 10.60.17.254
standby 17 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60C7::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C7::/64 1000 900
ipv6 nd router-preference High
exit
vlan 17
name groupe7
exit
conf t
no int vlan18
int vlan18
ip address 10.60.18.252 255.255.255.0
standby version 2
standby 18 ip 10.60.18.254
standby 18 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60C8::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C8::/64 1000 900
ipv6 nd router-preference High
exit
vlan 18
name groupe8
exit
conf t
no int vlan19
int vlan19
ip address 10.60.19.252 255.255.255.0
standby version 2
standby 19 ip 10.60.19.254
standby 19 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60C9::/64 eui-64
ipv6 nd prefix 2001:660:4401:60C9::/64 1000 900
ipv6 nd router-preference High
exit
vlan 19
name groupe9
exit
conf t
no int vlan20
int vlan20
ip address 10.60.20.252 255.255.255.0
standby version 2
standby 20 ip 10.60.20.254
standby 20 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60CA::/64 eui-64
ipv6 nd prefix 2001:660:4401:60CA::/64 1000 900
ipv6 nd router-preference High
exit
vlan 20
name groupe10
exit
conf t
no int vlan21
int vlan21
ip address 10.60.21.252 255.255.255.0
standby version 2
standby 21 ip 10.60.21.254
standby 21 preempt
ipv6 enable
ipv6 address prefix 2001:660:4401:60CB::/64 eui-64
ipv6 nd prefix 2001:660:4401:60CB::/64 1000 900
ipv6 nd router-preference High
exit
vlan 21
name groupe11
exit

Sécurisation des données via RAID5

Les partitions

Création des trois partitions 1G,

 lvcreate -L1G -n IMA5_Dionysos_part1 virtual
 lvcreate -L1G -n IMA5_Dionysos_part2 virtual
 lvcreate -L1G -n IMA5_Dionysos_part3 virtual

Ajout de ces partitions lors de la création de la VM, dans le fichier Dionysos.cfg:

 disk        = [
                 'file:/usr/local/xen/domains/Dionysos/disk.img,xvda2,w',
                 'file:/usr/local/xen/domains/Dionysos/swap.img,xvda1,w',
                 'phy:/dev/virtual/IMA5_Dionysos_var,xvdb2,w'
                 'phy:/dev/virtual/IMA5_Dionysos_part1,xvdf1,w',
                 'phy:/dev/virtual/IMA5_Dionysos_part2,xvdg1,w',
                 'phy:/dev/virtual/IMA5_Dionysos_part3,xvdh1,w',
 ]

Création du RAID

Création du RAID5 à l'aide de mdadm

 sudo mdadm --create /dev/md0 --level=5 --assume-clean --raid-devices=4 /dev/sdb1 /dev/sdc1 /dev/sdd1 /dev/sde1

Lors du premier essai l'erreur suivante est apparue

 mdadm: cannot open /dev/xvdf1: Device or resource busy

Après quelques recherches, j'ai consulté le fichier /proc/mdstat

 root@Dionysos:~# cat /proc/mdstat
 Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
 md127 : active (auto-read-only) raid5 xvdg1[0] xvdf1[2]
       2093056 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/2] [U_U]
       
 unused devices: <none>

J'ai donc arrêté md127 grâce à

  mdadm --stop /dev/md127

Puis j'ai relancé la commande de création du RAID

En relisant /proc/mdstat, j'ai obtenu

 Personalities : [linear] [multipath] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] 
 md0 : active raid5 xvdh1[2] xvdg1[1] xvdf1[0]
       2093056 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU]

Daemonisation du volume RAID, pour que la VM le charge à chaque redémarrage

 mdadm --monitor --daemonise /dev/md0

On formate le RAID

 root@Dionysos:~#mkfs.ext4 /dev/md0
 mke2fs 1.44.4 (18-Aug-2018)
 Creating filesystem with 523264 4k blocks and 130816 inodes
 Filesystem UUID: e7b32d68-7297-4957-9104-574fff233b93
 Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912
 
 Allocating group tables: done                            
 Writing inode tables: done                            
 Creating journal (8192 blocks): done
 Writing superblocks and filesystem accounting information: done

Cryptage de données