Cahier groupe n°2
Cahier des charges de la tâche particulière
Présentation de la tâche particulière
La tâche particulière que nous devons effectuer lors de ce projet est la configuration d'un des deux routeurs nécessaires à l'établissement d'un réseau redondant.
Matériel utilisé pour la tâche particulière
- Routeur 3560E
Suivi de l'avancement du TP
Semaine 1 (01/10/2015)
En collaboration avec le groupe n°1 :
- Établissement d'un tableau regroupant les informations nécessaires au routage.
- Attribution des adresses IPv4 pour chaque VLAN, l'interconnexion des réseaux ainsi que les machines virtuelles.
Semaine 2 (08/10/2015)
Configuration du routeur de la salle E304 en IPv4 :
- Configuration des VLAN :
- VLAN 11 à 20 pour chaque binôme IMA5 SC.
- VLAN 110 pour les machines virtuelles des binômes.
- VLAN 130 pour l'interconnexion avec le routeur de l'école.
- Configuration entre le routeur et le commutateur de la salle E304.
- Configuration avec le commutateur de la salle E306.
- Configuration avec le routeur de l'école.
- Réalisation de la redondance entre les deux routeurs en IPv4.
Semaine 3 (15/10/2015)
- Configuration du routeur de la salle E304 en IPv6.
- Réalisation de la redondance entre les deux routeurs en IPv6.
- Nous avons choisi le nom de domaine : tissothage.lol
- Nous avons créé notre machine virtuelle sur le dom0 cordouan.insecserv.deule.net :
ssh root@cordouan.insecserv.deule.net
xen-create-image --hostname=PANACHE --dist=jessie --dir=/usr/local/xen --gateway=193.48.57.174 --ip=193.48.57.162
tail -f /var/log/xen-tools/PANACHE.log
- Modification du fichier de configuration : PANACHE.cfg (ajout du bridge=IMA5sc et taille mémoire à 512)
- Suite aux modifications :
xl create /etc/xen/PANACHE.cfg
- Lancement de la machine virtuelle :
xl console PANACHE
- Installation des paquets suivants sur la machine virtuelle : ssh, apache2, bind9
Semaine 4 (22/10/2015)
- Création du certificat SSL
openssl req -new -newkey rsa:2048 -sha256 -nodes -out tissothage.lol.csr -keyout tissothage.lol.key -subj '/C=FR/CN=tissothage.lol'
- Intrusion par changement d'adresse MAC : configuration de la connexion sans fil "baguette" de notre eeePC pour la salle E304 (en donnant notre adresse MAC).
# dans le fichier /etc/network/interfaces auto wlan0 inet static wireless-essid baguette address 172.26.79.59 netmask 255.255.240.0 gateway 172.26.79.254
# dans le fichier /etc/resolv.conf nameserver 193.48.57.48
- Nous avons réussi à se connecter sur le site de TF1 (site en ipv4).
- Pour pouvoir se connecter au réseau wifi "troubadour" de la salle E306 :
Nous avons changé l'adresse MAC du wlan0 par une reconnue par la borne wifi.
ifconfig wlan0 hw ether ADRESSE_MAC
Pour réinitialiser la configuration
/etc/init.d/networking restart
Nous avons modifié le fichier /etc/network/interfaces pour changer le nom "baguette" en "troubadour"
- Nous avons réussi à se connecter sur le site de TF1 (site en ipv4).
Semaine 5 (12/11/2015)
- Cassage de clef WEP d'un point d'accès Wifi
- Activation du mode monitor de la carte réseau :
airmon-ng start wlan0
- Pour voir tous les points d'accès :
airodump-ng wlan0
- Pour voir seulement les points d'accès sur le canal 7 (canal regroupant les points d'accès "cracotte") :
airodump-ng -w out -c 7 --bssid 00:23:5E:1E:05:41 wlan0
L'adresse MAC du bssid est celle du point d'accès "cracotte2". - Enfin, pour trouver la clé, on lance :
aircrack-ng out-02.cap
- Pour le routeur de la salle E304 : nous avons rajouté le vlan1 qui correspond au réseau privé et qui a pour adresse MAC 10.10.10.253.
Semaine 6 (19/11/2015)
- Création des partitions LVM :
lvcreate -L 10G -n /dev/virtual/ima5-panache-home -v lvcreate -L 10G -n /dev/virtual/ima5-panache-var -v
Puis on modifie le fichier /etc/xen/PANACHE.cfg afin d'y rajouter les partitions nouvellement créées :
disk = [ 'phy:/dev/virtual/ima5-panache-var,xvdb,w' 'phy:/dev/virtual/ima5-panache-home,xvdb,w' ]
Ensuite, on configure Apache afin d'écouter sur le port 443 :
<IfModule mod_ssl.c> Listen 443 NameVirtualHost 193.48.57.162:443 </IfModule>
Enfin, on ajoute un VirtualHost /etc/apache2/sites-available/000-tissothage.lol-ssl.conf :
<VirtualHost *:443> ServerName www.tissothage.lol ServerAlias tissothage.lol DocumentRoot /var/www/www.tissothage.lol/ CustomLog /var/log/apache2/secure_access.log combined SSLEngine on SSLCertificateFile /etc/ssl/certs/www.tissothage.lol.crt SSLCertificateKeyFile /etc/ssl/private/www.tissothage.lol.key SSLCertificateChainFile /etc/ssl/certs/GandiStandardSSLCA2.pem SSLVerifyClient None </VirtualHost>
Malheureusement, nous nous sommes rendues compte que suite à une erreur de notre part (noms de domaine et de certificat différents), il était évident que ça ne fonctionnerait pas.
- Cassage de mot de passe WPA-PSK par force brute
Nous avons commencé par créer un dictionnaire qui est composé de tous les nombres à 8 chiffres. Voici le code en c qui permet de générer ce fichier :
#include<stdio.h> #include<stdlib.h> #define MAX_I 99999999 int main(){ int i=0; FILE* fp = fopen("Dictionnaire.txt","w"); if( fp == NULL ) printf("ERROR\n"); else{ for(i=0 ; i <= MAX_I ; i++){ fprintf(fp,"%08d\n",i); } } fclose(fp); return 0; }
Nous avons réussi à trouver la clé :
Semaine 7 (26/11/2015)
- Rachat d'un nom de domaine "panache.lol" et installation du certificat ssl :
openssl req -nodes -newkey rsa:2048 -sha256 -keyout panache.lol.key -out panache.lol.csr
Après récupération des fichiers .key et .csr, on fournit ce dernier à Gandi et on obtient le fichier .crt.
On place www.panache.lol.key dans /etc/ssl/private et www.panache.lol.crt dans /etc/ssl/certs.
Ensuite, on récupère le certificat intermédiaire que l'on place dans le fichier /etc/ssl/certs/GandiStandardSSLCA2.pem.
Puis, on ajoute le Virtual Host dans le fichier /etc/apache2/sites-available/000-panache.lol-ssl.conf :
<VirtualHost *:443> ServerName www.panache.lol ServerAlias panache.lol DocumentRoot /var/www/www.panache.lol/ CustomLog /var/log/apache2/secure_access.log combined SSLEngine on SSLCertificateFile /etc/ssl/certs/www.panache.lol.crt SSLCertificateKeyFile /etc/ssl/private/www.panache.lol.key SSLCertificateChainFile /etc/ssl/certs/GandiStandardSSLCA2.pem SSLVerifyClient None </VirtualHost>
- Mise en place du serveur DNS
Création d'un enregistrement Glue sur le site du Gandi :
Nom du serveur : ns.panache.lol Adresse IP : 193.48.57.162
Modification des serveurs DNS sur Gandi :
DNS1 : ns.panache.lol DNS2 : ns6.gandi.net (serveur DNS secondaire)
Configuration de Bind :
- Création d'un fichier de zones /etc/bind/zones/db.panache.lol :
$TTL 604800 @ IN SOA ns.panache.lol. root.panache.lol. ( 2015102001 ; Serial 86400 ; Refresh 3600 ; Retry 2419200 ; Expire 86400 ) ; Negative Cache TTL @ IN NS ns.panache.lol. @ IN NS ns6.gandi.net. ns IN A 193.48.57.162 www IN A 193.48.57.162 god IN A 193.48.57.162 ns IN AAAA 2001:660:4401:60bb:216:3eff:fef9:a3d1 www IN AAAA 2001:660:4401:60bb:216:3eff:fef9:a3d1 god IN AAAA 2001:660:4401:60bb:216:3eff:fef9:a3d1 @ IN A 193.48.57.162 @ IN AAAA 2001:660:4401:60bb:216:3eff:fef9:a3d1
- Création d'un fichier définissant les zones inverses pour la résolution des adresses IP /etc/bind/zones/193.48.57.in-addr.arpa :
$TTL 604800 @ IN SOA ns.panache.lol. root.panache.lol. ( 2015102001 ;serial 14400 ;refresh 3600 ;retry 604800 ;expire 10800 ;minimum ) 193.48.57.in-addr.arpa. IN NS ns.panache.lol. 193.48.57.in-addr.arpa. IN NS ns6.gandi.net. 162 IN PTR panache.lol.
- Ajout des zones dans le fichier de configuration /etc/bind/named.conf.local :
zone "panache.lol" { type master; file "/etc/bind/zones/db.panache.lol.signed"; allow-transfer { 217.70.177.40; }; notify yes; }; zone "193.48.57.in-addr.arpa" IN { type master; file "/etc/bind/zones/193.48.57.in-addr.arpa"; allow-transfer { 217.70.177.40; }; };
- Sécurisation du serveur DNS avec DNSSEC :
- Génération des deux clés chiffrées (KSK et ZSK) :
dnssec-keygen -a RSASHA1 -b 2048 -r /dev/urandom -f KSK -n ZONE panache.lol dnssec-keygen -a RSASHA1 -b 1024 -r /dev/urandom -n ZONE panache.lol
Les quatre clés générées (deux privées et deux publiques) sont ensuite placées dans le dossier /etc/bind/panache.dnssec.
- On réfère ensuite les deux clés publiques dans le fichier /etc/bind/zones/db.panache.lol :
$include /etc/bind/panache.dnssec/panache.lol-ksk.key $include /etc/bind/panache.dnssec/panache.lol-zsk.key
Puis on fournit les deux clés publiques sur le site de Gandi dans la rubrique prévue à cet effet (gérer NSSEC).
- Il reste à signer la zone :
dnssec-signzone -o panache.lol -k panache.lol-ksk ../zones/db.panache.lol panache.lol-zsk
On a donc créé le fichier /etc/bind/zones/db.panache.lol.signed qui sera référé dans le fichier /etc/bind/named.conf.local.
- Après vérification avec "dnsviz", nous constatons que notre site est sécurisé.
- Sécurisation des données
Création de 3 partitions de 1G
lvcreate -L 1G -n /dev/virtual/ima5-panache-raid1 -v lvcreate -L 1G -n /dev/virtual/ima5-panache-raid2 -v lvcreate -L 1G -n /dev/virtual/ima5-panache-raid3 -v
Nous avons ensuite modifié le fichier de config /etc/xen/PANACHE.cfg
disk = [ ... 'phy:/dev/virtual/ima5-panache-raidA,xvdd,w', 'phy:/dev/virtual/ima5-panache-raidB,xvde,w', 'phy:/dev/virtual/ima5-panache-raidC,xvdf,w', ]
Afin de pouvoir créer un RAID5 avec les trois partitions, nous avons d'abord redémarré notre VM, ensuite :
mdadm --create /dev/md0 --level=5 --assume-clean --raid-devices=3 /dev/xvdd /dev/xvde /dev/xvdf
Pour vérifier la création de notre md0:
cat /proc/mdstat
On obtient :
Personalities : [raid6] [raid5] [raid4] md0 : active raid5 xvdf[2] xvde[1] xvdd[0] 2095104 blocks super 1.2 level 5, 512k chunk, algorithm 2 [3/3] [UUU] unused devices: <none>
Pour vérifier qu'on a créé un RAID5 logiciel avec nos trois partitions
mdadm --detail /dev/md0
Après avoir redémarré la VM, on remarque que le volume nouvellement créé nommé md0 a été remplacé par md127.
Après suppression d'une partition, on effectue la commande précédente de nouveau :
mdadm --detail /dev/md127
Et on obtient :
Version : 1.2 Raid Level : raid0 Total Devices : 2 Persistence : Superblock is persistent State : inactive Name : PANACHE:0 (local to host PANACHE) UUID : a5a2ac63:89713b63:57d0149e:da7e1d76 Events : 0 Number Major Minor RaidDevice - 202 48 - /dev/xvdd - 202 64 - /dev/xvde
On vérifie le volume md127 :
cat /proc/mdstat
On a :
Personalities : md127 : inactive xvde[1](S) xvdd[0](S) 2095104 blocks super 1.2 unused devices: <none>
Semaine 8 (03/12/2015)
- Cryptage des données
Nous avons commencé par supprimer les autres partitions sur la carte SD afin d'en avoir qu'une seule en utilisant la commande
fdisk /dev/sdb
Nous avons ensuite sécurisé la partition en mettant une clé :
cryptsetup create key /dev/sdb
Ainsi, on peut vérifier que dans le répertoire /dev/mapper on a un répertoire /key
Pour formater la carte :
mkfs /dev/manager/key
- Sécurisation Wifi par WPA2-EAP
- Configuration du serveur FreeRadius en PEAP-MSCHAPv2
On modifie le fichier /etc/freeradius/eap.conf :
default_eap_type = peap
Puis le fichier /etc/freeradius/clients.conf :
client E304 { ipaddr = 10.10.10.1 secret = password } client E306 { ipaddr = 10.10.10.2 secret = password } client VLAN12 { ipaddr = 172.20.12.0 secret = password }
Enfin, le fichier /etc/freeradius/users :
username Cleartext-Password := "password"
- Configuration de la borne Wifi :
Après connection en telnet à la borne Wifi en 10.10.10.1 à l'aide des identifiant/mot de passe : Cisco/Cisco, on configure cette dernière en mode enable :
conf t aaa new-model aaa authentication login eap_karmeliet group radius_karmeliet radius-server host 193.48.57.164 auth-port 1812 acct-port 1813 key secret_karmeliet aaa group server radius radius_karmeliet server 193.48.57.164 auth-port 1812 acct-port 1813 ! exit dot11 ssid SSID_KARMELIET vlan 14 authentication open eap eap_karmeliet authentication network-eap eap_karmeliet authentication key-management wpa mbssid guest-mode ! exit interface Dot11Radio0 encryption vlan 14 mode ciphers aes-ccm tkip ssid SSID_KARMELIET ! exit interface Dot11Radio0.14 encapsulation dot1Q 14 no ip route-cache bridge-group 14 bridge-group 14 subscriber-loop-control bridge-group 14 spanning-disabled bridge-group 14 block-unknown-source no bridge-group 14 source-learning no bridge-group 14 unicast-flooding ! exit interface GigabitEthernet0.14 encapsulation dot1Q 14 bridge-group 14 ! exit exit