<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="fr">
		<id>https://projets-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tdjeraba</id>
		<title>Wiki de Projets IMA - Contributions de l’utilisateur [fr]</title>
		<link rel="self" type="application/atom+xml" href="https://projets-ima.plil.fr/mediawiki/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Tdjeraba"/>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php/Sp%C3%A9cial:Contributions/Tdjeraba"/>
		<updated>2026-05-13T23:46:42Z</updated>
		<subtitle>Contributions de l’utilisateur</subtitle>
		<generator>MediaWiki 1.29.2</generator>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69691</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69691"/>
				<updated>2019-02-26T16:33:00Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Documents Rendus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant: &amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on remarque l'erreur suivante: &amp;lt;code&amp;gt;Namespace route can't be blank&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ici, le test a été effectué sur moi et sur eloi zalczer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Après avoir fouillé dans la nouvelle base de donnée de gitlab, j'ai découvert une table &amp;quot;route&amp;quot;, qui permet de lier les namespaces aux utilisateurs correspondants. &lt;br /&gt;
&lt;br /&gt;
Étant que cette table n’existe pas dans l'ancienne base de donnée, j'ai &amp;quot;simulé&amp;quot; la création de mon compte en commençant par supprimer toutes les références à mon compte dans la bdd puis en me connectant à nouveau au gitlab. J'ai ensuite étudié la base de donnée afin de voir comment les tables sont remplis lors de la création d'un compte.&lt;br /&gt;
&lt;br /&gt;
Namespace créé dans le table du même nom:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM namespaces WHERE name='tdjeraba';&lt;br /&gt;
 id |   name   |   path   | owner_id |         created_at         |         updated_at         | type | description | avatar | share_with_group_lock | visibility_level | request_access_enabled | description_htm&lt;br /&gt;
 l | lfs_enabled | parent_id | require_two_factor_authentication | two_factor_grace_period | cached_markdown_version | runners_token | runners_token_encrypted&lt;br /&gt;
 ----+----------+----------+----------+----------------------------+----------------------------+------+-------------+--------+-----------------------+------------------+------------------------+----------------&lt;br /&gt;
 --+-------------+-----------+-----------------------------------+-------------------------+-------------------------+---------------+-------------------------&lt;br /&gt;
 '''40 | tdjeraba | tdjeraba |      226 | 2019-02-25 16:39:18.875182 | 2019-02-25 16:39:18.875182 |      |             |        | f                     |               20 | f                      |&lt;br /&gt;
  |             |           | f                                 |                      48 |                      13 |               |'''&lt;br /&gt;
 (1 row)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Infos créés dans la tables &amp;quot;route&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM routes;&lt;br /&gt;
 id | source_id | source_type |                path                |         created_at         |         updated_at         |                 name&lt;br /&gt;
 ----+-----------+-------------+------------------------------------+----------------------------+----------------------------+--------------------------------------&lt;br /&gt;
 '''83 |        40 | Namespace   | tdjeraba                           | 2019-02-25 16:39:18.877331 | 2019-02-25 16:39:18.877331 | tdjeraba'''&lt;br /&gt;
 84 |        49 | Project     | tdjeraba/ima3_tutorat_pa_2017      | 2019-02-25 16:39:50.115833 | 2019-02-25 16:39:50.115833 | tdjeraba / ima3_tutorat_pa_2017&lt;br /&gt;
 85 |        50 | Project     | tdjeraba/Djeraba_Cartier_Mouvement | 2019-02-25 16:39:52.786282 | 2019-02-25 16:39:52.786282 | tdjeraba / Djeraba_Cartier_Mouvement&lt;br /&gt;
 86 |        51 | Project     | tdjeraba/PFE_IMA_5                 | 2019-02-25 16:39:53.234764 | 2019-02-25 16:39:53.234764 | tdjeraba / PFE_IMA_5&lt;br /&gt;
 87 |        52 | Project     | tdjeraba/Un_test                   | 2019-02-25 16:40:11.589948 | 2019-02-25 16:40:11.589948 | tdjeraba / Un_test&lt;br /&gt;
 (5 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table &amp;quot;projects&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM projects;&lt;br /&gt;
 id |           name            |           path            | description |         created_at         |         updated_at         | creator_id | namespace_id |      last_activity_at      | import_url | visibi&lt;br /&gt;
 lity_level | archived | avatar | import_status | star_count |   import_type   | import_source | import_error | ci_id | shared_runners_enabled |    runners_token     | build_coverage_regex | build_allow_git_fetc&lt;br /&gt;
 h | build_timeout | pending_delete | public_builds | last_repository_check_failed | last_repository_check_at | container_registry_enabled | only_allow_merge_if_pipeline_succeeds | has_external_issue_tracker | r&lt;br /&gt;
 epository_storage | request_access_enabled | has_external_wiki | ci_config_path | lfs_enabled | description_html | only_allow_merge_if_all_discussions_are_resolved | printing_merge_request_link_enabled | auto_c&lt;br /&gt;
 ancel_pending_pipelines | import_jid | cached_markdown_version | delete_error | last_repository_updated_at | storage_version | resolve_outdated_diff_discussions | repository_read_only | merge_requests_ff_only_e&lt;br /&gt;
 nabled | merge_requests_rebase_enabled | jobs_cache_index | pages_https_only | remote_mirror_available_overridden | pool_repository_id |             runners_token_encrypted              | bfg_object_map&lt;br /&gt;
 ----+---------------------------+---------------------------+-------------+----------------------------+----------------------------+------------+--------------+----------------------------+------------+-------&lt;br /&gt;
 -----------+----------+--------+---------------+------------+-----------------+---------------+--------------+-------+------------------------+----------------------+----------------------+---------------------&lt;br /&gt;
 --+---------------+----------------+---------------+------------------------------+--------------------------+----------------------------+---------------------------------------+----------------------------+--&lt;br /&gt;
 ------------------+------------------------+-------------------+----------------+-------------+------------------+--------------------------------------------------+-------------------------------------+-------&lt;br /&gt;
 ------------------------+------------+-------------------------+--------------+----------------------------+-----------------+-----------------------------------+----------------------+-------------------------&lt;br /&gt;
 -------+-------------------------------+------------------+------------------+------------------------------------+--------------------+--------------------------------------------------+----------------&lt;br /&gt;
 49 | ima3_tutorat_pa_2017      | ima3_tutorat_pa_2017      |             | 2019-02-25 16:39:50.104623 | 2019-02-25 16:39:50.104623 |          1 |           '''40''' | 2019-02-25 16:39:50.104623 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | 7TaidVPrnZmf5UznhmYi |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:50.104623 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ZOr40ZE2Kj/bOsL2Run7A4mPtx4SibE6NW8iZClXQcKrNdEz |&lt;br /&gt;
 50 | Djeraba_Cartier_Mouvement | Djeraba_Cartier_Mouvement |             | 2019-02-25 16:39:52.781128 | 2019-02-25 16:39:52.781128 |          1 |           '''40''' | 2019-02-25 16:39:52.781128 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | sxyU_Ufren3npeZKnxo4 |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:52.781128 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | IMbg7ao1HD/QDpz+A9nbJo+agUPTutFfnKgHpft21VBcphqk |&lt;br /&gt;
 51 | PFE_IMA_5                 | PFE_IMA_5                 |             | 2019-02-25 16:39:53.229689 | 2019-02-25 16:39:53.229689 |          1 |           '''40''' | 2019-02-25 16:39:53.229689 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | yR5WvjpRoCzXYPZxyVjq |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:53.229689 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | Kuys74MKCh/aI9XIKuzbFZi0hAZGsfAwhgRlKW+7qdWWr10F |&lt;br /&gt;
 52 | Un_test                   | Un_test                   |             | 2019-02-25 16:40:11.584962 | 2019-02-25 16:40:11.584962 |          1 |           '''40''' | 2019-02-25 16:40:11.584962 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | Cfh4GP1Vk-E7HKR7dxrp |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:40:11.584962 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ENjxjLIwSxveTeqnO/fTWoWanAeNpUZf93g3LK2Yi8Qz3CSX |&lt;br /&gt;
 (4 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On vois dans les 3 tables ci-dessus que l'id du namespace &amp;quot;tdjeraba&amp;quot; est 40 et que cette valeur se retrouve dans la tables &amp;quot;project&amp;quot; et &amp;quot;route&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
J'ai finalement entrepris de construire la table &amp;quot;route&amp;quot; à partir de la table &amp;quot;namespace&amp;quot;, ce qui a pour effet de corriger le problème initial et donc de lier les projets à leurs utilisateurs.&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets===&lt;br /&gt;
&lt;br /&gt;
Afin d'importer les projets git à partir de l'ancien archives.plil.fr sur le nouveau serveur gitlab, on commence par transférer les repositories d'un serveur à l'autre. &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 scp -r * /var/opt/gitlab/git-data/repositories/* root@193.48.57.234:/var/opt/gitlab/git-data/repositories/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
''NB: attention à ne pas tenter de compresser les archives git dans un tar au risque de faire planter momentanément le serveur archives.plil.fr''&lt;br /&gt;
&lt;br /&gt;
Sur le nouveau serveur gitlab, on change l'utilisateur des archives puis on importe ensuite les repos grâce à la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 chown -R git.git /var/opt/gitlab/git-data/repositories/*&lt;br /&gt;
 gitlab-rake gitlab:import:repos['/var/opt/gitlab/git-data/repositories/']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Taky_Djeraba_Rapport_final_PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69690</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69690"/>
				<updated>2019-02-26T16:32:49Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Documents Rendus */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant: &amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on remarque l'erreur suivante: &amp;lt;code&amp;gt;Namespace route can't be blank&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ici, le test a été effectué sur moi et sur eloi zalczer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Après avoir fouillé dans la nouvelle base de donnée de gitlab, j'ai découvert une table &amp;quot;route&amp;quot;, qui permet de lier les namespaces aux utilisateurs correspondants. &lt;br /&gt;
&lt;br /&gt;
Étant que cette table n’existe pas dans l'ancienne base de donnée, j'ai &amp;quot;simulé&amp;quot; la création de mon compte en commençant par supprimer toutes les références à mon compte dans la bdd puis en me connectant à nouveau au gitlab. J'ai ensuite étudié la base de donnée afin de voir comment les tables sont remplis lors de la création d'un compte.&lt;br /&gt;
&lt;br /&gt;
Namespace créé dans le table du même nom:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM namespaces WHERE name='tdjeraba';&lt;br /&gt;
 id |   name   |   path   | owner_id |         created_at         |         updated_at         | type | description | avatar | share_with_group_lock | visibility_level | request_access_enabled | description_htm&lt;br /&gt;
 l | lfs_enabled | parent_id | require_two_factor_authentication | two_factor_grace_period | cached_markdown_version | runners_token | runners_token_encrypted&lt;br /&gt;
 ----+----------+----------+----------+----------------------------+----------------------------+------+-------------+--------+-----------------------+------------------+------------------------+----------------&lt;br /&gt;
 --+-------------+-----------+-----------------------------------+-------------------------+-------------------------+---------------+-------------------------&lt;br /&gt;
 '''40 | tdjeraba | tdjeraba |      226 | 2019-02-25 16:39:18.875182 | 2019-02-25 16:39:18.875182 |      |             |        | f                     |               20 | f                      |&lt;br /&gt;
  |             |           | f                                 |                      48 |                      13 |               |'''&lt;br /&gt;
 (1 row)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Infos créés dans la tables &amp;quot;route&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM routes;&lt;br /&gt;
 id | source_id | source_type |                path                |         created_at         |         updated_at         |                 name&lt;br /&gt;
 ----+-----------+-------------+------------------------------------+----------------------------+----------------------------+--------------------------------------&lt;br /&gt;
 '''83 |        40 | Namespace   | tdjeraba                           | 2019-02-25 16:39:18.877331 | 2019-02-25 16:39:18.877331 | tdjeraba'''&lt;br /&gt;
 84 |        49 | Project     | tdjeraba/ima3_tutorat_pa_2017      | 2019-02-25 16:39:50.115833 | 2019-02-25 16:39:50.115833 | tdjeraba / ima3_tutorat_pa_2017&lt;br /&gt;
 85 |        50 | Project     | tdjeraba/Djeraba_Cartier_Mouvement | 2019-02-25 16:39:52.786282 | 2019-02-25 16:39:52.786282 | tdjeraba / Djeraba_Cartier_Mouvement&lt;br /&gt;
 86 |        51 | Project     | tdjeraba/PFE_IMA_5                 | 2019-02-25 16:39:53.234764 | 2019-02-25 16:39:53.234764 | tdjeraba / PFE_IMA_5&lt;br /&gt;
 87 |        52 | Project     | tdjeraba/Un_test                   | 2019-02-25 16:40:11.589948 | 2019-02-25 16:40:11.589948 | tdjeraba / Un_test&lt;br /&gt;
 (5 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table &amp;quot;projects&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM projects;&lt;br /&gt;
 id |           name            |           path            | description |         created_at         |         updated_at         | creator_id | namespace_id |      last_activity_at      | import_url | visibi&lt;br /&gt;
 lity_level | archived | avatar | import_status | star_count |   import_type   | import_source | import_error | ci_id | shared_runners_enabled |    runners_token     | build_coverage_regex | build_allow_git_fetc&lt;br /&gt;
 h | build_timeout | pending_delete | public_builds | last_repository_check_failed | last_repository_check_at | container_registry_enabled | only_allow_merge_if_pipeline_succeeds | has_external_issue_tracker | r&lt;br /&gt;
 epository_storage | request_access_enabled | has_external_wiki | ci_config_path | lfs_enabled | description_html | only_allow_merge_if_all_discussions_are_resolved | printing_merge_request_link_enabled | auto_c&lt;br /&gt;
 ancel_pending_pipelines | import_jid | cached_markdown_version | delete_error | last_repository_updated_at | storage_version | resolve_outdated_diff_discussions | repository_read_only | merge_requests_ff_only_e&lt;br /&gt;
 nabled | merge_requests_rebase_enabled | jobs_cache_index | pages_https_only | remote_mirror_available_overridden | pool_repository_id |             runners_token_encrypted              | bfg_object_map&lt;br /&gt;
 ----+---------------------------+---------------------------+-------------+----------------------------+----------------------------+------------+--------------+----------------------------+------------+-------&lt;br /&gt;
 -----------+----------+--------+---------------+------------+-----------------+---------------+--------------+-------+------------------------+----------------------+----------------------+---------------------&lt;br /&gt;
 --+---------------+----------------+---------------+------------------------------+--------------------------+----------------------------+---------------------------------------+----------------------------+--&lt;br /&gt;
 ------------------+------------------------+-------------------+----------------+-------------+------------------+--------------------------------------------------+-------------------------------------+-------&lt;br /&gt;
 ------------------------+------------+-------------------------+--------------+----------------------------+-----------------+-----------------------------------+----------------------+-------------------------&lt;br /&gt;
 -------+-------------------------------+------------------+------------------+------------------------------------+--------------------+--------------------------------------------------+----------------&lt;br /&gt;
 49 | ima3_tutorat_pa_2017      | ima3_tutorat_pa_2017      |             | 2019-02-25 16:39:50.104623 | 2019-02-25 16:39:50.104623 |          1 |           '''40''' | 2019-02-25 16:39:50.104623 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | 7TaidVPrnZmf5UznhmYi |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:50.104623 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ZOr40ZE2Kj/bOsL2Run7A4mPtx4SibE6NW8iZClXQcKrNdEz |&lt;br /&gt;
 50 | Djeraba_Cartier_Mouvement | Djeraba_Cartier_Mouvement |             | 2019-02-25 16:39:52.781128 | 2019-02-25 16:39:52.781128 |          1 |           '''40''' | 2019-02-25 16:39:52.781128 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | sxyU_Ufren3npeZKnxo4 |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:52.781128 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | IMbg7ao1HD/QDpz+A9nbJo+agUPTutFfnKgHpft21VBcphqk |&lt;br /&gt;
 51 | PFE_IMA_5                 | PFE_IMA_5                 |             | 2019-02-25 16:39:53.229689 | 2019-02-25 16:39:53.229689 |          1 |           '''40''' | 2019-02-25 16:39:53.229689 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | yR5WvjpRoCzXYPZxyVjq |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:53.229689 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | Kuys74MKCh/aI9XIKuzbFZi0hAZGsfAwhgRlKW+7qdWWr10F |&lt;br /&gt;
 52 | Un_test                   | Un_test                   |             | 2019-02-25 16:40:11.584962 | 2019-02-25 16:40:11.584962 |          1 |           '''40''' | 2019-02-25 16:40:11.584962 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | Cfh4GP1Vk-E7HKR7dxrp |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:40:11.584962 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ENjxjLIwSxveTeqnO/fTWoWanAeNpUZf93g3LK2Yi8Qz3CSX |&lt;br /&gt;
 (4 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On vois dans les 3 tables ci-dessus que l'id du namespace &amp;quot;tdjeraba&amp;quot; est 40 et que cette valeur se retrouve dans la tables &amp;quot;project&amp;quot; et &amp;quot;route&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
J'ai finalement entrepris de construire la table &amp;quot;route&amp;quot; à partir de la table &amp;quot;namespace&amp;quot;, ce qui a pour effet de corriger le problème initial et donc de lier les projets à leurs utilisateurs.&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets===&lt;br /&gt;
&lt;br /&gt;
Afin d'importer les projets git à partir de l'ancien archives.plil.fr sur le nouveau serveur gitlab, on commence par transférer les repositories d'un serveur à l'autre. &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 scp -r * /var/opt/gitlab/git-data/repositories/* root@193.48.57.234:/var/opt/gitlab/git-data/repositories/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
''NB: attention à ne pas tenter de compresser les archives git dans un tar au risque de faire planter momentanément le serveur archives.plil.fr''&lt;br /&gt;
&lt;br /&gt;
Sur le nouveau serveur gitlab, on change l'utilisateur des archives puis on importe ensuite les repos grâce à la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 chown -R git.git /var/opt/gitlab/git-data/repositories/*&lt;br /&gt;
 gitlab-rake gitlab:import:repos['/var/opt/gitlab/git-data/repositories/']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
[[Fichier:Taky_Djeraba_Rapport_final_PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=69689</id>
		<title>Projets IMA5 2018/2019</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Projets_IMA5_2018/2019&amp;diff=69689"/>
				<updated>2019-02-26T16:32:14Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;Merci de référencer vos pages de projets ici. Merci aussi d'uniformiser vos formats que ce soit en regardant la présentation des projets déjà créés ou en demandant une modification du format des précédents si votre façon de faire vous semble la meilleure. Dans tous les cas un minimum de communication entre les binômes est conseillée.&lt;br /&gt;
&lt;br /&gt;
Toutes les sources doivent être déposées sur notre archive GIT. Le service est disponible à l'URL [https://archives.plil.fr archives.plil.fr]. Connectez-vous avec vos identifiants Polytech'Lille. Sauf indication contraire de vos encadrants, rendez le projet public et mettez le lien sur votre Wiki. Vous pouvez trouver de la documentation sur ce système d'archives sur ce [https://git-scm.com/book/fr/v1 site].&lt;br /&gt;
&lt;br /&gt;
== Répartition des binômes ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Elèves !! Encadrants école !! Rapport intermédiaire !! Rapport final !! Vidéo&lt;br /&gt;
|-&lt;br /&gt;
| P0 [[IMA5 2018/2019 P0|Modèle]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P04 [[IMA5 2018/2019 P04|Conception mécatronique d'un gant haptique pour la réalité virtuelle]]&lt;br /&gt;
| Thomas Hubert&lt;br /&gt;
| Frédéric Giraud / Betty Semail&lt;br /&gt;
|[[Fichier:RapportIntermédiaire 2018P04.pdf]]&lt;br /&gt;
|[[Fichier:RapportFinal P04 ThomasHubert.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P05 [[IMA5 2018/2019 P05|Simulation on the Web]]&lt;br /&gt;
| Rodolphe Toin&lt;br /&gt;
| Jérémie Dequidt&lt;br /&gt;
|[[Fichier:Rapport_intermediaire_P05.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P06 [[IMA5 2018/2019 P06|Développement d'un système de gestion d'un réseau de capteurs]]&lt;br /&gt;
| Simon Feutrier / Antoine Duquenoy&lt;br /&gt;
| Thomas Vantroys / Alexandre Boé&lt;br /&gt;
|[[Fichier:PFE_06_Rapport_Intermediaire.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P10 [[ IMA5 2018/2019 P10|Traces d’exécution de système temps réel]]&lt;br /&gt;
| Amine El Messaoudi&lt;br /&gt;
| Julien Forget&lt;br /&gt;
|[[Fichier:rapport1_P10.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P13 [[ IMA5 2018/2019 P13|Réseau de capteurs pour parking intelligent]]&lt;br /&gt;
| Baptiste Cartier&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys&lt;br /&gt;
|[[Fichier:RapportIntermédiaire.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
| Matthieu Delobelle&lt;br /&gt;
| Alexandre Boé / Xavier Redon / Thomas Vantroys &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P17 [[IMA5 2018/2019 P17|Système multisources de production d'hydrogène]]&lt;br /&gt;
| François-Xavier Cockenpot&lt;br /&gt;
| Anne-Lise Gehin &lt;br /&gt;
|&lt;br /&gt;
|[[fichier:Rapport_PFE17_Cockenpot.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P21 [[IMA5 2018/2019 P21|Pilotage automatique d'un drone]]&lt;br /&gt;
| Claire Vandamme / Justine Senellart&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|[[Fichier:Rapport de projet intermediaire P21 Pilotage automatique de drone.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P22 [[IMA5 2018/2019 P22|Commande en position d'un drone]]&lt;br /&gt;
| Lijie YAO / Lirui ZHANG&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|[[Fichier:Rapport_Intermédiaire_P22.pdf]]&lt;br /&gt;
|[[Fichier:Rapport_Final_P22.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P26 [[IMA5 2018/2019 P26|Interaction 2D en réalité virtuelle]]&lt;br /&gt;
| Ji YANG&lt;br /&gt;
| Laurent Grisoni&lt;br /&gt;
| [[Fichier:Ji_YANG_PRE_Intermediaire.pdf]]&lt;br /&gt;
|[[Fichier:Rapport_final_26.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| Alexis Dorian&lt;br /&gt;
| Xavier Redon / Alexandre Boé / Thomas Vantroys&lt;br /&gt;
| &lt;br /&gt;
| [[Fichier:Rapport PFE 28 Alexis DORIAN.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P30 [[IMA5 2018/2019 P30|Contrôle à distance d'un robot de grande taille]]&lt;br /&gt;
| Delaporte Maëva / Blas Simon&lt;br /&gt;
| Xavier Redon / Thomas Vantroys / Alexandre Boé&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P31 [[IMA5 2018/2019 P31|Supervision des serveurs de la plateforme informatique]]&lt;br /&gt;
| Taky Djeraba&lt;br /&gt;
| Xavier Redon / Thomas Vantroys&lt;br /&gt;
| [[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
| [[Fichier:Taky_Djeraba_Rapport_final_PFE.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P36 [[IMA5 2018/2019 P36|Pilotage automatique d'un drone]]&lt;br /&gt;
| Abass Ayoub / Alexis Viscogliosi&lt;br /&gt;
| Aziz Nakrachi / Claudine Lecocq&lt;br /&gt;
|[[Fichier:rapport_P36_Viscogliosi_Ayoub.pdf]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P42 [[IMA5 2018/2019 P42 |Traçage d'empreintes de navigateur en utilisant des techniques avancées d'apprentissage automatique]]&lt;br /&gt;
| Mehanna Naif&lt;br /&gt;
| Walter Rudametkin / Romain Rouvoy&lt;br /&gt;
| [[Media:Rapport intermediaire de PFE.pdf|Rapport de mi-projet]]&lt;br /&gt;
| [[Media:Rapport final naif mehanna.pdf| Rapport final de projet P42]]&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P43 [[IMA5 2018/2019 P43 |Réalisation d'un synthétiseur]]&lt;br /&gt;
| Untereiner Antoine&lt;br /&gt;
| Alexandre Boé&lt;br /&gt;
| Rapport intermédiaire de PFE : [[Media:Rapport_AU.pdf|Rapport de mi-projet]]&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P19 [[IMA5 2018/2019 P19 |Détection de menaces IOT sur FPGA]]&lt;br /&gt;
| MACHEREZ Alexis&lt;br /&gt;
| Alexandre Boé / Thomas Vantroys&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P24 [[IMA5 2018/2019 P24 |Filtrage de Kalman pour la détection de défaut sur un robot mobile]]&lt;br /&gt;
| Samy Belhouachi&lt;br /&gt;
| Komi Midzodzi PEKPE&lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P44 [[IMA5 2018/2019 P44 |Iron Car]]&lt;br /&gt;
| DUFRESNE Erwan / ZALCZER Eloi&lt;br /&gt;
| Thomas Vantroys / Xavier Redon / Alexandre Boé &lt;br /&gt;
|&lt;br /&gt;
|-&lt;br /&gt;
| P18 [[IMA5 2018/2019 P18 | Emetteur / Récepteur analogique en bande FM ]]&lt;br /&gt;
| WATINE Jean-Baptiste&lt;br /&gt;
| Alexandre Boé &lt;br /&gt;
|&lt;br /&gt;
|&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
== Matériel à acquérir ==&lt;br /&gt;
&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Projet !! Matériel&lt;br /&gt;
|-&lt;br /&gt;
| P28 [[IMA5 2018/2019 P28|Clonage d'une calculatrice open-source NumWorks]]&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Adesto-Technologies/AT25SF641-SUB-T?qs=H7WEQPD31y1rOaelqGYUaQ== AT25SF641  ](Ram)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/STMicroelectronics/STM32F412VGT6?qs=qzCNEk%252bRr%252baGf9Ry5zWpvw%3D%3D&amp;amp;gclid=EAIaIQobChMI8OWLjsq63QIVxIjVCh0HCADGEAAYASAAEgKz5_D_BwE STM32F412VGT6  ] (microcontroleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.alibaba.com/product-detail/2-4-portait-LCD-module-ET024QV01_60727925701.html?spm=a2700.details.pronpeci14.2.5d9f12f4aeUQCE ET024QV01-K] (ecran)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Newhaven-Display/NHD-24-240320CF-CTXI-F?qs=sGAEpiMZZMu%2fRY1bNe3bOwi7Ku0KTtuWVqK2peAZKeQH3KKyXLxcNw== NHD-2.4-240320CF] (autre ecran)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/hirose-hrs/fh12s-40s-0-5sh-55/fiche-femelle-ffc-fpc-0-5mm-zif/dp/1324588?MER=sy-me-pd-mi-alte connecteur nappe]&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9365gqw/driver-de-led-boost-250khz-wqfn/dp/2729821 RT9365GQW ](control retro éclairage)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9078-28gj5/regul-ldo-fixe-2-8v-0-3a-tsot/dp/2729807?krypto=MSyMhsZJSwpJzbmMaWZGoRn20imQ%2Bn8JeH7D4MHTZf%2B2dB6VsTHGLrm%2FOLrSWQ7xeojNK5JXTGImaV58n0tJ9A%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9078-28GJ5 ](régulateur de tension)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/richtek/rt9526age/chargeur-bat-li-ion-0-5a-wdfn/dp/2433119?krypto=HIqdjNHqabMYeF39WOpX9xKeZ2JYmYKNIiZzSQh83hC6pdrzMzXqu1zU68gCpKyvU1HQLlLe%2FHV60YNgVaXvsg%3D%3D&amp;amp;ddkey=https%3Afr-FR%2FElement14_France%2Fsearch RT9526AGE ](chargeur lipo)&lt;br /&gt;
&lt;br /&gt;
[https://fr.farnell.com/stmicroelectronics/usblc6-2sc6/esd-protection-smd-sot-23-6/dp/1269406?st=USBLC6-2SC6 USBLC6-2SC6 ] (protection USB)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Lite-On/LTST-S310F2KT?qs=xb8aMrBSZRKYryAdlDhh3g== TST-S310F2KT] (led multi couleur)&lt;br /&gt;
&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/ECS/ECS-2520MV-250-BN-TR?qs=sGAEpiMZZMtldj7qu1ydrQG1afnrXLdGjWqvhZ7yquORJy%252b1U87asg%3d%3d Oscillateurs]&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| P16 [[IMA5 2018/2019 P16|Le Sportif Augmenté]]&lt;br /&gt;
|&lt;br /&gt;
*2 [https://www.digikey.com/product-detail/en/garmin-canada-inc/ANTAP281M5IB/1094-1004-ND/2748494 Module RF Ant+]&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/STM32L031K6T7/497-16269-ND/5805501 MCU (Cortex M0) STM32-L0 (32-LQFP)]&lt;br /&gt;
&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/STM32L152CBT6/497-11197-ND/2640843 MCU (Cortex M3) STM32-L1 (64-LQFP)]&lt;br /&gt;
*4 [https://www.digikey.com/product-detail/en/yageo/CC0603CRNPO9BN4R3/311-3858-6-ND/8025870  Capacités 4,3 pF] (pour l'oscillateur 32k768 Hz)&lt;br /&gt;
*2 [https://www.digikey.com/product-detail/en/epson/FC-135-32.7680KA-A0/SER4077CT-ND/5604233 Oscillateur 32k768 Hz]&lt;br /&gt;
&lt;br /&gt;
*4 [https://www.digikey.com/product-detail/en/kemet/C0603C180K5GACTU/399-7866-1-ND/3471589 Capacités 18 pF] (pour l'oscillateur 16 MHz)&lt;br /&gt;
*2 [https://www.digikey.com/product-detail/en/abracon-llc/ABLS-16.000MHZ-B4-T/535-10226-1-ND/2184261 Oscillateur 16MHz]&lt;br /&gt;
&lt;br /&gt;
[https://www.digikey.com/product-detail/en/sparkfun-electronics/SEN-13944/1568-1424-ND/6193601 Capteur 9-DOF]&lt;br /&gt;
&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/NUCLEO-L031K6/497-16283-ND/5806780 Carte NUCLEO-L031]&lt;br /&gt;
[https://www.digikey.com/product-detail/en/stmicroelectronics/NUCLEO-L152RE/497-14363-ND/4695528 Carte NUCLEO-L152]&lt;br /&gt;
&lt;br /&gt;
*6 [https://www.digikey.com/product-detail/en/rohm-semiconductor/SML-D12U1WT86/SML-D12U1WT86CT-ND/5843858 LED RED CMS]&lt;br /&gt;
*6 [https://www.digikey.com/product-detail/en/rohm-semiconductor/ESR03EZPJ131/RHM130DCT-ND/1762927 Resistances 130Ω (Pour LED)]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
*15 [https://www.digikey.com/product-detail/en/samsung-electro-mechanics/CL10F104ZA8NNNC/1276-1011-1-ND/3889097 Capacités 100nF] (découplage/stabilité)&lt;br /&gt;
*6 [https://www.digikey.com/product-detail/en/rohm-semiconductor/ESR03EZPF1002/RHM10KADCT-ND/1983753 Resistances 10kΩ]&lt;br /&gt;
Les composants passifs permettant la mise en place de l'environnement des STM32 (resistances/capa) est deja en la possession de M. Redon (en 0603)&lt;br /&gt;
[https://www.mouser.fr/ProductDetail/Adesto-Technologies/AT25SF641-SUB-T?qs=H7WEQPD31y1rOaelqGYUaQ== AT25SF641  ](Ram)&lt;br /&gt;
&lt;br /&gt;
|-&lt;br /&gt;
| P18 [[IMA5 2018/2019 P18|Emetteur récepteur bande FM]]&lt;br /&gt;
| &lt;br /&gt;
&lt;br /&gt;
*2  [https://www.mouser.fr/ProductDetail/NXP-Semiconductors/SA612AD-01118?qs=sGAEpiMZZMv2G7q7wICjtfIJxBnl77S2%252b%252bZqLbCgGU0%3d mélangeurs]&lt;br /&gt;
*2  [https://www.mouser.fr/ProductDetail/NXP-Semiconductors/SA614AD-01118?qs=sGAEpiMZZMvKM5ialpXrmuXCYQ%252bnE0i4 système FM fi] (limiteur-détecteur de quadrature)&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Molex/73366-0062?qs=sGAEpiMZZMuLQf%252bEuFsOrrXdJIKRuO8bR4ObDwYPMwJagDUqGGFvkA%3d%3d connecteur coaxial femelle]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/ON-Semiconductor-Fairchild/BZX79C6V2?qs=sGAEpiMZZMvAvBNgSS9Lqlg9n3rYFLVD diodes zener] &lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Texas-Instruments/LM317LIPK?qs=sGAEpiMZZMuTgk%252bQPI7Id6xN2vdLoIf2 régulateur de tension ] (alim 6V et 9V)&lt;br /&gt;
*4 [https://www.mouser.fr/ProductDetail/NXP-Semiconductors/BB202115?qs=me8TqzrmIYXTPBMElCe%252b3A%3D%3D diodes varicap BB202]&lt;br /&gt;
*3 [https://www.mouser.fr/ProductDetail/NXP-Semiconductors/BBY40215?qs=sGAEpiMZZMvKM5ialpXrmmojF8tXHUxP diodes varicap BBY40]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Central-Semiconductor/2N2219?qs=sGAEpiMZZMshyDBzk1%2fWiw99kSkYzPxmDv7Gy92BLz8%3d transistors 2N2219]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Infineon-Technologies/BFR-92P-E6327?qs=sGAEpiMZZMvDjfggS9kWsTVpFmAS0FC53nH33%2fxtfLg%3d transistors BFR92 ]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/ON-Semiconductor-Fairchild/BC547B?qs=sGAEpiMZZMvAvBNgSS9LqhyF%2fsTQxMNe transistors BC547 ]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Texas-Instruments/TL081CP?qs=sGAEpiMZZMtCHixnSjNA6P3Ssczg4flJ1xPmD0j6Cko%3d ampli op TL081]&lt;br /&gt;
*3 [https://www.mouser.fr/ProductDetail/Murata-Electronics/SFECV10M7FA00-R0?qs=sGAEpiMZZMtMMXztyU6kdIFTJJQM3M6Q8oelu8IKNP4%3d filtres céramiques 10.7 MHz ]&lt;br /&gt;
&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Murata-Electronics/LQH32NH181J23L?qs=sGAEpiMZZMsg%252by3WlYCkU3ZhzMeKyJmpRKAif0Lp6Ck%3d inductance 180 µH] (quadrature tank)&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Murata-Electronics/TZB4P400AA10R00?qs=sGAEpiMZZMukHu%252bjC5l7YV3%252btnLLlDRG39nrOadOFPc%3d condensateur ajustable ] (quadrature tank)&lt;br /&gt;
&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Murata-Electronics/TZC3P200A110R00?qs=sGAEpiMZZMukHu%252bjC5l7YZvVElVk%252bNfj93Is%2fuvc9Wg%3d condensateurs ajustables 5/20 pF] (filtre entrée + oscillateur réception)&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Murata-Electronics/TZB4P300AA10B00?qs=sGAEpiMZZMukHu%252bjC5l7YTPfG1JP5wIeK%252bWvR6IL42U%3d condo ajustable 6.5 30 pF] ( oscillateur émission )&lt;br /&gt;
&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Texas-Instruments/LM386MX-1-NOPB?qs=sGAEpiMZZMvu8NZDyZ4K0W0q7hpC7Bhp amplificateur audio ]&lt;br /&gt;
*4 [https://www.mouser.fr/ProductDetail/Ohmite/OM1045E-R58?qs=sGAEpiMZZMtlubZbdhIBIJMLE6vvLglcKmQsvX788Ns%3d résistances 100k] (Commande d'accord)&lt;br /&gt;
&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/TDK/VLS6045EX-470M-H?qs=sGAEpiMZZMsg%252by3WlYCkUwWVs%252bZAfRN3PTEA%2fTmKAE8%3d self 47µH] (alim émetteur)&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/ABRACON/AIML-0603-1R0K-T?qs=sGAEpiMZZMsg%252by3WlYCkUwX6XY3JXxzLWnI%2fwB2g2jA%3d self 1 µH] (oscillateur Clapp réception)&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Sumida/RCH895NP-5R5M?qs=sGAEpiMZZMsg%252by3WlYCkUybotbHgb6KFVPPswvntSaM%3d self 5.5 µH] (alim SA612)&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/TDK/MLG1005SR15JTD25?qs=sGAEpiMZZMsg%252by3WlYCkU3b8Zei%252b1OAifaUcqd304aU%3d inductance 150 nH] (filtre entrée récepteur)&lt;br /&gt;
*3 [https://www.mouser.fr/ProductDetail/Yageo/CFR-25JR-52-47K?qs=sGAEpiMZZMtlubZbdhIBIFoOGUvNp40aRsKgdTuFP2M%3d 47 kohm] &lt;br /&gt;
*5 [https://www.mouser.fr/ProductDetail/Yageo/CFR-12JB-52-6K8?qs=sGAEpiMZZMtlubZbdhIBINt%2ft6Hry3%2fBikJxMgrSCuc%3d 6.8kohm]&lt;br /&gt;
*3 [https://www.mouser.fr/ProductDetail/Yageo/CFR-25JR-52-4K7?qs=sGAEpiMZZMtlubZbdhIBICXBKsnvdtuNQUT1efiei5o%3d 4.7kohm]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Ohmite/OM3315E-R58?qs=sGAEpiMZZMtlubZbdhIBIJMLE6vvLglc%252bDEGbeBtvHM%3d 330 ohm]&lt;br /&gt;
*4 [https://www.mouser.fr/ProductDetail/Yageo/CFR-25JR-52-10K?qs=sGAEpiMZZMtlubZbdhIBIFoOGUvNp40acurReI2X22I%3d 10kohm]&lt;br /&gt;
*3 [https://www.mouser.fr/ProductDetail/Yageo/CFR-12JB-52-3K3?qs=sGAEpiMZZMtlubZbdhIBINt%2ft6Hry3%2fBD0BUzHysOuw%3d 3.3 kohm]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Yageo/CFR-25JT-52-1K?qs=sGAEpiMZZMtlubZbdhIBIFoOGUvNp40ae7jvtA1AnXI%3d 1kohm]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Vishay-Beyschlag/MBB02070C4707JRP00?qs=sGAEpiMZZMtlubZbdhIBIP7908E9uONJCHSyGAzV3aU%3d 470 µOhm]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Yageo/CFR-50JB-52-51R?qs=sGAEpiMZZMtlubZbdhIBINt%2ft6Hry3%2fBC5eCORtsLAg%3d 51 ohm ]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Fastron/0603AS-R25G-01?qs=sGAEpiMZZMsg%252by3WlYCkU8BLlVcluYKELzEDw6f1yWg%3d inductance 250 nH] (filtre entrée, récepteur)&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/BI-Technologies-TT-Electronics/P160KNPD-4FC20B10K?qs=sGAEpiMZZMtC25l1F4XBUzVC3q8S9Qb8aPhpXWOj9iI%3d potentiomètres 10k] (excursion émetteur + volume ampli)&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Vishay-BC-Components/A180J15C0GH5TAA?qs=sGAEpiMZZMt3KoXD5rJ2NzBWF85J6ZF%252b%252bo81cncSPEw%3d 18 pF]&lt;br /&gt;
*3 [https://www.mouser.fr/ProductDetail/AVX/SA102A6R8DAA?qs=sGAEpiMZZMt3KoXD5rJ2N5lIJeR4ZUrtmTB7BoqORwY%3d 6.8 pF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/KEMET/C410C109C5G5TA7200?qs=sGAEpiMZZMt3KoXD5rJ2NwtB0uHhSEq9vtyDsa3K98U%3d 1pF]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/AVX/SA102A220JARN?qs=sGAEpiMZZMt3KoXD5rJ2N1kQx%252bJ8sD3bbV6dYyIiT%252b0%3d 22pF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/AVX/SA102A270KAA?qs=sGAEpiMZZMt3KoXD5rJ2N1kQx%252bJ8sD3b6VD4VJwASUQ%3d 27pF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/AVX/SA101C102KAN?qs=sGAEpiMZZMsh%252b1woXyUXj%2f3B4I5okv6zSvA2Ym6ziCg%3d 1nF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/AVX/SA102A300JAA?qs=sGAEpiMZZMt3KoXD5rJ2NzvLbS0KFQ%2f%252b5kaPDDiWAgo%3d 30pF]&lt;br /&gt;
*15 [https://www.mouser.fr/ProductDetail/AVX/SA105E104MAA?qs=sGAEpiMZZMsh%252b1woXyUXj3Nak6oU7yKrYCK71BDgMlE%3d 100 nF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Vishay-BC-Components/A470J15C0GL5UAA?qs=sGAEpiMZZMsh%252b1woXyUXj8ONvsi0bWiaolBsRkHTcAM%3d 47 pF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/AVX/SA102C221MAR?qs=sGAEpiMZZMsh%252b1woXyUXjyfE4iDuOGSr53rCY4KakHw%3d 220 pF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/AVX/SA051A151KAA?qs=sGAEpiMZZMsh%252b1woXyUXj%2f3B4I5okv6zpkzVpPbcLiQ%3d 150 pF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/AVX/SA105E103MAA?qs=sGAEpiMZZMsh%252b1woXyUXj8uGuC5qkdnX1V0gW0DNeJo%3d 10 nF]&lt;br /&gt;
*3 [https://www.mouser.fr/ProductDetail/Illinois-Capacitor-CDE/106TTA035MSD?qs=sGAEpiMZZMsh%252b1woXyUXj2YUqcaON%252bY2ycv%252b%252bYI%252bzfg%3d 10µF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Yageo/CFR-25JT-52-220K?qs=sGAEpiMZZMtlubZbdhIBIFoOGUvNp40aCABL0zhC45g%3d 220 kohms]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/TDK/FG28C0G1H121JNT06?qs=sGAEpiMZZMsh%252b1woXyUXj6h8Z0XTvQqoywqalzoCCnY%3d 120 pF]&lt;br /&gt;
&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/AVX/SA105C153KAC?qs=sGAEpiMZZMsh%252b1woXyUXjwY3RqoIrAVYKs8FxuMq1eg%3d 15 nF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/AVX/SA101A181KAC?qs=sGAEpiMZZMsh%252b1woXyUXj8OXp%252bRMDh2M0Hbc8eTr6IY%3d 180 pF]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Ohmite/ON9135E-R58?qs=sGAEpiMZZMtlubZbdhIBIDvWcNDqMrFVaJIsPx%252bAPc8%3d 91kohm]&lt;br /&gt;
*2 [https://www.mouser.fr/ProductDetail/Illinois-Capacitor-CDE/107TTA010M?qs=sGAEpiMZZMsh%252b1woXyUXj6tSaZI%252bOgx%2fNzJnlNxDV9c%3d 100 µF]&lt;br /&gt;
*1 [https://www.mouser.fr/ProductDetail/Illinois-Capacitor-CDE/108TTA010M?qs=sGAEpiMZZMsh%252b1woXyUXj6tSaZI%252bOgx%2fKpcwmoQX9XA%3d 1000 µF]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
|-}&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Taky_Djeraba_Rapport_final_PFE.pdf&amp;diff=69688</id>
		<title>Fichier:Taky Djeraba Rapport final PFE.pdf</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=Fichier:Taky_Djeraba_Rapport_final_PFE.pdf&amp;diff=69688"/>
				<updated>2019-02-26T16:31:21Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69687</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69687"/>
				<updated>2019-02-26T16:25:28Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration des projets */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant: &amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on remarque l'erreur suivante: &amp;lt;code&amp;gt;Namespace route can't be blank&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ici, le test a été effectué sur moi et sur eloi zalczer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Après avoir fouillé dans la nouvelle base de donnée de gitlab, j'ai découvert une table &amp;quot;route&amp;quot;, qui permet de lier les namespaces aux utilisateurs correspondants. &lt;br /&gt;
&lt;br /&gt;
Étant que cette table n’existe pas dans l'ancienne base de donnée, j'ai &amp;quot;simulé&amp;quot; la création de mon compte en commençant par supprimer toutes les références à mon compte dans la bdd puis en me connectant à nouveau au gitlab. J'ai ensuite étudié la base de donnée afin de voir comment les tables sont remplis lors de la création d'un compte.&lt;br /&gt;
&lt;br /&gt;
Namespace créé dans le table du même nom:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM namespaces WHERE name='tdjeraba';&lt;br /&gt;
 id |   name   |   path   | owner_id |         created_at         |         updated_at         | type | description | avatar | share_with_group_lock | visibility_level | request_access_enabled | description_htm&lt;br /&gt;
 l | lfs_enabled | parent_id | require_two_factor_authentication | two_factor_grace_period | cached_markdown_version | runners_token | runners_token_encrypted&lt;br /&gt;
 ----+----------+----------+----------+----------------------------+----------------------------+------+-------------+--------+-----------------------+------------------+------------------------+----------------&lt;br /&gt;
 --+-------------+-----------+-----------------------------------+-------------------------+-------------------------+---------------+-------------------------&lt;br /&gt;
 '''40 | tdjeraba | tdjeraba |      226 | 2019-02-25 16:39:18.875182 | 2019-02-25 16:39:18.875182 |      |             |        | f                     |               20 | f                      |&lt;br /&gt;
  |             |           | f                                 |                      48 |                      13 |               |'''&lt;br /&gt;
 (1 row)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Infos créés dans la tables &amp;quot;route&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM routes;&lt;br /&gt;
 id | source_id | source_type |                path                |         created_at         |         updated_at         |                 name&lt;br /&gt;
 ----+-----------+-------------+------------------------------------+----------------------------+----------------------------+--------------------------------------&lt;br /&gt;
 '''83 |        40 | Namespace   | tdjeraba                           | 2019-02-25 16:39:18.877331 | 2019-02-25 16:39:18.877331 | tdjeraba'''&lt;br /&gt;
 84 |        49 | Project     | tdjeraba/ima3_tutorat_pa_2017      | 2019-02-25 16:39:50.115833 | 2019-02-25 16:39:50.115833 | tdjeraba / ima3_tutorat_pa_2017&lt;br /&gt;
 85 |        50 | Project     | tdjeraba/Djeraba_Cartier_Mouvement | 2019-02-25 16:39:52.786282 | 2019-02-25 16:39:52.786282 | tdjeraba / Djeraba_Cartier_Mouvement&lt;br /&gt;
 86 |        51 | Project     | tdjeraba/PFE_IMA_5                 | 2019-02-25 16:39:53.234764 | 2019-02-25 16:39:53.234764 | tdjeraba / PFE_IMA_5&lt;br /&gt;
 87 |        52 | Project     | tdjeraba/Un_test                   | 2019-02-25 16:40:11.589948 | 2019-02-25 16:40:11.589948 | tdjeraba / Un_test&lt;br /&gt;
 (5 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table &amp;quot;projects&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM projects;&lt;br /&gt;
 id |           name            |           path            | description |         created_at         |         updated_at         | creator_id | namespace_id |      last_activity_at      | import_url | visibi&lt;br /&gt;
 lity_level | archived | avatar | import_status | star_count |   import_type   | import_source | import_error | ci_id | shared_runners_enabled |    runners_token     | build_coverage_regex | build_allow_git_fetc&lt;br /&gt;
 h | build_timeout | pending_delete | public_builds | last_repository_check_failed | last_repository_check_at | container_registry_enabled | only_allow_merge_if_pipeline_succeeds | has_external_issue_tracker | r&lt;br /&gt;
 epository_storage | request_access_enabled | has_external_wiki | ci_config_path | lfs_enabled | description_html | only_allow_merge_if_all_discussions_are_resolved | printing_merge_request_link_enabled | auto_c&lt;br /&gt;
 ancel_pending_pipelines | import_jid | cached_markdown_version | delete_error | last_repository_updated_at | storage_version | resolve_outdated_diff_discussions | repository_read_only | merge_requests_ff_only_e&lt;br /&gt;
 nabled | merge_requests_rebase_enabled | jobs_cache_index | pages_https_only | remote_mirror_available_overridden | pool_repository_id |             runners_token_encrypted              | bfg_object_map&lt;br /&gt;
 ----+---------------------------+---------------------------+-------------+----------------------------+----------------------------+------------+--------------+----------------------------+------------+-------&lt;br /&gt;
 -----------+----------+--------+---------------+------------+-----------------+---------------+--------------+-------+------------------------+----------------------+----------------------+---------------------&lt;br /&gt;
 --+---------------+----------------+---------------+------------------------------+--------------------------+----------------------------+---------------------------------------+----------------------------+--&lt;br /&gt;
 ------------------+------------------------+-------------------+----------------+-------------+------------------+--------------------------------------------------+-------------------------------------+-------&lt;br /&gt;
 ------------------------+------------+-------------------------+--------------+----------------------------+-----------------+-----------------------------------+----------------------+-------------------------&lt;br /&gt;
 -------+-------------------------------+------------------+------------------+------------------------------------+--------------------+--------------------------------------------------+----------------&lt;br /&gt;
 49 | ima3_tutorat_pa_2017      | ima3_tutorat_pa_2017      |             | 2019-02-25 16:39:50.104623 | 2019-02-25 16:39:50.104623 |          1 |           '''40''' | 2019-02-25 16:39:50.104623 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | 7TaidVPrnZmf5UznhmYi |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:50.104623 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ZOr40ZE2Kj/bOsL2Run7A4mPtx4SibE6NW8iZClXQcKrNdEz |&lt;br /&gt;
 50 | Djeraba_Cartier_Mouvement | Djeraba_Cartier_Mouvement |             | 2019-02-25 16:39:52.781128 | 2019-02-25 16:39:52.781128 |          1 |           '''40''' | 2019-02-25 16:39:52.781128 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | sxyU_Ufren3npeZKnxo4 |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:52.781128 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | IMbg7ao1HD/QDpz+A9nbJo+agUPTutFfnKgHpft21VBcphqk |&lt;br /&gt;
 51 | PFE_IMA_5                 | PFE_IMA_5                 |             | 2019-02-25 16:39:53.229689 | 2019-02-25 16:39:53.229689 |          1 |           '''40''' | 2019-02-25 16:39:53.229689 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | yR5WvjpRoCzXYPZxyVjq |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:53.229689 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | Kuys74MKCh/aI9XIKuzbFZi0hAZGsfAwhgRlKW+7qdWWr10F |&lt;br /&gt;
 52 | Un_test                   | Un_test                   |             | 2019-02-25 16:40:11.584962 | 2019-02-25 16:40:11.584962 |          1 |           '''40''' | 2019-02-25 16:40:11.584962 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | Cfh4GP1Vk-E7HKR7dxrp |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:40:11.584962 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ENjxjLIwSxveTeqnO/fTWoWanAeNpUZf93g3LK2Yi8Qz3CSX |&lt;br /&gt;
 (4 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On vois dans les 3 tables ci-dessus que l'id du namespace &amp;quot;tdjeraba&amp;quot; est 40 et que cette valeur se retrouve dans la tables &amp;quot;project&amp;quot; et &amp;quot;route&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
J'ai finalement entrepris de construire la table &amp;quot;route&amp;quot; à partir de la table &amp;quot;namespace&amp;quot;, ce qui a pour effet de corriger le problème initial et donc de lier les projets à leurs utilisateurs.&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets===&lt;br /&gt;
&lt;br /&gt;
Afin d'importer les projets git à partir de l'ancien archives.plil.fr sur le nouveau serveur gitlab, on commence par transférer les repositories d'un serveur à l'autre. &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 scp -r * /var/opt/gitlab/git-data/repositories/* root@193.48.57.234:/var/opt/gitlab/git-data/repositories/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
''NB: attention à ne pas tenter de compresser les archives git dans un tar au risque de faire planter momentanément le serveur archives.plil.fr''&lt;br /&gt;
&lt;br /&gt;
Sur le nouveau serveur gitlab, on change l'utilisateur des archives puis on importe ensuite les repos grâce à la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 chown -R git.git /var/opt/gitlab/git-data/repositories/*&lt;br /&gt;
 gitlab-rake gitlab:import:repos['/var/opt/gitlab/git-data/repositories/']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69686</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69686"/>
				<updated>2019-02-26T16:21:56Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant: &amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on remarque l'erreur suivante: &amp;lt;code&amp;gt;Namespace route can't be blank&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ici, le test a été effectué sur moi et sur eloi zalczer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Après avoir fouillé dans la nouvelle base de donnée de gitlab, j'ai découvert une table &amp;quot;route&amp;quot;, qui permet de lier les namespaces aux utilisateurs correspondants. &lt;br /&gt;
&lt;br /&gt;
Étant que cette table n’existe pas dans l'ancienne base de donnée, j'ai &amp;quot;simulé&amp;quot; la création de mon compte en commençant par supprimer toutes les références à mon compte dans la bdd puis en me connectant à nouveau au gitlab. J'ai ensuite étudié la base de donnée afin de voir comment les tables sont remplis lors de la création d'un compte.&lt;br /&gt;
&lt;br /&gt;
Namespace créé dans le table du même nom:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM namespaces WHERE name='tdjeraba';&lt;br /&gt;
 id |   name   |   path   | owner_id |         created_at         |         updated_at         | type | description | avatar | share_with_group_lock | visibility_level | request_access_enabled | description_htm&lt;br /&gt;
 l | lfs_enabled | parent_id | require_two_factor_authentication | two_factor_grace_period | cached_markdown_version | runners_token | runners_token_encrypted&lt;br /&gt;
 ----+----------+----------+----------+----------------------------+----------------------------+------+-------------+--------+-----------------------+------------------+------------------------+----------------&lt;br /&gt;
 --+-------------+-----------+-----------------------------------+-------------------------+-------------------------+---------------+-------------------------&lt;br /&gt;
 '''40 | tdjeraba | tdjeraba |      226 | 2019-02-25 16:39:18.875182 | 2019-02-25 16:39:18.875182 |      |             |        | f                     |               20 | f                      |&lt;br /&gt;
  |             |           | f                                 |                      48 |                      13 |               |'''&lt;br /&gt;
 (1 row)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Infos créés dans la tables &amp;quot;route&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM routes;&lt;br /&gt;
 id | source_id | source_type |                path                |         created_at         |         updated_at         |                 name&lt;br /&gt;
 ----+-----------+-------------+------------------------------------+----------------------------+----------------------------+--------------------------------------&lt;br /&gt;
 '''83 |        40 | Namespace   | tdjeraba                           | 2019-02-25 16:39:18.877331 | 2019-02-25 16:39:18.877331 | tdjeraba'''&lt;br /&gt;
 84 |        49 | Project     | tdjeraba/ima3_tutorat_pa_2017      | 2019-02-25 16:39:50.115833 | 2019-02-25 16:39:50.115833 | tdjeraba / ima3_tutorat_pa_2017&lt;br /&gt;
 85 |        50 | Project     | tdjeraba/Djeraba_Cartier_Mouvement | 2019-02-25 16:39:52.786282 | 2019-02-25 16:39:52.786282 | tdjeraba / Djeraba_Cartier_Mouvement&lt;br /&gt;
 86 |        51 | Project     | tdjeraba/PFE_IMA_5                 | 2019-02-25 16:39:53.234764 | 2019-02-25 16:39:53.234764 | tdjeraba / PFE_IMA_5&lt;br /&gt;
 87 |        52 | Project     | tdjeraba/Un_test                   | 2019-02-25 16:40:11.589948 | 2019-02-25 16:40:11.589948 | tdjeraba / Un_test&lt;br /&gt;
 (5 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table &amp;quot;projects&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM projects;&lt;br /&gt;
 id |           name            |           path            | description |         created_at         |         updated_at         | creator_id | namespace_id |      last_activity_at      | import_url | visibi&lt;br /&gt;
 lity_level | archived | avatar | import_status | star_count |   import_type   | import_source | import_error | ci_id | shared_runners_enabled |    runners_token     | build_coverage_regex | build_allow_git_fetc&lt;br /&gt;
 h | build_timeout | pending_delete | public_builds | last_repository_check_failed | last_repository_check_at | container_registry_enabled | only_allow_merge_if_pipeline_succeeds | has_external_issue_tracker | r&lt;br /&gt;
 epository_storage | request_access_enabled | has_external_wiki | ci_config_path | lfs_enabled | description_html | only_allow_merge_if_all_discussions_are_resolved | printing_merge_request_link_enabled | auto_c&lt;br /&gt;
 ancel_pending_pipelines | import_jid | cached_markdown_version | delete_error | last_repository_updated_at | storage_version | resolve_outdated_diff_discussions | repository_read_only | merge_requests_ff_only_e&lt;br /&gt;
 nabled | merge_requests_rebase_enabled | jobs_cache_index | pages_https_only | remote_mirror_available_overridden | pool_repository_id |             runners_token_encrypted              | bfg_object_map&lt;br /&gt;
 ----+---------------------------+---------------------------+-------------+----------------------------+----------------------------+------------+--------------+----------------------------+------------+-------&lt;br /&gt;
 -----------+----------+--------+---------------+------------+-----------------+---------------+--------------+-------+------------------------+----------------------+----------------------+---------------------&lt;br /&gt;
 --+---------------+----------------+---------------+------------------------------+--------------------------+----------------------------+---------------------------------------+----------------------------+--&lt;br /&gt;
 ------------------+------------------------+-------------------+----------------+-------------+------------------+--------------------------------------------------+-------------------------------------+-------&lt;br /&gt;
 ------------------------+------------+-------------------------+--------------+----------------------------+-----------------+-----------------------------------+----------------------+-------------------------&lt;br /&gt;
 -------+-------------------------------+------------------+------------------+------------------------------------+--------------------+--------------------------------------------------+----------------&lt;br /&gt;
 49 | ima3_tutorat_pa_2017      | ima3_tutorat_pa_2017      |             | 2019-02-25 16:39:50.104623 | 2019-02-25 16:39:50.104623 |          1 |           '''40''' | 2019-02-25 16:39:50.104623 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | 7TaidVPrnZmf5UznhmYi |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:50.104623 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ZOr40ZE2Kj/bOsL2Run7A4mPtx4SibE6NW8iZClXQcKrNdEz |&lt;br /&gt;
 50 | Djeraba_Cartier_Mouvement | Djeraba_Cartier_Mouvement |             | 2019-02-25 16:39:52.781128 | 2019-02-25 16:39:52.781128 |          1 |           '''40''' | 2019-02-25 16:39:52.781128 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | sxyU_Ufren3npeZKnxo4 |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:52.781128 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | IMbg7ao1HD/QDpz+A9nbJo+agUPTutFfnKgHpft21VBcphqk |&lt;br /&gt;
 51 | PFE_IMA_5                 | PFE_IMA_5                 |             | 2019-02-25 16:39:53.229689 | 2019-02-25 16:39:53.229689 |          1 |           '''40''' | 2019-02-25 16:39:53.229689 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | yR5WvjpRoCzXYPZxyVjq |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:53.229689 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | Kuys74MKCh/aI9XIKuzbFZi0hAZGsfAwhgRlKW+7qdWWr10F |&lt;br /&gt;
 52 | Un_test                   | Un_test                   |             | 2019-02-25 16:40:11.584962 | 2019-02-25 16:40:11.584962 |          1 |           '''40''' | 2019-02-25 16:40:11.584962 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | Cfh4GP1Vk-E7HKR7dxrp |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:40:11.584962 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ENjxjLIwSxveTeqnO/fTWoWanAeNpUZf93g3LK2Yi8Qz3CSX |&lt;br /&gt;
 (4 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On vois dans les 3 tables ci-dessus que l'id du namespace &amp;quot;tdjeraba&amp;quot; est 40 et que cette valeur se retrouve dans la tables &amp;quot;project&amp;quot; et &amp;quot;route&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
J'ai finalement entrepris de construire la table &amp;quot;route&amp;quot; à partir de la table &amp;quot;namespace&amp;quot;, ce qui a pour effet de corriger le problème initial et donc de lier les projets à leurs utilisateurs.&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets===&lt;br /&gt;
&lt;br /&gt;
Afin d'importer les projets git à partir de l'ancien archives.plil.fr sur le nouveau serveur gitlab, on commence par transférer les repositories d'un serveur à l'autre. &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 scp -r * /var/opt/gitlab/git-data/repositories/* root@193.48.57.234:/var/opt/gitlab/git-data/repositories/&lt;br /&gt;
 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
''NB: attention à ne pas tenter de compresser les archives git dans un tar au risque de faire planter momentanément le serveur archives.plil.fr''&lt;br /&gt;
&lt;br /&gt;
Sur le nouveau serveur gitlab, on change l'utilisateur des archives puis on importe ensuite les repos grâce à la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 chown -R git.git /var/opt/gitlab/git-data/repositories/*&lt;br /&gt;
 gitlab-rake gitlab:import:repos['/var/opt/gitlab/git-data/repositories/']&lt;br /&gt;
 &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69549</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69549"/>
				<updated>2019-02-25T19:26:15Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant: &amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on remarque l'erreur suivante: &amp;lt;code&amp;gt;Namespace route can't be blank&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ici, le test a été effectué sur moi et sur eloi zalczer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Après avoir fouillé dans la nouvelle base de donnée de gitlab, j'ai découvert une table &amp;quot;route&amp;quot;, qui permet de lier les namespaces aux utilisateurs correspondants. &lt;br /&gt;
&lt;br /&gt;
Étant que cette table n’existe pas dans l'ancienne base de donnée, j'ai &amp;quot;simulé&amp;quot; la création de mon compte en commençant par supprimer toutes les références à mon compte dans la bdd puis en me connectant à nouveau au gitlab. J'ai ensuite étudié la base de donnée afin de voir comment les tables sont remplis lors de la création d'un compte.&lt;br /&gt;
&lt;br /&gt;
Namespace créé dans le table du même nom:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM namespaces WHERE name='tdjeraba';&lt;br /&gt;
 id |   name   |   path   | owner_id |         created_at         |         updated_at         | type | description | avatar | share_with_group_lock | visibility_level | request_access_enabled | description_htm&lt;br /&gt;
 l | lfs_enabled | parent_id | require_two_factor_authentication | two_factor_grace_period | cached_markdown_version | runners_token | runners_token_encrypted&lt;br /&gt;
 ----+----------+----------+----------+----------------------------+----------------------------+------+-------------+--------+-----------------------+------------------+------------------------+----------------&lt;br /&gt;
 --+-------------+-----------+-----------------------------------+-------------------------+-------------------------+---------------+-------------------------&lt;br /&gt;
 '''40 | tdjeraba | tdjeraba |      226 | 2019-02-25 16:39:18.875182 | 2019-02-25 16:39:18.875182 |      |             |        | f                     |               20 | f                      |&lt;br /&gt;
  |             |           | f                                 |                      48 |                      13 |               |'''&lt;br /&gt;
 (1 row)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Infos créés dans la tables &amp;quot;route&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM routes;&lt;br /&gt;
 id | source_id | source_type |                path                |         created_at         |         updated_at         |                 name&lt;br /&gt;
 ----+-----------+-------------+------------------------------------+----------------------------+----------------------------+--------------------------------------&lt;br /&gt;
 '''83 |        40 | Namespace   | tdjeraba                           | 2019-02-25 16:39:18.877331 | 2019-02-25 16:39:18.877331 | tdjeraba'''&lt;br /&gt;
 84 |        49 | Project     | tdjeraba/ima3_tutorat_pa_2017      | 2019-02-25 16:39:50.115833 | 2019-02-25 16:39:50.115833 | tdjeraba / ima3_tutorat_pa_2017&lt;br /&gt;
 85 |        50 | Project     | tdjeraba/Djeraba_Cartier_Mouvement | 2019-02-25 16:39:52.786282 | 2019-02-25 16:39:52.786282 | tdjeraba / Djeraba_Cartier_Mouvement&lt;br /&gt;
 86 |        51 | Project     | tdjeraba/PFE_IMA_5                 | 2019-02-25 16:39:53.234764 | 2019-02-25 16:39:53.234764 | tdjeraba / PFE_IMA_5&lt;br /&gt;
 87 |        52 | Project     | tdjeraba/Un_test                   | 2019-02-25 16:40:11.589948 | 2019-02-25 16:40:11.589948 | tdjeraba / Un_test&lt;br /&gt;
 (5 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table &amp;quot;projects&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM projects;&lt;br /&gt;
 id |           name            |           path            | description |         created_at         |         updated_at         | creator_id | namespace_id |      last_activity_at      | import_url | visibi&lt;br /&gt;
 lity_level | archived | avatar | import_status | star_count |   import_type   | import_source | import_error | ci_id | shared_runners_enabled |    runners_token     | build_coverage_regex | build_allow_git_fetc&lt;br /&gt;
 h | build_timeout | pending_delete | public_builds | last_repository_check_failed | last_repository_check_at | container_registry_enabled | only_allow_merge_if_pipeline_succeeds | has_external_issue_tracker | r&lt;br /&gt;
 epository_storage | request_access_enabled | has_external_wiki | ci_config_path | lfs_enabled | description_html | only_allow_merge_if_all_discussions_are_resolved | printing_merge_request_link_enabled | auto_c&lt;br /&gt;
 ancel_pending_pipelines | import_jid | cached_markdown_version | delete_error | last_repository_updated_at | storage_version | resolve_outdated_diff_discussions | repository_read_only | merge_requests_ff_only_e&lt;br /&gt;
 nabled | merge_requests_rebase_enabled | jobs_cache_index | pages_https_only | remote_mirror_available_overridden | pool_repository_id |             runners_token_encrypted              | bfg_object_map&lt;br /&gt;
 ----+---------------------------+---------------------------+-------------+----------------------------+----------------------------+------------+--------------+----------------------------+------------+-------&lt;br /&gt;
 -----------+----------+--------+---------------+------------+-----------------+---------------+--------------+-------+------------------------+----------------------+----------------------+---------------------&lt;br /&gt;
 --+---------------+----------------+---------------+------------------------------+--------------------------+----------------------------+---------------------------------------+----------------------------+--&lt;br /&gt;
 ------------------+------------------------+-------------------+----------------+-------------+------------------+--------------------------------------------------+-------------------------------------+-------&lt;br /&gt;
 ------------------------+------------+-------------------------+--------------+----------------------------+-----------------+-----------------------------------+----------------------+-------------------------&lt;br /&gt;
 -------+-------------------------------+------------------+------------------+------------------------------------+--------------------+--------------------------------------------------+----------------&lt;br /&gt;
 49 | ima3_tutorat_pa_2017      | ima3_tutorat_pa_2017      |             | 2019-02-25 16:39:50.104623 | 2019-02-25 16:39:50.104623 |          1 |           '''40''' | 2019-02-25 16:39:50.104623 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | 7TaidVPrnZmf5UznhmYi |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:50.104623 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ZOr40ZE2Kj/bOsL2Run7A4mPtx4SibE6NW8iZClXQcKrNdEz |&lt;br /&gt;
 50 | Djeraba_Cartier_Mouvement | Djeraba_Cartier_Mouvement |             | 2019-02-25 16:39:52.781128 | 2019-02-25 16:39:52.781128 |          1 |           '''40''' | 2019-02-25 16:39:52.781128 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | sxyU_Ufren3npeZKnxo4 |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:52.781128 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | IMbg7ao1HD/QDpz+A9nbJo+agUPTutFfnKgHpft21VBcphqk |&lt;br /&gt;
 51 | PFE_IMA_5                 | PFE_IMA_5                 |             | 2019-02-25 16:39:53.229689 | 2019-02-25 16:39:53.229689 |          1 |           '''40''' | 2019-02-25 16:39:53.229689 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | yR5WvjpRoCzXYPZxyVjq |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:53.229689 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | Kuys74MKCh/aI9XIKuzbFZi0hAZGsfAwhgRlKW+7qdWWr10F |&lt;br /&gt;
 52 | Un_test                   | Un_test                   |             | 2019-02-25 16:40:11.584962 | 2019-02-25 16:40:11.584962 |          1 |           '''40''' | 2019-02-25 16:40:11.584962 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | Cfh4GP1Vk-E7HKR7dxrp |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:40:11.584962 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ENjxjLIwSxveTeqnO/fTWoWanAeNpUZf93g3LK2Yi8Qz3CSX |&lt;br /&gt;
 (4 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On vois dans les 3 tables ci-dessus que l'id du namespace &amp;quot;tdjeraba&amp;quot; est 40 et que cette valeur se retrouve dans la tables &amp;quot;project&amp;quot; et &amp;quot;route&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
J'ai finalement entrepris de construire la table &amp;quot;route&amp;quot; à partir de la table &amp;quot;namespace&amp;quot;, ce qui a pour effet de corriger le problème initial et donc de lier les projets à leurs utilisateurs.&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69548</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69548"/>
				<updated>2019-02-25T18:15:17Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant: &amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on remarque l'erreur suivante: &amp;lt;code&amp;gt;Namespace route can't be blank&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ici, le test a été effectué sur moi et sur eloi zalczer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Après avoir fouillé dans la nouvelle base de donnée de gitlab, j'ai découvert une table &amp;quot;route&amp;quot;, qui permet de lier les namespaces aux utilisateurs correspondants. &lt;br /&gt;
&lt;br /&gt;
Étant que cette table n’existe pas dans l'ancienne base de donnée, j'ai &amp;quot;simulé&amp;quot; la création de mon compte en commençant par supprimer toutes les références à mon compte dans la bdd puis en me connectant à nouveau au gitlab. J'ai ensuite étudié la base de donnée afin de voir comment les tables sont remplis lors de la création d'un compte.&lt;br /&gt;
&lt;br /&gt;
Namespace créé dans le table du même nom:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM namespaces WHERE name='tdjeraba';&lt;br /&gt;
 id |   name   |   path   | owner_id |         created_at         |         updated_at         | type | description | avatar | share_with_group_lock | visibility_level | request_access_enabled | description_htm&lt;br /&gt;
 l | lfs_enabled | parent_id | require_two_factor_authentication | two_factor_grace_period | cached_markdown_version | runners_token | runners_token_encrypted&lt;br /&gt;
 ----+----------+----------+----------+----------------------------+----------------------------+------+-------------+--------+-----------------------+------------------+------------------------+----------------&lt;br /&gt;
 --+-------------+-----------+-----------------------------------+-------------------------+-------------------------+---------------+-------------------------&lt;br /&gt;
 '''40 | tdjeraba | tdjeraba |      226 | 2019-02-25 16:39:18.875182 | 2019-02-25 16:39:18.875182 |      |             |        | f                     |               20 | f                      |&lt;br /&gt;
  |             |           | f                                 |                      48 |                      13 |               |'''&lt;br /&gt;
 (1 row)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Infos créés dans la tables &amp;quot;route&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM routes;&lt;br /&gt;
 id | source_id | source_type |                path                |         created_at         |         updated_at         |                 name&lt;br /&gt;
 ----+-----------+-------------+------------------------------------+----------------------------+----------------------------+--------------------------------------&lt;br /&gt;
 '''83 |        40 | Namespace   | tdjeraba                           | 2019-02-25 16:39:18.877331 | 2019-02-25 16:39:18.877331 | tdjeraba'''&lt;br /&gt;
 84 |        49 | Project     | tdjeraba/ima3_tutorat_pa_2017      | 2019-02-25 16:39:50.115833 | 2019-02-25 16:39:50.115833 | tdjeraba / ima3_tutorat_pa_2017&lt;br /&gt;
 85 |        50 | Project     | tdjeraba/Djeraba_Cartier_Mouvement | 2019-02-25 16:39:52.786282 | 2019-02-25 16:39:52.786282 | tdjeraba / Djeraba_Cartier_Mouvement&lt;br /&gt;
 86 |        51 | Project     | tdjeraba/PFE_IMA_5                 | 2019-02-25 16:39:53.234764 | 2019-02-25 16:39:53.234764 | tdjeraba / PFE_IMA_5&lt;br /&gt;
 87 |        52 | Project     | tdjeraba/Un_test                   | 2019-02-25 16:40:11.589948 | 2019-02-25 16:40:11.589948 | tdjeraba / Un_test&lt;br /&gt;
 (5 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table &amp;quot;projects&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM projects;&lt;br /&gt;
 id |           name            |           path            | description |         created_at         |         updated_at         | creator_id | namespace_id |      last_activity_at      | import_url | visibi&lt;br /&gt;
 lity_level | archived | avatar | import_status | star_count |   import_type   | import_source | import_error | ci_id | shared_runners_enabled |    runners_token     | build_coverage_regex | build_allow_git_fetc&lt;br /&gt;
 h | build_timeout | pending_delete | public_builds | last_repository_check_failed | last_repository_check_at | container_registry_enabled | only_allow_merge_if_pipeline_succeeds | has_external_issue_tracker | r&lt;br /&gt;
 epository_storage | request_access_enabled | has_external_wiki | ci_config_path | lfs_enabled | description_html | only_allow_merge_if_all_discussions_are_resolved | printing_merge_request_link_enabled | auto_c&lt;br /&gt;
 ancel_pending_pipelines | import_jid | cached_markdown_version | delete_error | last_repository_updated_at | storage_version | resolve_outdated_diff_discussions | repository_read_only | merge_requests_ff_only_e&lt;br /&gt;
 nabled | merge_requests_rebase_enabled | jobs_cache_index | pages_https_only | remote_mirror_available_overridden | pool_repository_id |             runners_token_encrypted              | bfg_object_map&lt;br /&gt;
 ----+---------------------------+---------------------------+-------------+----------------------------+----------------------------+------------+--------------+----------------------------+------------+-------&lt;br /&gt;
 -----------+----------+--------+---------------+------------+-----------------+---------------+--------------+-------+------------------------+----------------------+----------------------+---------------------&lt;br /&gt;
 --+---------------+----------------+---------------+------------------------------+--------------------------+----------------------------+---------------------------------------+----------------------------+--&lt;br /&gt;
 ------------------+------------------------+-------------------+----------------+-------------+------------------+--------------------------------------------------+-------------------------------------+-------&lt;br /&gt;
 ------------------------+------------+-------------------------+--------------+----------------------------+-----------------+-----------------------------------+----------------------+-------------------------&lt;br /&gt;
 -------+-------------------------------+------------------+------------------+------------------------------------+--------------------+--------------------------------------------------+----------------&lt;br /&gt;
 49 | ima3_tutorat_pa_2017      | ima3_tutorat_pa_2017      |             | 2019-02-25 16:39:50.104623 | 2019-02-25 16:39:50.104623 |          1 |           '''40''' | 2019-02-25 16:39:50.104623 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | 7TaidVPrnZmf5UznhmYi |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:50.104623 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ZOr40ZE2Kj/bOsL2Run7A4mPtx4SibE6NW8iZClXQcKrNdEz |&lt;br /&gt;
 50 | Djeraba_Cartier_Mouvement | Djeraba_Cartier_Mouvement |             | 2019-02-25 16:39:52.781128 | 2019-02-25 16:39:52.781128 |          1 |           '''40''' | 2019-02-25 16:39:52.781128 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | sxyU_Ufren3npeZKnxo4 |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:52.781128 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | IMbg7ao1HD/QDpz+A9nbJo+agUPTutFfnKgHpft21VBcphqk |&lt;br /&gt;
 51 | PFE_IMA_5                 | PFE_IMA_5                 |             | 2019-02-25 16:39:53.229689 | 2019-02-25 16:39:53.229689 |          1 |           '''40''' | 2019-02-25 16:39:53.229689 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | yR5WvjpRoCzXYPZxyVjq |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:53.229689 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | Kuys74MKCh/aI9XIKuzbFZi0hAZGsfAwhgRlKW+7qdWWr10F |&lt;br /&gt;
 52 | Un_test                   | Un_test                   |             | 2019-02-25 16:40:11.584962 | 2019-02-25 16:40:11.584962 |          1 |           '''40''' | 2019-02-25 16:40:11.584962 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | Cfh4GP1Vk-E7HKR7dxrp |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:40:11.584962 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ENjxjLIwSxveTeqnO/fTWoWanAeNpUZf93g3LK2Yi8Qz3CSX |&lt;br /&gt;
 (4 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On vois dans les 3 tables ci-dessus que l'id du namespace &amp;quot;tdjeraba&amp;quot; est 40 et que cette valeur se retrouve dans la tables &amp;quot;project&amp;quot; et &amp;quot;route&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
J'ai finalement entrepris de construire la table &amp;quot;route&amp;quot; à partir de la table &amp;quot;namespace&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69547</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69547"/>
				<updated>2019-02-25T18:11:54Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant: &amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on remarque l'erreur suivante: &amp;lt;code&amp;gt;Namespace route can't be blank&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ici, le test a été effectué sur moi et sur eloi zalczer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Après avoir fouillé dans la nouvelle base de donnée de gitlab, j'ai découvert une table &amp;quot;route&amp;quot;, qui permet de lier les namespaces aux utilisateurs correspondants. &lt;br /&gt;
&lt;br /&gt;
Étant que cette table n’existe pas dans l'ancienne base de donnée, j'ai &amp;quot;simulé&amp;quot; la création de mon compte en commençant par supprimer toutes les références à mon compte dans la bdd puis en me connectant à nouveau au gitlab. J'ai ensuite étudié la base de donnée afin de voir comment les tables sont remplis lors de la création d'un compte.&lt;br /&gt;
&lt;br /&gt;
Exemple:&lt;br /&gt;
&lt;br /&gt;
Namespace créé dans le table du même nom:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM namespaces WHERE name='tdjeraba';&lt;br /&gt;
 id |   name   |   path   | owner_id |         created_at         |         updated_at         | type | description | avatar | share_with_group_lock | visibility_level | request_access_enabled | description_htm&lt;br /&gt;
 l | lfs_enabled | parent_id | require_two_factor_authentication | two_factor_grace_period | cached_markdown_version | runners_token | runners_token_encrypted&lt;br /&gt;
 ----+----------+----------+----------+----------------------------+----------------------------+------+-------------+--------+-----------------------+------------------+------------------------+----------------&lt;br /&gt;
 --+-------------+-----------+-----------------------------------+-------------------------+-------------------------+---------------+-------------------------&lt;br /&gt;
 '''40 | tdjeraba | tdjeraba |      226 | 2019-02-25 16:39:18.875182 | 2019-02-25 16:39:18.875182 |      |             |        | f                     |               20 | f                      |&lt;br /&gt;
  |             |           | f                                 |                      48 |                      13 |               |'''&lt;br /&gt;
 (1 row)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Infos créés dans la tables &amp;quot;route&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM routes;&lt;br /&gt;
 id | source_id | source_type |                path                |         created_at         |         updated_at         |                 name&lt;br /&gt;
 ----+-----------+-------------+------------------------------------+----------------------------+----------------------------+--------------------------------------&lt;br /&gt;
 '''83 |        40 | Namespace   | tdjeraba                           | 2019-02-25 16:39:18.877331 | 2019-02-25 16:39:18.877331 | tdjeraba'''&lt;br /&gt;
 84 |        49 | Project     | tdjeraba/ima3_tutorat_pa_2017      | 2019-02-25 16:39:50.115833 | 2019-02-25 16:39:50.115833 | tdjeraba / ima3_tutorat_pa_2017&lt;br /&gt;
 85 |        50 | Project     | tdjeraba/Djeraba_Cartier_Mouvement | 2019-02-25 16:39:52.786282 | 2019-02-25 16:39:52.786282 | tdjeraba / Djeraba_Cartier_Mouvement&lt;br /&gt;
 86 |        51 | Project     | tdjeraba/PFE_IMA_5                 | 2019-02-25 16:39:53.234764 | 2019-02-25 16:39:53.234764 | tdjeraba / PFE_IMA_5&lt;br /&gt;
 87 |        52 | Project     | tdjeraba/Un_test                   | 2019-02-25 16:40:11.589948 | 2019-02-25 16:40:11.589948 | tdjeraba / Un_test&lt;br /&gt;
 (5 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table &amp;quot;projects&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM projects;&lt;br /&gt;
 id |           name            |           path            | description |         created_at         |         updated_at         | creator_id | namespace_id |      last_activity_at      | import_url | visibi&lt;br /&gt;
 lity_level | archived | avatar | import_status | star_count |   import_type   | import_source | import_error | ci_id | shared_runners_enabled |    runners_token     | build_coverage_regex | build_allow_git_fetc&lt;br /&gt;
 h | build_timeout | pending_delete | public_builds | last_repository_check_failed | last_repository_check_at | container_registry_enabled | only_allow_merge_if_pipeline_succeeds | has_external_issue_tracker | r&lt;br /&gt;
 epository_storage | request_access_enabled | has_external_wiki | ci_config_path | lfs_enabled | description_html | only_allow_merge_if_all_discussions_are_resolved | printing_merge_request_link_enabled | auto_c&lt;br /&gt;
 ancel_pending_pipelines | import_jid | cached_markdown_version | delete_error | last_repository_updated_at | storage_version | resolve_outdated_diff_discussions | repository_read_only | merge_requests_ff_only_e&lt;br /&gt;
 nabled | merge_requests_rebase_enabled | jobs_cache_index | pages_https_only | remote_mirror_available_overridden | pool_repository_id |             runners_token_encrypted              | bfg_object_map&lt;br /&gt;
 ----+---------------------------+---------------------------+-------------+----------------------------+----------------------------+------------+--------------+----------------------------+------------+-------&lt;br /&gt;
 -----------+----------+--------+---------------+------------+-----------------+---------------+--------------+-------+------------------------+----------------------+----------------------+---------------------&lt;br /&gt;
 --+---------------+----------------+---------------+------------------------------+--------------------------+----------------------------+---------------------------------------+----------------------------+--&lt;br /&gt;
 ------------------+------------------------+-------------------+----------------+-------------+------------------+--------------------------------------------------+-------------------------------------+-------&lt;br /&gt;
 ------------------------+------------+-------------------------+--------------+----------------------------+-----------------+-----------------------------------+----------------------+-------------------------&lt;br /&gt;
 -------+-------------------------------+------------------+------------------+------------------------------------+--------------------+--------------------------------------------------+----------------&lt;br /&gt;
 49 | ima3_tutorat_pa_2017      | ima3_tutorat_pa_2017      |             | 2019-02-25 16:39:50.104623 | 2019-02-25 16:39:50.104623 |          1 |           '''40''' | 2019-02-25 16:39:50.104623 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | 7TaidVPrnZmf5UznhmYi |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:50.104623 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ZOr40ZE2Kj/bOsL2Run7A4mPtx4SibE6NW8iZClXQcKrNdEz |&lt;br /&gt;
 50 | Djeraba_Cartier_Mouvement | Djeraba_Cartier_Mouvement |             | 2019-02-25 16:39:52.781128 | 2019-02-25 16:39:52.781128 |          1 |           '''40''' | 2019-02-25 16:39:52.781128 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | sxyU_Ufren3npeZKnxo4 |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:52.781128 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | IMbg7ao1HD/QDpz+A9nbJo+agUPTutFfnKgHpft21VBcphqk |&lt;br /&gt;
 51 | PFE_IMA_5                 | PFE_IMA_5                 |             | 2019-02-25 16:39:53.229689 | 2019-02-25 16:39:53.229689 |          1 |           '''40''' | 2019-02-25 16:39:53.229689 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | yR5WvjpRoCzXYPZxyVjq |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:53.229689 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | Kuys74MKCh/aI9XIKuzbFZi0hAZGsfAwhgRlKW+7qdWWr10F |&lt;br /&gt;
 52 | Un_test                   | Un_test                   |             | 2019-02-25 16:40:11.584962 | 2019-02-25 16:40:11.584962 |          1 |           '''40''' | 2019-02-25 16:40:11.584962 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | Cfh4GP1Vk-E7HKR7dxrp |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:40:11.584962 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ENjxjLIwSxveTeqnO/fTWoWanAeNpUZf93g3LK2Yi8Qz3CSX |&lt;br /&gt;
 (4 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On vois dans les 3 tables ci-dessus que l'id du namespace &amp;quot;tdjeraba&amp;quot; est 40 et que cette valeur se retrouve dans la tables &amp;quot;project&amp;quot; et &amp;quot;route&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
J'ai finalement entrepris de construire la table &amp;quot;route&amp;quot; à partir de la table &amp;quot;namespace&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69546</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69546"/>
				<updated>2019-02-25T18:05:46Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant: &amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on remarque l'erreur suivante: &amp;lt;code&amp;gt;Namespace route can't be blank&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Ici, le test a été effectué sur moi et sur eloi zalczer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Après avoir fouillé dans la nouvelle base de donnée de gitlab, j'ai découvert une table &amp;quot;route&amp;quot;, qui permet de lier les namespaces aux utilisateurs correspondants. &lt;br /&gt;
&lt;br /&gt;
Étant que cette table n’existe pas dans l'ancienne base de donnée, j'ai &amp;quot;simulé&amp;quot; la création de mon compte en commençant par supprimer toutes les références à mon compte dans la bdd puis en me connectant à nouveau au gitlab. J'ai ensuite étudié la base de donnée afin de voir comment les tables sont remplis lors de la création d'un compte.&lt;br /&gt;
&lt;br /&gt;
Exemple:&lt;br /&gt;
&lt;br /&gt;
Namespace créé dans le table du même nom:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM namespaces WHERE name='tdjeraba';&lt;br /&gt;
 id |   name   |   path   | owner_id |         created_at         |         updated_at         | type | description | avatar | share_with_group_lock | visibility_level | request_access_enabled | description_htm&lt;br /&gt;
 l | lfs_enabled | parent_id | require_two_factor_authentication | two_factor_grace_period | cached_markdown_version | runners_token | runners_token_encrypted&lt;br /&gt;
 ----+----------+----------+----------+----------------------------+----------------------------+------+-------------+--------+-----------------------+------------------+------------------------+----------------&lt;br /&gt;
 --+-------------+-----------+-----------------------------------+-------------------------+-------------------------+---------------+-------------------------&lt;br /&gt;
 '''40 | tdjeraba | tdjeraba |      226 | 2019-02-25 16:39:18.875182 | 2019-02-25 16:39:18.875182 |      |             |        | f                     |               20 | f                      |&lt;br /&gt;
  |             |           | f                                 |                      48 |                      13 |               |'''&lt;br /&gt;
 (1 row)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Infos créés dans la tables &amp;quot;route&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM routes;&lt;br /&gt;
 id | source_id | source_type |                path                |         created_at         |         updated_at         |                 name&lt;br /&gt;
 ----+-----------+-------------+------------------------------------+----------------------------+----------------------------+--------------------------------------&lt;br /&gt;
 '''83 |        40 | Namespace   | tdjeraba                           | 2019-02-25 16:39:18.877331 | 2019-02-25 16:39:18.877331 | tdjeraba'''&lt;br /&gt;
 84 |        49 | Project     | tdjeraba/ima3_tutorat_pa_2017      | 2019-02-25 16:39:50.115833 | 2019-02-25 16:39:50.115833 | tdjeraba / ima3_tutorat_pa_2017&lt;br /&gt;
 85 |        50 | Project     | tdjeraba/Djeraba_Cartier_Mouvement | 2019-02-25 16:39:52.786282 | 2019-02-25 16:39:52.786282 | tdjeraba / Djeraba_Cartier_Mouvement&lt;br /&gt;
 86 |        51 | Project     | tdjeraba/PFE_IMA_5                 | 2019-02-25 16:39:53.234764 | 2019-02-25 16:39:53.234764 | tdjeraba / PFE_IMA_5&lt;br /&gt;
 87 |        52 | Project     | tdjeraba/Un_test                   | 2019-02-25 16:40:11.589948 | 2019-02-25 16:40:11.589948 | tdjeraba / Un_test&lt;br /&gt;
 (5 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table &amp;quot;projects&amp;quot;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlabhq_production=&amp;gt; SELECT * FROM projects;&lt;br /&gt;
 id |           name            |           path            | description |         created_at         |         updated_at         | creator_id | namespace_id |      last_activity_at      | import_url | visibi&lt;br /&gt;
 lity_level | archived | avatar | import_status | star_count |   import_type   | import_source | import_error | ci_id | shared_runners_enabled |    runners_token     | build_coverage_regex | build_allow_git_fetc&lt;br /&gt;
 h | build_timeout | pending_delete | public_builds | last_repository_check_failed | last_repository_check_at | container_registry_enabled | only_allow_merge_if_pipeline_succeeds | has_external_issue_tracker | r&lt;br /&gt;
 epository_storage | request_access_enabled | has_external_wiki | ci_config_path | lfs_enabled | description_html | only_allow_merge_if_all_discussions_are_resolved | printing_merge_request_link_enabled | auto_c&lt;br /&gt;
 ancel_pending_pipelines | import_jid | cached_markdown_version | delete_error | last_repository_updated_at | storage_version | resolve_outdated_diff_discussions | repository_read_only | merge_requests_ff_only_e&lt;br /&gt;
 nabled | merge_requests_rebase_enabled | jobs_cache_index | pages_https_only | remote_mirror_available_overridden | pool_repository_id |             runners_token_encrypted              | bfg_object_map&lt;br /&gt;
 ----+---------------------------+---------------------------+-------------+----------------------------+----------------------------+------------+--------------+----------------------------+------------+-------&lt;br /&gt;
 -----------+----------+--------+---------------+------------+-----------------+---------------+--------------+-------+------------------------+----------------------+----------------------+---------------------&lt;br /&gt;
 --+---------------+----------------+---------------+------------------------------+--------------------------+----------------------------+---------------------------------------+----------------------------+--&lt;br /&gt;
 ------------------+------------------------+-------------------+----------------+-------------+------------------+--------------------------------------------------+-------------------------------------+-------&lt;br /&gt;
 ------------------------+------------+-------------------------+--------------+----------------------------+-----------------+-----------------------------------+----------------------+-------------------------&lt;br /&gt;
 -------+-------------------------------+------------------+------------------+------------------------------------+--------------------+--------------------------------------------------+----------------&lt;br /&gt;
 49 | ima3_tutorat_pa_2017      | ima3_tutorat_pa_2017      |             | 2019-02-25 16:39:50.104623 | 2019-02-25 16:39:50.104623 |          1 |           '''40''' | 2019-02-25 16:39:50.104623 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | 7TaidVPrnZmf5UznhmYi |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:50.104623 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ZOr40ZE2Kj/bOsL2Run7A4mPtx4SibE6NW8iZClXQcKrNdEz |&lt;br /&gt;
 50 | Djeraba_Cartier_Mouvement | Djeraba_Cartier_Mouvement |             | 2019-02-25 16:39:52.781128 | 2019-02-25 16:39:52.781128 |          1 |           '''40''' | 2019-02-25 16:39:52.781128 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | sxyU_Ufren3npeZKnxo4 |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:52.781128 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | IMbg7ao1HD/QDpz+A9nbJo+agUPTutFfnKgHpft21VBcphqk |&lt;br /&gt;
 51 | PFE_IMA_5                 | PFE_IMA_5                 |             | 2019-02-25 16:39:53.229689 | 2019-02-25 16:39:53.229689 |          1 |           '''40''' | 2019-02-25 16:39:53.229689 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | yR5WvjpRoCzXYPZxyVjq |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:39:53.229689 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | Kuys74MKCh/aI9XIKuzbFZi0hAZGsfAwhgRlKW+7qdWWr10F |&lt;br /&gt;
 52 | Un_test                   | Un_test                   |             | 2019-02-25 16:40:11.584962 | 2019-02-25 16:40:11.584962 |          1 |           '''40''' | 2019-02-25 16:40:11.584962 |            |&lt;br /&gt;
         0 | f        |        |               |          0 | bare_repository |               |              |       | t                      | Cfh4GP1Vk-E7HKR7dxrp |                      | t&lt;br /&gt;
  |          3600 | f              | t             |                              |                          | t                          | f                                     |                            | d&lt;br /&gt;
 efault            | f                      |                   |                |             |                  | f                                                | t                                   |&lt;br /&gt;
                      1 |            |                      13 |              | 2019-02-25 16:40:11.584962 |                 | f                                 |                      | f&lt;br /&gt;
       | f                             |                  | t                |                                    |                    | ENjxjLIwSxveTeqnO/fTWoWanAeNpUZf93g3LK2Yi8Qz3CSX |&lt;br /&gt;
 (4 rows)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
J'ai donc entrepris de remplir manuellement cette table en&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69181</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69181"/>
				<updated>2019-02-21T11:42:45Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant: &amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on constate que le serveur gitlab tente d'enregistrer les utilisateurs malgré leur présence dans la bdd.&lt;br /&gt;
&lt;br /&gt;
Ici, le test a été effectué sur moi et sur eloi zalczer:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Username has already been taken&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69180</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69180"/>
				<updated>2019-02-21T11:41:46Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant (&amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on constate que le serveur gitlab tente d'enregistrer les utilisateurs malgré leur présence dans la bdd:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Username has already been taken&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69179</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69179"/>
				<updated>2019-02-21T11:41:28Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant (&amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on constate que le serveur gitlab tente d'enregistrer les utilisateurs malgré leur présence dans la bdd:&lt;br /&gt;
&lt;br /&gt;
 February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Username has already been taken&amp;quot;]&lt;br /&gt;
 February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69178</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69178"/>
				<updated>2019-02-21T11:41:13Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolutions */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
L'ajout des utilisateur dans la bdd s'est effectué avec succès. Un autre problème est cependant survenu. Lors de la connexion, le serveur gitlab renvoie l'erreur &amp;quot;Access denied for your LDAP account&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
En consultant le fichier log suivant (&amp;lt;code&amp;gt;/var/log/gitlab/gitlab-rails/application.log&amp;lt;/code&amp;gt;, on constate que le serveur gitlab tente d'enregistrer les utilisateurs malgré leur présence dans la bdd:&lt;br /&gt;
&lt;br /&gt;
February 14, 2019 17:58: (LDAP) Error saving user cn=ezalczer,ou=people,dc=polytech-lille.fr (Eloi.Zalczer@polytech-lille.net): [&amp;quot;Username has already been taken&amp;quot;]&lt;br /&gt;
February 14, 2019 17:59: (LDAP) Error saving user cn=tdjeraba,ou=people,dc=polytech-lille.fr (Taky.Djeraba@polytech-lille.net): [&amp;quot;Namespace route can't be blank&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69177</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69177"/>
				<updated>2019-02-21T11:32:26Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
Les tâbles suivantes ont été peuplés:&lt;br /&gt;
* ''identities'', contenant des informations relatives à l'identité d'un utilisateur, récupérés depuis le serveur LDAP.&lt;br /&gt;
* ''users'', contenant des informations relatives aux utilisateurs (nom, adresse mail, avatar, bio, etc ... )&lt;br /&gt;
* ''namespaces'', reliant un utilisateur à son namespace.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69176</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69176"/>
				<updated>2019-02-21T11:27:54Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requête permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
Préalablement à l'ajout des utilisateurs dans la nouvelle bdd, des modifications ont du être faite au niveau des données à insérer. En effet, puisque les versions des bdds sont différentes, certaines entrées présente dans l'ancienne bdd ne sont plus présente dans la nouvelle. &lt;br /&gt;
&lt;br /&gt;
Les données à insérer ont donc été récupérées, mises dans des fichier csv, purgées des données inutiles (car non existante dans la nouvelle bdd), puis reformaté et enfin inséré dans la nouvelle base de donnée.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69175</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69175"/>
				<updated>2019-02-21T11:16:12Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Exemple de requêtes permettant de peupler la table &amp;quot;namespaces&amp;quot;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --&lt;br /&gt;
 -- Data for Name: namespaces; Type: TABLE DATA; Schema: public; Owner: gitlab&lt;br /&gt;
 --&lt;br /&gt;
 &lt;br /&gt;
 COPY namespaces (id, name, path, owner_id, created_at, updated_at, type, description, avatar) FROM stdin;&lt;br /&gt;
 1       root    root    1       2015-03-08 08:55:01.965703      2015-03-08 08:55:01.965703      \N              \N&lt;br /&gt;
 2       rex     rex     2       2015-03-10 15:16:39.707054      2015-03-10 15:16:39.707054      \N              \N&lt;br /&gt;
 3       tmaurice        tmaurice        3       2015-03-10 18:20:27.326589      2015-03-10 18:20:27.326589      \N              \N&lt;br /&gt;
 4       tvantroy        tvantroy        4       2015-03-10 19:49:38.046898      2015-03-10 19:49:38.046898      \N              \N&lt;br /&gt;
 ...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
De là, on peut accéder aux informations de la bdd et y ajouter de nouveaux éléments.&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69174</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69174"/>
				<updated>2019-02-21T11:06:56Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rails dbconsole&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69173</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69173"/>
				<updated>2019-02-21T11:06:25Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment, j'ai du me résoudre à peupler manuellement la nouvelle base de donnée avec les données récupérées sur l'ancienne. &lt;br /&gt;
&lt;br /&gt;
Dans la backup effectué sur archives.plil.fr, on trouve un fichier sql contenant l'ensemble des requêtes permettant le peuplement de la nouvelle base de donnée. L'idée fut donc de récupérer ces requêtes afin d’insérer la nouvelle base de donné les données liés aux utilisateurs et aux namespace.&lt;br /&gt;
&lt;br /&gt;
Afin d'accéder à la base de donnée, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 gitlab-rails dbconsole&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69172</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69172"/>
				<updated>2019-02-21T10:55:38Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
A cause des problèmes évoqués précédemment,&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69171</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69171"/>
				<updated>2019-02-21T10:54:45Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
======Archives git corrompues======&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
======Échecs de Restauration======&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69170</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69170"/>
				<updated>2019-02-21T10:54:15Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Problèmes et résolution */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
'''Archives git corrompues'''&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégritée de chaque projet git a été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
'''Échecs de Restauration'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tentatives de restauration ont été effectués sans grand succès, et ce pour plusieurs raisons:&lt;br /&gt;
* Différence de version entre le nouveau et l'ancien serveur gitlab &lt;br /&gt;
* Différence de version entre la nouvelle et l'ancienne base de donnée psql&lt;br /&gt;
&lt;br /&gt;
Afin de résoudre ces problèmes, j'ai tenté de downgrader le nouveau serveur gitlab afin de restaurer l'ancienne base de donnée, mais ce fut sans succès. En dépit d'une restauration effectué sans erreur, le nouveau serveur gitlab n'a pas fonctionné.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69169</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69169"/>
				<updated>2019-02-21T10:41:14Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration de la base de donnée psql du serveur archives.plil.fr */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Problèmes et résolution=====&lt;br /&gt;
&lt;br /&gt;
'''Archives git corrompues'''&lt;br /&gt;
&lt;br /&gt;
Dans un premier temps, il m'a fallut purger l'ensemble des repo corrompus afin d'effectuer une backup. Pour cela, un petit script permettant de vérifier intégrité de chaque projet git à été rédigé. Ce dernier rentre dans chaque dossier git et exécute la commande suivante: &amp;lt;code&amp;gt;git fsck&amp;lt;/code&amp;gt;. De cette manière, je suis parvenu à effectuer une backup après avoir retiré 55 projets corrompus.&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69168</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69168"/>
				<updated>2019-02-21T10:34:36Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Sauvegarde &amp;amp; Restauration */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
La commande suivante permet de restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69167</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69167"/>
				<updated>2019-02-21T10:34:09Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde &amp;amp; Restauration=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cette commande effecte une backup que l'on peut retrouver dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/backups/&amp;lt;/code&amp;gt;, sous la forme d'une archive tar, et dont le nom se présente sous la forme suivante: ''timestamp_gitlab_backup.tar''&lt;br /&gt;
&lt;br /&gt;
Pour restaurer une backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69166</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69166"/>
				<updated>2019-02-21T10:30:25Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Sauvegarde */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:create&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour restaurer un backup:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:backup:restore BACKUP=&amp;lt;Timestamp&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69165</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69165"/>
				<updated>2019-02-21T10:28:22Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration de la base de donnée psql du serveur archives.plil.fr */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
L'étape suivante a donc consisté à tenter de restaurer l'ancienne base de donnée sur le nouveau serveur gitlab.&lt;br /&gt;
&lt;br /&gt;
=====Sauvegarde=====&lt;br /&gt;
&lt;br /&gt;
Gitlab est fourni avec gitlab-rake, un outil permettant d'effectuer des tâches de maintenance via des rake-task. &lt;br /&gt;
&lt;br /&gt;
Pour faire une backup, on utilise la fonction suivante:&lt;br /&gt;
&lt;br /&gt;
 gitlab-rake gitlab:backup:create&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69164</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69164"/>
				<updated>2019-02-21T10:22:21Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration des projets du serveur archives.plil.fr */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
Avant d'importer les projets, il faut donc faire en sorte de peupler la nouvelle base de donnée avec les utilisateurs et avec leur namespace.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69163</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69163"/>
				<updated>2019-02-21T10:21:05Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration des projets du serveur archives.plil.fr */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab crée ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence du namespace &amp;quot;tdjeraba&amp;quot;, qui à été ajouté lors de l'importation des projets git présent dans le dossier du même nom.&lt;br /&gt;
* Le namespace &amp;quot;tdjeraba1&amp;quot; est ensuite créé. &lt;br /&gt;
&lt;br /&gt;
Si on inverse les étapes précédentes, c'est à dire que l'on créé l'utilisateur &amp;quot;tdjeraba&amp;quot; lors d'une première connexion et que l'on importe le projet par la suite, on parvient par cotre à associer les projets à l'utilisateur &amp;quot;tdjeraba&amp;quot;.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69162</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69162"/>
				<updated>2019-02-21T10:08:04Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration des projets du serveur archives.plil.fr */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, recourir à cette méthode ne permet pas d'associer les projets aux utilisateurs, puisque ces derniers n'existent pas dans la base de donnée du nouveau serveur gitlab. &lt;br /&gt;
&lt;br /&gt;
J'ai en effet noté que lors de l'importation d'un projet &amp;quot;en dur&amp;quot;, le serveur gitlab créer ce que l'on appelle des &amp;quot;namespaces&amp;quot; pour chaque projets. Les namespaces correspondent en quelque sorte à l’identité du détenteur d'un projet, et il peut s'agir d'un utilisateur, d'un groupe ou d'un sous groupe (voir [https://docs.gitlab.com/ee/user/group/#namespaces ici]).&lt;br /&gt;
  &lt;br /&gt;
En effet, lors d'une première connexion sur archives.ilot.org, il se passe les choses suivante:&lt;br /&gt;
* Un utilisateur correspondant à l'identifiant polytech est créé (par exemple, ''tdjeraba'')&lt;br /&gt;
* Le serveur gitlab détecte la présence&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69161</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69161"/>
				<updated>2019-02-21T09:55:24Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration des projets du serveur archives.plil.fr */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['chemin/vers/les/repos/a/importer']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69160</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69160"/>
				<updated>2019-02-21T09:54:53Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration des projets du serveur archives.plil.fr */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 gitlab-rake gitlab:import:repos['/var/opt/gitlab/git-data/repository-import-&amp;lt;date&amp;gt;']&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69159</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69159"/>
				<updated>2019-02-21T09:54:29Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration des projets du serveur archives.plil.fr */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Il est possible d'importer ces projet sur le nouveau serveur gitlab de manière très simple en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 gitlab-rake gitlab:import:repos['/var/opt/gitlab/git-data/repository-import-&amp;lt;date&amp;gt;']&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69158</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69158"/>
				<updated>2019-02-21T09:53:01Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Mise en place d'un nouveau serveur gitlab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69157</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69157"/>
				<updated>2019-02-21T09:51:59Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Restauration de la base de donnée psql du serveur archives.plil.fr */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
Le principal problème posé par la mise en place du nouveau gitlab est la récupération des projets présent sous la forme de dossier en ''.git''. Ces dernier sont accessibles &amp;quot;en dur&amp;quot; dans le dossier suivant: &amp;lt;code&amp;gt;/var/opt/gitlab/git-data/repositories/&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Installation du nouveau serveur gitlab (archies.ilot.org)====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69156</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69156"/>
				<updated>2019-02-21T09:47:47Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Mise en place d'un nouveau serveur gitlab */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Installation et configuration====&lt;br /&gt;
&lt;br /&gt;
L'installation du nouveau serveur gitlab s'est faite de manière très simple en installant le package omnibus. Afin de rester fidèle à l'ancien gitlab, la version communautaire à été installé. &lt;br /&gt;
&lt;br /&gt;
La configuration LDAP présente sur archives.plil.fr a ensuite été calqué sur le nouveau gitlab afin de permettre aux étudiants de ce connecter.&lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Installation du nouveau serveur gitlab (archies.ilot.org)====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69155</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69155"/>
				<updated>2019-02-21T09:42:11Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Semaine 18 */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Mise en place d'un nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
Les problèmes rencontrés récemment sur la base de donnée de l'actuel serveur gitlab archives.plil.fr ont conduit à la volonté de mettre en place un serveur gitlab sur le serveur archives.ilot.org.&lt;br /&gt;
&lt;br /&gt;
Les objectifs qui m'ont été donné sont les suivants:&lt;br /&gt;
* Dupliquer l'actuel serveur gitlab (même configuration)&lt;br /&gt;
* Récupérer les projets présent sur l'actuel gitlab &lt;br /&gt;
&lt;br /&gt;
====Restauration de la base de donnée psql du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
====Restauration des projets du serveur archives.plil.fr====&lt;br /&gt;
&lt;br /&gt;
====Installation du nouveau serveur gitlab (archies.ilot.org)====&lt;br /&gt;
&lt;br /&gt;
====Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab====&lt;br /&gt;
&lt;br /&gt;
====Problèmes et résolutions====&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69154</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69154"/>
				<updated>2019-02-21T09:34:07Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Système de sauvegarde */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les tâches automatiques de sauvegarde ont ensuite été mise en place sur cron:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM &lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69153</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69153"/>
				<updated>2019-02-21T09:32:41Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Système de sauvegarde */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69152</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69152"/>
				<updated>2019-02-21T09:32:08Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Système de sauvegarde */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les trois tâches de sauvegarde ont ensuite été mise en place sur crontab:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 # Tout les jours a 2h du matin#&lt;br /&gt;
 0 2 * * * /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky daily /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque dimanche a 2h du matin&lt;br /&gt;
 0 2 * * sun /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky weekly /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&lt;br /&gt;
 &lt;br /&gt;
 # Chaque premier dimanche du mois&lt;br /&gt;
 0 2 * * sun [ $(date +%d) -le 07 ] &amp;amp;&amp;amp; /root/node/Projet/PFE_IMA_5/scripts/sauvegarde/allSave_Taky monthly &lt;br /&gt;
 /root/node/PFE_IMA_5/scripts/sauvegarde/ListeVM&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69151</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69151"/>
				<updated>2019-02-21T09:22:59Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Système de sauvegarde */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69150</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69150"/>
				<updated>2019-02-21T09:22:38Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Système de sauvegarde */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
Des modifications ont été apportés au système de sauvegarde afin que ce dernier fonctionne efficacement avec des VMs distantes. Le script de sauvegarde utilise dorénavant un fichier nommé ListeVM, qui contient la liste des VMs ainsi que leur adresse IP:&lt;br /&gt;
&lt;br /&gt;
 dune:192.168.0.1&lt;br /&gt;
 fondation:192.168.0.1&lt;br /&gt;
 hyperion:127.0.0.1&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69149</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69149"/>
				<updated>2019-02-21T09:08:54Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Installation d'un nouveau serveur de virtualisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''192.168.0.1'''/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet '''172.26.64.23'''/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69148</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69148"/>
				<updated>2019-02-21T09:08:20Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Installation d'un nouveau serveur de virtualisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Configuration:&lt;br /&gt;
* Réseau local entre baleine est table (nom du nouveau serveur de virtualisation) en 192.168.0.*&lt;br /&gt;
* Bridge relié au réseau insecure&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 192.168.0.1/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.23/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69147</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69147"/>
				<updated>2019-02-21T09:05:13Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Installation d'un nouveau serveur de virtualisation */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
Un nouveau serveur de virtualisation a aussi été mis en place en salle serveur. L'objectif de cette installation fut de tester en &amp;quot;grandeur nature&amp;quot; le système de sauvegarde. &lt;br /&gt;
Deux nouvelle machine virtuelles ont été mise en place à cette occasion: &lt;br /&gt;
* Dune&lt;br /&gt;
* Fondation&lt;br /&gt;
&lt;br /&gt;
Une bride relié au réseau insecure à été mise en place:&lt;br /&gt;
&lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000           '''Liaison fibre'''&lt;br /&gt;
     link/ether 28:92:4a:d1:36:a8 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 192.168.0.1/24 brd 192.168.0.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 fe80::2a92:4aff:fed1:36a8/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 28:92:4a:d1:36:ac brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 4: eth2: &amp;lt;NO-CARRIER,BROADCAST,MULTICAST,UP&amp;gt; mtu 1500 qdisc mq state DOWN group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:06 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc mq master bridge state UP group default qlen 1000     '''Liason ethernet'''&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
 8: bridge: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc noqueue state UP group default qlen 1000&lt;br /&gt;
     link/ether 00:1e:0b:c8:4b:04 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.23/20 brd 172.26.79.255 scope global bridge&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:21e:bff:fec8:4b04/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 933sec preferred_lft 833sec&lt;br /&gt;
     inet6 fe80::21e:bff:fec8:4b04/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69146</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69146"/>
				<updated>2019-02-21T08:58:29Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Installation des cartes réseau fibre 10G */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G===&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, une journée fut consacré à l'installation de cartes réseau fibre sur le serveurs baleine ainsi que sur un autre serveur dell. Une liaison fibre entre un nouveau serveur de virtualisation et baleine à aussi été mise en place. L'idée derrière cette installation est de na pas surcharger le réseau lors de la prise des backups par le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
Au cours de cette installation, j'ai du faire face à un problème lié à la liaison fibre non détecté. Il s'est finalement avéré que ce problème est matériel et lié au dysfonctionnement des cartes réseaux de la marque cisco. Afin de mettre en évidence ce problème, les cartes réseaux ont été testées une par une sur le commutateur.&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69145</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69145"/>
				<updated>2019-02-21T08:40:06Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Mardi(8h) */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerde&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G ===&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69121</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69121"/>
				<updated>2019-02-20T13:55:30Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Projet Git */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible via le lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerdes&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G ===&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69120</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69120"/>
				<updated>2019-02-20T13:49:17Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Installation des volumes virutels: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible au lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerdes&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G ===&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	<entry>
		<id>https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69119</id>
		<title>IMA5 2018/2019 P31 : Supervision des serveurs de la plateforme informatique</title>
		<link rel="alternate" type="text/html" href="https://projets-ima.plil.fr/mediawiki/index.php?title=IMA5_2018/2019_P31_:_Supervision_des_serveurs_de_la_plateforme_informatique&amp;diff=69119"/>
				<updated>2019-02-20T13:48:56Z</updated>
		
		<summary type="html">&lt;p&gt;Tdjeraba : /* Installation des volumes virutels: */&lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&amp;lt;br style=&amp;quot;clear: both;&amp;quot;/&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=Projet Git=&lt;br /&gt;
&lt;br /&gt;
le projet git est disponible au lien suivant:&lt;br /&gt;
&lt;br /&gt;
https://archives.plil.fr/tdjeraba/PFE_IMA_5&lt;br /&gt;
&lt;br /&gt;
=Présentation générale=&lt;br /&gt;
&lt;br /&gt;
L'objectif du projet est de réaliser un tableau de bord affichant l'état des serveurs physiques et virtuels de la plateforme informatique ainsi que de mettre en place un système de backup automatique.&lt;br /&gt;
&lt;br /&gt;
==Description==&lt;br /&gt;
&lt;br /&gt;
L'idée pour la réalisation du projet est de remonter l'état des machines physiques et virtuelles sur un serveur virtuel de supervision, serveur sur lequel on va trouver les applications web permettant la génération du tableau de bord. La gestion des tâches de sauvegarde des machines virtuelles se fera, quant à elle, sur le serveur de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
==Objectifs==&lt;br /&gt;
&lt;br /&gt;
Le projet s'articule autour de ces deux principaux objectifs:&lt;br /&gt;
* Créer un serveur de supervision fonctionnel et sécurisé permettant de visualiser les données des VMs et machines physique en temps réel.&lt;br /&gt;
* Mettre en place un système d'alerte.&lt;br /&gt;
* Mettre en place une solution pour la gestion automatique des sauvegardes des machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
=Préparation du projet=&lt;br /&gt;
&lt;br /&gt;
==Architecture en salle serveur==&lt;br /&gt;
&lt;br /&gt;
[[Fichier:infra_plateforme.png|thumb|600px|center|Source: https://wiki-ima.plil.fr/mediawiki//index.php/Supervision_des_serveurs_de_la_plateforme]]&lt;br /&gt;
&lt;br /&gt;
==Cahier des charges==&lt;br /&gt;
&lt;br /&gt;
Le système doit rapporter les points suivants :&lt;br /&gt;
* état de santé des machines physiques : température, état des disques, ...&lt;br /&gt;
* occupation des machines physiques : utilisation CPU, utilisation espace disque, utilisation mémoire&lt;br /&gt;
* état de santé des connexions réseau : réseau Renater, réseau ADSL, réseau SDSL&lt;br /&gt;
* état de santé des machines virtuelles : temps d\'exécution de chaque machine virtuelle&lt;br /&gt;
* occupation des machines virtuelles : utilisation disque et mémoire&lt;br /&gt;
* état de certaines applications critiques :&lt;br /&gt;
** date de validité des clefs DNSSEC&lt;br /&gt;
** dates des dernières sauvegardes des machines virtuelles&lt;br /&gt;
* vérification des certificats https de sites web.&lt;br /&gt;
* affichage de la température en salle serveur&lt;br /&gt;
&lt;br /&gt;
En plus de cela, un système de sauvegarde automatique&lt;br /&gt;
&lt;br /&gt;
==Choix techniques : matériel et logiciel==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du serveur de supervision, mon choix s'est tourné vers une solution déjà existante: '''Nagios Core'''. En plus d'être facile à mettre en place, Nagios possède l'avantage de posséder les plugins nécessaire au monitoring des machines virtuelles Xen.&lt;br /&gt;
&lt;br /&gt;
A cela, on peut aussi ajouter une communauté active mettant à disposition des plugins et addons sur la plateforme communautaire [https://exchange.nagios.org/  nagios exchange].&lt;br /&gt;
&lt;br /&gt;
La surveillance des hôtes ainsi que des machines virtuelles sera assuré grâce à un applicatif nommé '''NRPE''':&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Nagios-NRPE.jpeg|center|thumb|1500px|Schéma de fonctionnement de Nagios+NRPE - Source: https://assets.nagios.com/downloads/nagioscore/docs/nrpe/NRPE.pdf]]&lt;br /&gt;
&lt;br /&gt;
Cet agent permet de faire remonter à notre serveurs serveurs de monitoring (ici notre serveur nagios) le résultat de scripts lancé directement sur les hôtes.&lt;br /&gt;
&lt;br /&gt;
==Liste des tâches à effectuer==&lt;br /&gt;
&lt;br /&gt;
* Dans un premier temps, il sera nécessaire de réaliser une phase de test sur les machines projet en salle E306, L'idée sera de monitorer un PC depuis un autre PC.&lt;br /&gt;
* La deuxième étape consistera à installer la machine virtuelle et à mettre en place le serveur de supervision affichant l'état des machines physiques et virtuelles ainsi que des réseaux (réseau Renater, réseau ADSL, réseau SDSL) et effectuant la vérification des certificats https.&lt;br /&gt;
* La troisième partie du projet sera consacré l'automatisation des tâches de sauvegardes des VMs.&lt;br /&gt;
* Une fois cela fait, il faudra se concentrer sur la vérification des clefs DNSSEC.&lt;br /&gt;
* Il a prévu par la suite de mettre en place un système de surveillance de température en salle serveur.&lt;br /&gt;
* Toute autre tâche priorisé par Mr Redon et/ou Mr Vantroys.&lt;br /&gt;
&lt;br /&gt;
==Calendrier prévisionnel==&lt;br /&gt;
&lt;br /&gt;
Septembre: &lt;br /&gt;
* Un serveur de supervision fonctionnel avec AU MOINS une partie des valeurs à monitorer.&lt;br /&gt;
&lt;br /&gt;
Octobre: &lt;br /&gt;
* Idéalement, avoir toutes valeurs à monitorer.&lt;br /&gt;
* commencer à mettre en place les tâches de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
Novembre: &lt;br /&gt;
* Avoir un serveur de supervision fonctionnel à 100 % avec toutes les valeurs à surveiller. &lt;br /&gt;
* Idéalement, avoir des tâches de sauvegarde fonctionnelles. &lt;br /&gt;
* Commencer à travailler sur la vérification des clefs DNSSEC.&lt;br /&gt;
&lt;br /&gt;
Décembre: &lt;br /&gt;
* Serveur de supervision et tâches de sauvegarde fonctionnelles à 100%.&lt;br /&gt;
* Vérification des clefs DNSSEC en partie fonctionnelle.&lt;br /&gt;
&lt;br /&gt;
=Réalisation du Projet=&lt;br /&gt;
&lt;br /&gt;
==Semaine 1==&lt;br /&gt;
&lt;br /&gt;
Durant cette semaine, 12h ont été consacré:&lt;br /&gt;
&lt;br /&gt;
* A de la documentation pour le choix de la solution à utiliser.&lt;br /&gt;
* Réalisation de test sur les machines en salle E306.&lt;br /&gt;
* Début de l'installation et/ou de la modification de plugins à utiliser avec NRPE pour monitorer certaines valeurs (Température).&lt;br /&gt;
&lt;br /&gt;
Tests réalisé sur zabeth13 en surveillant zabeth15:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:NagiosServer.jpg|thumb|1500px|center|Interface Nagios]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 2==&lt;br /&gt;
&lt;br /&gt;
Les tests ayant été concluants voir (semaine 0), l'objectif pour cette semaine fut de mettre en place la supervision sur le serveur de sauvegarde baleine.&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi matin (4h):====&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
* Installation de nagios sur la VM de supervision '''&amp;quot;supervise&amp;quot;'''&lt;br /&gt;
* Installation de NRPE sur baleine&lt;br /&gt;
* Premier tests des plugins:&lt;br /&gt;
** check_load : test la surcharge du serveur. &lt;br /&gt;
** check_mem : retourne la quantité de mémoire et SwAP disponible sur le serveur&lt;br /&gt;
** check_disk : retourne la quantité d'espace de stockage disponible&lt;br /&gt;
&lt;br /&gt;
====Jeudi (8h):====&lt;br /&gt;
* Mise en place d'un plugin  vérification de température du processeur&lt;br /&gt;
* Création d'un plugin de vérification d'état de santé des disques&lt;br /&gt;
&lt;br /&gt;
====Vendredi (8h):====&lt;br /&gt;
* Mise en place d'un plugin de vérification de l'état des VMs&lt;br /&gt;
* Résolution de problèmes pour NRPE (accès/droit des utilisateurs pour l’exécution de certain scripts)&lt;br /&gt;
&lt;br /&gt;
===Problèmes rencontrés et résolution===&lt;br /&gt;
&lt;br /&gt;
Des problèmes ont été rencontré lors de la mise en place des plugin de vérification d'état des disques et des VMs. Ces derniers furent lié à un souci de droit d'accès de certains plugins lancé par NRPE. &lt;br /&gt;
&lt;br /&gt;
L'erreur s'est manifesté de la manière suivante: Le lancement d'une commande shell via un script(plugin) par NRPE s'est faite sans erreur mais avec aucun output. &lt;br /&gt;
&lt;br /&gt;
Pour régler le problème, il a été nécessaire de donner à NRPE les même droits que le root pour l’exécution de certains plugins en suivant les étapes indiqué dans [https://kb.op5.com/display/HOWTOs/Running+plugins+with+NRPE+as+root+or+another+user#sthash.SsY2PreR.dpbs ce guide]:&lt;br /&gt;
&lt;br /&gt;
* Installation de sudo &lt;br /&gt;
* Ajout des lignes suivantes au fichier '''/etc/sudoers''' avec visudo:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Defaults: nagios !requiretty&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/check_xenvm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;nagios    ALL=(root)  NOPASSWD: /usr/local/nagios/libexec/smart_check_disks.sh&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
'''NB: Cette configuration peut être dangereuse est sera modifié par la suite'''.&lt;br /&gt;
&lt;br /&gt;
* Dans le fichier de configuation '''/usr/local/nagios/etc/nrpe.cfg''':&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_xenvm]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_xenvmm -w 1 -c 2&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_smartN]='''/usr/bin/sudo''' /usr/lib/nagios/plugins/check_smartN N&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Déploiement NRPE &amp;amp; Configuration de Nagios===&lt;br /&gt;
&lt;br /&gt;
====Idée générale====&lt;br /&gt;
&lt;br /&gt;
La mise en place de la surveillance d'un serveur (physique comme virtuel) se fait en deux temps:&lt;br /&gt;
* Installation et configuration de NRPE sur le serveur distant à surveiller. &lt;br /&gt;
* Configuration de Nagios sur le serveur de supervision.&lt;br /&gt;
&lt;br /&gt;
====Configuration de Nagios====&lt;br /&gt;
&lt;br /&gt;
La configuration de Nagios se fait de manière assez simple par la modification des fichiers de configuration présent dans le répertoire &amp;lt;code&amp;gt;/usr/local/nagios/etc/&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
L'arborescence dans ce répertoire se présente comme suit:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- cgi.cfg                    '''Config de l'application web de nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- htpasswd.users             '''Contient les identifiants pour la connexion à l'application web, ici: ''nagiosadmin:1234'''''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- nagios.cfg                 '''Fichier de configuration de Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- resource.cfg               '''Définition de chemin pour l'accès aux scripts lancé par Nagios''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- objects                    '''Dossier contenant les fichier de configuration relatifs aux services et hôtes &amp;lt;/font&amp;gt;  &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- commands.cfg          '''Fichier de configuration des commandes pouvant être lancé par Nagios'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- contacts.cfg          '''Configuration des contacts à avertir en cas de problème'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- localhost.cfg         '''Configuration de la supervision du serveur hôte Nagios'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- printer.cfg           '''Définition des imprimantes hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- switch.cfg            '''Définition des switchs hôtes à superviser'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- templates.cfg         '''Fichier contenant des templates de base pour la définition d'hôtes ou de services'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- timeperiods.cfg       '''Définition des configs de temps'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- windows.cfg           '''Exemple d'un fichier de configuration pour une machine Windows'''&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|-- servers                    '''Dossier contenant les fichier de configuration servant à la définition des hôtes à monitorer et des services à executer'''&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- baleine.cfg           '''Définitions pour l'hôte baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;|    |-- vmBaleine.cfg         '''Définitions pour les VMs se trouvant sur baleine''' &amp;lt;/font&amp;gt;   &lt;br /&gt;
&lt;br /&gt;
Afin se surveiller une donnée, il est nécessaire de définir deux principaux élément:&lt;br /&gt;
* Un hôte à surveiller.&lt;br /&gt;
* Un servir à mettre en place.&lt;br /&gt;
&lt;br /&gt;
La définition de ces objets se fait au moyen de macros dans des fichier de configuration (.cfg), situés dans un répertoire dédié: &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers&amp;lt;/code&amp;gt;. &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les définitions ci-dessous se situent dans le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/servers/baleine.cfg&amp;lt;/code&amp;gt; et permettent de monitorer le niveau de charge du serveur baleine:&lt;br /&gt;
&lt;br /&gt;
On définie un hôte en lui attribuant une adresse:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define host&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      use linux-box&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      host_name baleine.insecserv.deule.net{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      alias Serveur de sauvegarde Baleine&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;      address 172.26.64.15&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Et on met en place un service sur cet hôte:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define service{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     use generic-service&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     host_name baleine.insecserv.deule.net&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     service_description Current Load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     check_command check_nrpe!check_load&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On peut voir dans la définition du service ci-dessus que Nagios exécute la commande '''check_nrpe''', laquelle prend en paramètre '''&amp;quot;check_load&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
La définition de la commande check_nrpe est faite dans le fichier de configuration &amp;lt;code&amp;gt;/usr/local/nagios/etc/objects/commands.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;define command{&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_name check_nrpe&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     command_line /usr/lib/nagios/plugins/check_nrpe -H $HOSTADDRESS$ -c $ARG1$&amp;lt;/font&amp;gt; &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;}&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
La commande '''check_nrpe''' va ensuite faire un appel au daemon '''nrpe''' executé sur la machine distante à monitorer.&lt;br /&gt;
&lt;br /&gt;
====Installation &amp;amp; Configuration de NRPE====&lt;br /&gt;
&lt;br /&gt;
L'installation de NRPE sur le serveur distant à monitorer s'est fait en suivant [https://support.nagios.com/kb/article.php?id=515#Debian ce guide].&lt;br /&gt;
&lt;br /&gt;
NRPE doit ensuite se paramétrer en modifiant le fichier &amp;lt;code&amp;gt;/usr/local/nagios/etc/nrpe.cfg&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
Serveurs autorisés à communiquer avec nrpe:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; allowed_hosts=127.0.0.1,'''172.26.64.13'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Permet de demander à NRPE de lancer des commande avec des arguments&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dont_blame_nrme='''1'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Définition des commandes à lancer:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''# Le script ''/usr/local/nagios/libexec/check_load'' est lancé lorsque NRPE reçoit ''check_load'': '''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;command[check_load]=/usr/local/nagios/libexec/check_load -r -w .15,.10,.05 -c .30,.25,.20&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;...&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 3==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problèmes lié à l’exécution de quelques scripts (problème d'affichage de la température, de l'état des disques)&lt;br /&gt;
* Rédaction du wiki&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Finalisation des scripts de vérification de la température du CPU et de l'état des disques&lt;br /&gt;
* Installation d'une VM de test: '''vmtest'''&lt;br /&gt;
* Mise en place de nrpe sur la VM de test &lt;br /&gt;
* Tests des plugins sur la VM&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers tests effectué pour la vérification des connexions ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Création de la VM &amp;quot;vmtest&amp;quot;===&lt;br /&gt;
&lt;br /&gt;
Dans le but de tester la la supervision sur une VM, la machine virtuelle &amp;quot;vmtest&amp;quot; a été créée:&lt;br /&gt;
&lt;br /&gt;
Commande de création de la machine virtuelle:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;xen-create-image &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --hostname=vmtest \&amp;lt;/font&amp;gt;                 &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --memory=256mb \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --vcpus=1 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dir=/usr/local/xen \&amp;lt;/font&amp;gt;   &lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --ip=172.26.64.16 \  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --netmask=255.255.255.0 \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --dist=stable \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --size=4Gb \   &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; --swap=128mb \&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Script smartctl===&lt;br /&gt;
&lt;br /&gt;
Afin de vérifier l'état de santé des disques durs, un script fonctionne grace à l'outil &amp;lt;code&amp;gt;smartctl&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
Exemple commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[0-7] /dev/cciss/c0d1&amp;lt;/code&amp;gt;, pour un disque du serveur baleine (slot0). Cette commande permet de récupérer des informations concernant l'état de santé des disques, la température ainsi que divers informations (fabriquant, etc ...):&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF INFORMATION SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor:               HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Product:              DG146A4960&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Revision:             HPDB&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;User Capacity:        146 815 737 856 bytes [146 GB]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical block size:   512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Rotation Rate:        10020 rpm&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Logical Unit id:      0x5000cca000062ed4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Serial number:        P4V3DDTA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Device type:          disk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Transport protocol:   SAS (SPL-3)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Local Time is:        Fri Dec  7 15:22:21 2018 CET&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Available - device has SMART capability.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART support is:     Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Temperature Warning:  Enabled&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;=== START OF READ SMART DATA SECTION ===&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''SMART Health Status: OK'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Current Drive Temperature:     34 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Drive Trip Temperature:        70 C&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Manufactured in week 34 of year 2007&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Specified cycle count over device lifetime:  50000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Accumulated start-stop cycles:  118&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Elements in grown defect list: 0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor (Seagate) cache information&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  Blocks sent to initiator = 6238682277216256&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Error counter log:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           Errors Corrected by           Total   Correction     Gigabytes    Total&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;               ECC          rereads/    errors   algorithm      processed    uncorrected&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;           fast | delayed   rewrites  corrected  invocations   [10^9 bytes]  errors&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;read:          0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;write:         0        0         0         0          0          0,000           0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Non-medium error count:      403&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;SMART Self-test log&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Num  Test              Status                 segment  LifeTime  LBA_first_err [SK ASC ASQ]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;     Description                              number   (hours)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 1  Background long   Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;# 2  Background short  Completed                   -    1819                 - [-   -    -]&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Long (extended) Self Test duration: 2541 seconds [42,4 minutes]&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour les disques de la baie DAS, on récupère des informations plus détaillés sur l'état de santé des diques. Commande: &amp;lt;code&amp;gt;smartctl -ad cciss,[8-19] /dev/cciss/c0d1&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Vendor Specific SMART Attributes with Thresholds:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;ID# ATTRIBUTE_NAME          FLAG     VALUE WORST THRESH TYPE      UPDATED  WHEN_FAILED RAW_VALUE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  1 Raw_Read_Error_Rate     0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  3 Spin_Up_Time            0x0027   253   253   021    Pre-fail  Always       -       1150&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  4 Start_Stop_Count        0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  5 Reallocated_Sector_Ct   0x0033   200   200   140    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  7 Seek_Error_Rate         0x002f   200   200   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  9 Power_On_Hours          0x0032   034   034   000    Old_age   Always       -       48633&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 10 Spin_Retry_Count        0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 11 Calibration_Retry_Count 0x0033   100   253   051    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 12 Power_Cycle_Count       0x0032   100   100   000    Old_age   Always       -       6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;184 End-to-End_Error        0x0033   100   100   097    Pre-fail  Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;187 Reported_Uncorrect      0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;188 Command_Timeout         0x0032   100   100   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;190 Airflow_Temperature_Cel 0x0022   067   050   045    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;192 Power-Off_Retract_Count 0x0032   200   200   000    Old_age   Always       -       5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;193 Load_Cycle_Count        0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;194 Temperature_Celsius     0x0022   117   100   000    Old_age   Always       -       33&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;196 Reallocated_Event_Count 0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;197 Current_Pending_Sector  0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;198 Offline_Uncorrectable   0x0030   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;199 UDMA_CRC_Error_Count    0x0032   200   200   000    Old_age   Always       -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;200 Multi_Zone_Error_Rate   0x0008   200   200   000    Old_age   Offline      -       0&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée consiste donc à réaliser un script utilisant cette commande pour remonter l'état de santé des disques. On fonction de la présence ou non d'erreur ou de warning, le script renvoi 0 (OK), 1 (Warning), 2 (Critical) ou 3 (Unknown).&lt;br /&gt;
&lt;br /&gt;
===Script check_temp===&lt;br /&gt;
&lt;br /&gt;
Le même principe à été utilisé pour relever la température du CPU. &lt;br /&gt;
&lt;br /&gt;
Dans ce cas, j'ai utilisé l'outil &amp;lt;code&amp;gt;sensors&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;acpitz-virtual-0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: Virtual device&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;temp1:         +8.3°C  (crit = +31.3°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;i5k_amb-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 0:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 0 DIMM 1:  +56.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 0:  +66.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 1 DIMM 1:  +51.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 2 DIMM 0:  +52.0°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Ch. 3 DIMM 0:  +47.5°C  (low  = +127.5°C, high = +127.5°C)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0000&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +40.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +42.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;coretemp-isa-0003&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;Adapter: ISA adapter&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 0:       +38.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;'''Core 1:       +32.0°C  (high = +78.0°C, crit = +100.0°C)'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On obtient ici la température des deux cœurs appartenant aux deux processeurs du serveur baleine.&lt;br /&gt;
&lt;br /&gt;
Pour la mise en place de la sonde, le script [https://exchange.nagios.org/directory/Plugins/Operating-Systems/Linux/check_temp/details suivant] à été récupéré sur la plateforme Nagios Exchange (et légèrement modifié).&lt;br /&gt;
&lt;br /&gt;
==Semaine 4==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Premiers test réalisés sur une VM &amp;quot;stargate&amp;quot;, possédant 3 interfaces reliés aux réseaux ADSL, SDSL et Renater&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation tests sur la VM &amp;quot;stargate&amp;quot;&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de problème liés à la VM stargate (problème DNS).&lt;br /&gt;
* Début Documentation DNSSEC.&lt;br /&gt;
&lt;br /&gt;
===VM stargate===&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir tester l'état de santé des réseaux ADSL, SDSL et Ranater, une machine virtuelle possédant 4 interfaces à été mise en place par Mr Redon.&lt;br /&gt;
&lt;br /&gt;
Adresses IPv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:660:4401:6011:216:3eff:fe47:ba1f&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2001:7a8:116e:47:216:3eff:fe47:ba20&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Interfaces: &lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau ADSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1e brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet 192.168.1.111/24 brd 192.168.1.255 scope global eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1e/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:1f brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:660:4401:6011:216:3eff:fe47:ba1f/64 scope global mngtmpaddr dynamic&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 873sec preferred_lft 773sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba1f/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;4: eth2: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau SDSL'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:20 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 2001:7a8:116e:47:216:3eff:fe47:ba20/64 scope global mngtmpaddr dynamic &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft 939sec preferred_lft 839sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba20/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;5: eth3: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000                 '''Réseau Renater'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    link/ether 00:16:3e:47:ba:21 brd ff:ff:ff:ff:ff:ff&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;    inet6 fe80::216:3eff:fe47:ba21/64 scope link &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;       valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Table de routage ipv4:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;default via 192.168.1.253 dev eth0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 192.168.1.0/24 dev eth0  proto kernel  scope link  src 192.168.1.111&amp;lt;/font&amp;gt; &lt;br /&gt;
&lt;br /&gt;
Table de routage ipv6:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6011::/64 dev eth1  proto kernel  metric 256  expires 923sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:660:4401:6048::/64 dev eth3  proto kernel  metric 256  expires 963sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; 2001:7a8:116e:47::/64 dev eth2  proto kernel  metric 256  expires 982sec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth1  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth2  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth3  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; fe80::/64 dev eth0  proto kernel  metric 256 &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth1  proto ra  metric 1024  expires 1723sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::4e4e:35ff:fe5e:b943 dev eth2  proto ra  metric 1024  expires 1782sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; default via fe80::211:5dff:fef2:5400 dev eth3  proto ra  metric 1024  expires 1763sec hoplimit 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 5==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
La semaine à entièrement été déduite à de la documentation à propos du protocole DNSSEC et à des recherches en vue de récupérer les dates de validité des certificats DNSSEC.&lt;br /&gt;
A l'issue de la semaine, aucune solution n'a été trouvé pour trouver la date de validité des clefs KSK et ZSK.&lt;br /&gt;
&lt;br /&gt;
===Le protocole DNSSEC===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut pour moi l'occasion d'étudier en détail le fonctionnement du protocole DNSSEC ainsi que des différentes signatures qui y sont associées.&lt;br /&gt;
&lt;br /&gt;
====Fonctionnement général====&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Dns-hijacking.png||left|vignette|upright=1|Schéma d'une attaque type &amp;quot;man in the middle&amp;quot;]][[Fichier:Dnssec_keys.png||left|vignette|upright=1|Fonctionnement du DNSSEC]]&lt;br /&gt;
&lt;br /&gt;
DNSSEC est une amélioration du DNS permettant de sécuriser la communication entre un résolveur et un utilisateur. Ce protocole à été mis en place après la découverte de failles de sécurité lors de l’utilisation du DNS, lequel s'est avéré très vulnérable aux attaques DDOS ou de type &amp;quot;man in the middle&amp;quot;. Il était en effet possible pour une personne malveillante d'intercepter les requêtes envoyés par des clients au serveur DNS et de répondre à la place de celui-ci, facilitant ainsi les technique de phishing.&lt;br /&gt;
&lt;br /&gt;
Afin d’empêcher ce type de pratique, DNSSEC se base sur un modèle de cryptographie à clé publique. On va donc retrouver, entre le résolveur et le client, un serveur d'autorité dont le rôle va être de signer les réponses aux requêtes envoyés au serveur DNS avec une clé privé. &lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés par le serveur autorité sont ensuite groupé par type en RRSET.&lt;br /&gt;
&lt;br /&gt;
Parmi les enregistrements propre au DNS, on retrouve notamment ces derniers:&lt;br /&gt;
 * A       Renvoie une adresse IPv4 pour un nom de host donné.&lt;br /&gt;
 * AAAA    Retourne une adresse IPv6 pour un nom de domaine donné.&lt;br /&gt;
 * NS      Délègue la gestion d'une zone à un serveur de nom faisant autorité &lt;br /&gt;
 * SOA     Définit le serveur maitre du domaine. &lt;br /&gt;
 * MX      Définit le nom du serveur de courrier du domaine &lt;br /&gt;
 * CNAME   Permet de réaliser un alias (un raccourci) d'un host vers un autre.&lt;br /&gt;
 ...&lt;br /&gt;
 [https://fr.wikipedia.org/wiki/Liste_des_enregistrements_DNS liste complète des enregistrements DNS]&lt;br /&gt;
&lt;br /&gt;
A cela, on peut ajouter les enregistrements DNSSEC permettant de faciliter la validation des signatures par le client et par le serveur autorité:&lt;br /&gt;
 * DNSSEC  Contient les clés publiques KSK et ZSK&lt;br /&gt;
 * RRSIG   Contient les signatures des enregistrements&lt;br /&gt;
 * NSEC    Contient la liste des enregistrements qui existent pour un domaine, utilisé notamment comme preuve de non existence (dans le cas d'une résolution impossible).&lt;br /&gt;
 * DS      Contient des informations (Nom et clé publique) sur les zones fille du domaine concerné (ce qui permet d'établir une chaine de confiance et donc de réduire le nombre d'appel au serveur DNS).&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Pour des raison de sécurité, le protocole DNSSEC repose sur deux paires de clés:&lt;br /&gt;
* Une paire de clé ZSK, utilisés pour signer les enregistrement, renouvelé régulièrement (tous les 30 jours max).&lt;br /&gt;
* Une paire de clé KSK, utilisés pour signer les ZSK, renouvelé moins régulièrement (tous les 13 mois max, d'après la [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC source] suivante).&lt;br /&gt;
&lt;br /&gt;
====Tests====&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer les dates de validité des clefs ZSK et KSK, plusieurs tests ont été effectués grâce à l'utilisation de &amp;lt;code&amp;gt;dig&amp;lt;/code&amp;gt;, un outil permettant d’interroger un serveur DNS.&lt;br /&gt;
Les tests ont été effectué depuis une VM routé ne passant par le proxy, sur les domaines suivants:&lt;br /&gt;
* plil.fr&lt;br /&gt;
* ns.plil.fr&lt;br /&gt;
* dnssec-tools.org&lt;br /&gt;
&lt;br /&gt;
=====Tester la connexion au serveur DNS=====&lt;br /&gt;
&lt;br /&gt;
La commande &amp;lt;code&amp;gt;dig plil.fr +dnssec&amp;lt;/code&amp;gt; permet de vérifier si les enregistrements obtenus en interrogeant le serveur DNS sont signés avec DNSSEC:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr +dnssec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: '''NOERROR''', id: 30025                 // Aucune erreur retourné &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr. IN A&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr. 18696 IN A '''193.48.57.52'''                                          // Adresse IP du domaine &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 6 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:17:09 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE rcvd: 52&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupérer la liste des signatures obtenues=====&lt;br /&gt;
&lt;br /&gt;
Il est possible de récupérer la liste des enregistrements qui existent pour le domaine '''plil.fr''' grâce à cette commande: &amp;lt;code&amp;gt;dig plil.fr NSEC +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr NSEC +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 25124&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN NSEC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN NSEC archives.plil.fr. '''A NS SOA AAAA RRSIG NSEC DNSKEY'''    // Enregistrements obtenus&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 19 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:41:46 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 75&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=====Récupération des clés publiques KSK et ZSK=====&lt;br /&gt;
&lt;br /&gt;
Cette commande permet de récupérer les clefs publiques ZSK et KSK pour un domaine: &lt;br /&gt;
&amp;lt;code&amp;gt;dig plil.fr DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; plil.fr DNSKEY +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 57848&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;plil.fr.               IN DNSKEY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAcBspyK0pCevwfGt3wmU97YaOBlXhbcAxBE3tPy4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                nGSBxFAs01WF0WUd3lgho3nXnwMXUI/KSp9nDdSLTgKe&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                H8u/IKMumUOQcggfh4UYZ2CzzycWzZ2gqBo531yI2GRZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                VSqdXH+jqeoVteJSH3cxEOAL0gT8yitN+RWIXumh/IId&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''ZSK'''; '''alg = RSASHA1'''; '''key id = 51828'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;plil.fr.                259200 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAaZre4ATp9W0nATXk5/nKW8unbLBOCSqpog/yYC0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                2Y+3hUo8xrdM/OjvGNAJEpr46fp+4q10bN2SBBwNv8o6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cfZddEDei1HLsdJYukuLFK+EjYyboqD+fZtkgqyYFlHb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ltwZCpnEmfDcp+dcoTMvLwXpM1ZEyBIYJF0LBr4Na0lb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HNaAHrUJnMLZVLUDlA4U4rU/AZtbyJC/avdqEsjUC1w+&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8+yY+o4j4sR3P9+iavb67XFi+Ta0fh6dQSH325drPX+T&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                CgXPUTGWjxbKJfJ0gTjrr5BYL6eEm80SC+OOdSdAEWHA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                7QrrvO8kwYQdCzTKdbN1EZ4G5XdVo/dPtPLnlDc=&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; '''KSK'''; '''alg = RSASHA1'''; '''key id = 40768'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; Query time: 41 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; WHEN: Tue Oct 23 18:46:42 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; MSG SIZE  rcvd: 460&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En plus des clés publiques, on récupère aussi les informations suivantes:&lt;br /&gt;
* ID de la clé&lt;br /&gt;
* Type d'algorithme&lt;br /&gt;
&lt;br /&gt;
=====Récupération des enregistrements signés=====&lt;br /&gt;
&lt;br /&gt;
Les tests suivants ont été réalisé sur le domaine suivants: &amp;lt;code&amp;gt;dnssec-tools.org&amp;lt;/code&amp;gt;, en raison du plus grand nombre de signature obtenues.&lt;br /&gt;
&lt;br /&gt;
On récupère les ID des clefs publiques KSK et ZSK &amp;lt;code&amp;gt;dig dnssec-tools.org DNSKEY +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAfDcFXK9ef/BppquoTm7LSk2rIE5x9LPu+WplVEA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                To9i7OhqxxPy6K6uIomxLNtZAlcDbUybQEeopWhglovk&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                odkvRY72q6ZUxW1vwzBAvmDLZ7dfTjPa0LYKVQ7qsf7Q&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                jFBiyPkWARSAHH2xqBATry25ft8j9O9ULX4/DYdYPq9D&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''3147'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 256 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAde0IFUPiuDwEQM8vGlR436nb+TzGLlMWxzMmWDP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                mHfWMPv8OXgZafScErgijGRnwPfv+t9irTUsX4dkvJie&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                vkV549mtDwhXLb9Vyg9C5JsoqOBq//QJvZXEZHtcHPoQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9tIGVt8W9uctLUKMsAdAVaozfMxl8CuLWjqkL2Gq57HP&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; ZSK; alg = RSASHA1; key id = '''19221'''&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;dnssec-tools.org.       300 IN DNSKEY 257 3 5 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AwEAAazJbvxfEciFb3LmGsddun82dGsrZj4YpCvn8qHI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                KRQ2c0Hra0LnfhOK09YKG7B9eey3aWzOKWUa50fv/0sl&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8npI7/5tgWCQFBpIdqcDxoJxtvtFlrUlOpRQz45aFE3x&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                FJoquCfPGYgaNSZu5VGED4qAsZqxGXLvDU8SDX76Eo3G&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                oLBqYJGXG0inRVAQViFNk9ovtA2kZSP4oHTsWBCcnKDx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                8CRZhF9jrbplzUdW7ahbTRaYv6tPYaKd7nzvH8GksO9b&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                9t5EJ1o1BhL6cDOHXOrkL+Twhc1Mwg5jBhYWH6r1LaTX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                w2NQN1hAQzGrAZPt13kP0KQp/ybGhoKtunLxVsFiiDb6&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                4HQs+cRiw2wSf/vYaNVAiYesrMHTpq5BLeWTVrMLk2Kt&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                NtQMV972pOKipT9UN7At7Sugdpbm1g7jQ8G3eKP6iRg5&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                YA0PjbuXFNYjmKG9fMTjQGgs5IHbDVe/W3mPHYS+1970&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                AmNX/momejvYG8NlQykZdrcqPUw5dSAOmUnbehl3wzJJ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                HIR59FaxeG9bO8vrFBlaRapz1eMtrZbqkYV7P8PnUP/3&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                i7WVGZO5AJxPpxpHaSNbd63d575pQKMQxEU7dPPfQsq8&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                wnNxcCHDixb6EetVcfv9Id9up4v9t0O33O4562kN2S9/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                cwPOOlnobJ/g597cU2sF5Pmxn+r7&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                ) ; KSK; alg = RSASHA1; key id = '''34816'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On remarque la présence de plusieurs clés ZSK. Ce type de clé est en effet destiné à être remplacé régulièrement (tous les 30 jours max), le rollover de la clé se fait alors progressivement et on se retrouve en général avec deux clés d'un même type. Dans ce cas, le serveur autorité valide les enregistrement signés avec les deux clés le temps du rollover.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Les enregistrements signés peuvent ensuite être obtenus avec la commande suivante: &amp;lt;code&amp;gt;dig dnssec-tools.org RRSIG +multi&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; &amp;lt;&amp;lt;&amp;gt;&amp;gt; DiG 9.10.3-P4-Debian &amp;lt;&amp;lt;&amp;gt;&amp;gt; dnssec-tools.org RRSIG +multi&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; global options: +cmd&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Got answer:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; -&amp;gt;&amp;gt;HEADER&amp;lt;&amp;lt;- opcode: QUERY, status: NOERROR, id: 5112&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 0, ADDITIONAL: 1&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; OPT PSEUDOSECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ; EDNS: version: 0, flags:; udp: 4096&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; QUESTION SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;dnssec-tools.org.      IN RRSIG&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;  &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; ANSWER SECTION:&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''3147''' dnssec-tools.org.   // Signature de la clé ZSK utilisé &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 SRwNkxRrulP6wjFaCSKC/6ZWV9vidak3h3wqXKk9MjrH&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 jCByL8dbqdpMWDBpnjGxgf2y7NLYhriYkvgQJJIAnwDT&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PJFUNGSV+2Houradlnjz4IMC7T5XQGFlvPiCQ00SF/zq&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 k7sDKNl+umgDkKE1vYcg2VbmI1RSUsDD0tXlgb8= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG DNSKEY 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 '''20181117051029''' 20181018041029 '''34816''' dnssec-tools.org.  // Signature de la clé KSK utilisé&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 OUj7q7m78jdXacfB7rMGlFSIYkD1bb25TNpXc0UBbSMn&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 El65gff8CZNWR26NWfYbD0ZwSpzO0ifDbQWB9PXyGoev&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  F91+cmOm4WZfAEGrwxthEyIrcsdOlv8SbArnwJR64XmN&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 CXNAzHSx+6YVuuP3QD+ZKNCVbyAbItbiagDhNAOmwidv&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 g0MWz2oTiJOg3TfywcKef3nuBv2U95xvvLktOEY7hUUX&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Jlx9hM/s4F/CNlY0yZLMArrM75SlHGyvtG4q03HRlohZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 cf5VhqaIeMkjjYul33Dtt5GKzq9uDi/8Ov6saFyPHTrU&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6SU1a75wZSKiWiA8W6xDhV+2gc9JmG4KfNbfsNWR5rZD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 64CQ4/6r1FKB/XGveIJ4xFamJ43qBBZRQfSEzE5uLHZw&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 D1FZk3EcgeEhoBYeZzGTW4SWYCG/tXLdFilMYxvJA4Uh&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oEryW68AfIUpBnvCkwuVakvoKarxMIb1xusKtBMZNTrR&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 oFyjn1oUgNpujUXAAEwy2zMRNMlWOffDw2HC5MXBxqzx&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Bu6lGY/D8hvFiZIg2QvjNKMAEsUDoBJsgxW9yonymIzb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 yJdn9bcD5X5JFzmBtBlqGZnkZkTgarhFg7Oc1Lhj+tqE&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                  MBxpYXHb4YAG4oghAg65u0XGnIoc4wQd9/E/U9nDPtaA&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 M9S9rauoI0GKKdPf5kZB51c= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG TXT 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 JT6HieOWWKoWniaePFwMWERiXWmHTLA/njxRUbJmYC25&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 L0YWYpiS1SEuRxwHIrgILyWAgE5t02T8XMZCyM108VE4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 Ahu7WKxUMegWUe+UkUwWsSAi42XNT6q+j2biGi8zDUbF&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zJpK0qIzZCbMAdzLu4WZpdMx8LjTcXOnkBJWFbA= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG MX 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 zvX7zsWg2wow08/cGjqysRChZnk9vOXCjaWylUAoJZsZ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6lTKXL0Y1HCnqXJe9z/xjFwt8eIjnRDCucqoYeRegxBC&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QG8WX5aaDAZQuRSGNUc/qgf2+hE/GxHTn4hbaBJj5hCb&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 DeX8/qo+ynUg3OVbU8h1ynjmr4u+20cypzo4Gxs= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG A 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 2M4jkmtd9y2e+mRWeNqvunL5DjSV/Z3fUOx4uiWbCdNQ&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 PpF2PfMq9iEngbEQvBD+m0BZl/RswbUnAoiTeGX7/Xt0&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 e0KgG8v+4uyKVKfHfntK3YdBgaWL/ySWLHoCz3ISE37/&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 B1Z4jhoGOBo4J2xUqGl3A99OlDv+ublcCC3aEBY= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG NS 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aZY3ax6C/C34VD204K1Y0wTmDKxQ/XK4prJE13VRO/+L&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 nNgGGPwUMhnSjkKS3QHX8g447K7ERO49PLtEeJndgDJI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 28nac6Fcx9wmlaxKpy+VGkAS/t/MYlzkFBdZvZKvuE+p&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 eWcIvHBpn8NGXI1KAU2tVKTGxvimMHxdznP69gM= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       300 IN RRSIG SOA 5 2 300 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 HZEcgLM4CWBHtwi5huuGrq7iF+Ek5HMu6Y8K1d+Rv0tD&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 h1Qv9o/zzl7dLm7rKDHUv0uHo6gxgvRWYrE5a0ZHDZdI&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 QHcMIXh64dhQ6tqqEAbeaXaHPCz7Nb0lRkqzQS5JTbrf&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 1P43r84bTGxsBPvhxDDs0Ul9MAboCsYcoTstUDo= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       10800 IN RRSIG NSEC 5 2 10800 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181117051029 20181018041029 3147 dnssec-tools.org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 aDMGZpsKlyxTA3tHGnpCUfsKWtkFxzac6LzhxJNtn1Oy&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 5uNyZDdv0s0uSrb1H+E9te7DW7Czadl74Y5iUNnwjw+s&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 6EODP1LRJcnlFkatlwnKPjtTxB3VWldle8fwl/LPmnUg&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ioO0b/SVcjfRx/j7wqnZhvqWhRops2sKjMmIwbE= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; dnssec-tools.org.       81812 IN RRSIG DS 7 2 86400 (&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 20181107152349 20181017142349 1862 org.&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 bod0E+AePe5i0M7eXJe994yyvohhh4BzpHiIkqgB6SGY&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 IMY7w0imjfqqlBnwoIeFkBVmMRpZF7izWwUAr19tK5Bs&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 0qcn/ZZdWJTBWCaeG5Hp8s85O85InMUMpI557A/MKOLu&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;                                 ipuxBVFei+vyuMhlb37TBMtc/IpU8SoBYDRyIpk= )&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; Query time: 1111 msec&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; SERVER: 192.168.1.254#53(192.168.1.254)&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; WHEN: Tue Oct 23 19:07:31 DST 2018&amp;lt;/font&amp;gt;&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; ;; MSG SIZE  rcvd: 2000&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
On retrouve les signature des clés KSK et ZSK obtenus précédemment grâce à leurs ID. &lt;br /&gt;
On récupère aussi les dates de validités de leurs signatures:&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé ZSK&lt;br /&gt;
* 2018/11/17 - 05:10:29 pour la clé KSK&lt;br /&gt;
&lt;br /&gt;
==Semaine 6==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Suite à une discussion avec le tuteur de projet, il a finalement été déterminé que la date de validité à récupérer est celle de la signature DNSKEY des clés ZSK et KSK.&lt;br /&gt;
* Documentation concernant les méthodes permettant de sauvegarder les machines virtuelles.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un script permettant de retourner la date de validité des signature DNSKEY des clés KSK et ZSK.&lt;br /&gt;
* Mise en place d'un script permettant de vérifier la validité des certificats https. &lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Travail sur la VM '''stargate''', afin de vérifier l'état des réseaux ADSL, SDSL et Renater. &lt;br /&gt;
* Mise en place de politiques de routages afin de router alternativement chacune des interfaces et de les tester.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===Script de récupération de la date de validité DNSKEY===&lt;br /&gt;
&lt;br /&gt;
Afin de récupérer la date de validité ces clés DNSKEY, un script utilisant la commande &amp;lt;code&amp;gt;dig plil.fr DNSKEY&amp;lt;/code&amp;gt; a été utilisé. Il a été convenu avec le tuteur de projet que la date à récupérer est celle indiqué sur l'enregistrement RRSIG signé des clés publiques DNSKEY:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 40768 plil.fr.&lt;br /&gt;
                        TWruW7vtrja1i37zJw/egTbLCPvlw5DTVDvEQf7qIPu0&lt;br /&gt;
                        P8eKTw0dD3N+JXGU3k1mmvidw+Ljy7YeqZn9A1ZbR1Db&lt;br /&gt;
                        qfQnXk6sg5MBRS0Xw3QFVB61cvnETz36bsZQvd7fO9ny&lt;br /&gt;
                        KMWpviQOEfjWbZaZk5vbDZXbgFrksj7Mt/55zMvyMFvJ&lt;br /&gt;
                        I5fAv+mlo5RGk8M/AUJ20TaVjUOfe/p9qTlDJoEFSjeW&lt;br /&gt;
                        A6qN7tFjn7qIvgHLhcghguVBsn7nogxzX9gIZ0uvZSFz&lt;br /&gt;
                        xC+xQrn8wEOISSZJWm9ZONwJuHcT8oIgjcSqnDx4rmcu&lt;br /&gt;
                        pF3YyB2OYTcxa9JT+Hx8wX0swoc0P+B/Nw== )&lt;br /&gt;
 plil.fr.	21599 IN RRSIG DNSKEY 5 2 259200 (&lt;br /&gt;
                        20181221111257 20181121110621 51828 plil.fr.      &lt;br /&gt;
                        Oc+8B84qbhy4lh2Uka1bkJnYJhQFFSZO3AfxW6YPbQha&lt;br /&gt;
                        vsVd9ozGc3Zbs3jumVm6TLK5sC8B+l24NnBeGD9QCiG4&lt;br /&gt;
                        29RbsRMyOi59YaemTA42BRuZCKJMWvJn6e/0FCyvTc2T&lt;br /&gt;
                        w/we6MWDXcRoIAqbCD+79Bniq+sbt4pBRU2zrWU= )&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'enregistrement contient des informations suivantes(plus d'infos [https://ensiwiki.ensimag.fr/index.php?title=Introduction_%C3%A0_DNSSEC sur ce lien]):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
                        1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 3 3&lt;br /&gt;
    0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |        Type Covered           |  Algorithm    |     Labels    |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                         Original TTL                          |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Expiration                     |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |                      Signature Inception                      |&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   |            Key Tag            |                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+         Signer's Name         /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   /                            Signature                          /&lt;br /&gt;
   /                                                               /&lt;br /&gt;
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée pour le script consiste donc à récupérer la date d'expiration et à la parser. Le résultat suivant est obtenu:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~/PFE_IMA_5 ./check_dnssec.sh plil.fr ZSK&lt;br /&gt;
 Key OK - ZSK Expiration Date = 2018/12/21 11:12:57 | 20181221111257&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Tables de routages===&lt;br /&gt;
&lt;br /&gt;
Pour la réalisation du script permettant de récupérer l'état de santé des réseaux ADSL, SDSL et Renater, la &amp;quot;difficulté&amp;quot; a surtout résidé dans le fait de forcer l'utilisation d'une interface pour pouvoir tester un réseau en particulier.&lt;br /&gt;
&lt;br /&gt;
On doit tester les trois réseaux suivants:&lt;br /&gt;
* ADSL -&amp;gt; eth0 &lt;br /&gt;
* SDSL -&amp;gt; eth1 et eth3&lt;br /&gt;
* Renater -&amp;gt; eth2&lt;br /&gt;
&lt;br /&gt;
Étant donné que l'interface eth0 est la seule à posséder une adresse en ipv4, un simple ping vers des machines distantes permet de tester l'état du réseau ADSL.&lt;br /&gt;
&lt;br /&gt;
Pour tester les réseaux SDSL et Renater, il faut faire en sorte d'utiliser uniquement d'une de ces interfaces. On peut observer qu'en pingant une adresse en ipv6 depuis l'interface eth2 (donc en utilisant le réseau SDSL), les paquets sont envoyé depuis l'adresses ipv6 de l'interface eth1 (Renater):&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 '''root@stargate:~# ping6 -I eth2 2001:4860:4860::8888'''&lt;br /&gt;
 ping6: Warning: source address might be selected on device other than eth2.&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from '''2001:660:4401:6011:216:3eff:fe47:ba1f''' eth2: 56 data  bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=55 time=5.13 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=55 time=5.55 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=3 ttl=55 time=5.19 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce fait à été confirmé par une analyse via tcpdump:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 root@stargate:~# tcpdump -i eth1 icmp6&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:06:38.694422 IP6 2001:660:4401:6011:216:3eff:fe47:ba1f &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 8, length 64&lt;br /&gt;
 16:06:38.699920 IP6 google-public-dns-a.google.com &amp;gt; 2001:660:4401:6011:216:3eff:fe47:ba1f: ICMP6, echo reply, seq 8, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
L'idée initial à donc consisté à créer des règles de routages pour chaque réseau et à activer uniquement l'une d'elle pour forcer l'utilisation d'une seule interface. Cependant, cette solution s'est avéré inutile, la VM étant capable de pinger via une interface malgré l'absence de règle de routage pour cette dernière.&lt;br /&gt;
&lt;br /&gt;
==Semaine 7==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi (4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction d'un scipt pour tester la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
* Tests réalisés sur l’hôte de la VM stargate (en débranchant les entrés ADSL, SDSL et Renater pour simuler un problème de connectivité).&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction du script pour test de la connectivité des réseaux ADSL, SDSL et Renater.&lt;br /&gt;
&lt;br /&gt;
===Tests connectivité des réseau ADSL, SDSL et Renater - Suite===&lt;br /&gt;
&lt;br /&gt;
Dans la continuité de ce qui a été fait durant la dernière semaine, d'autres test ont été réalisés afin de pinger par une interface.&lt;br /&gt;
&lt;br /&gt;
Une solution à finalement été trouvé en utilisant la commande suivante:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;root@stargate:~# '''ping6 -I 2001:7a8:116e:47:216:3eff:fe47:ba20  2001:4860:4860::8888'''&lt;br /&gt;
 PING 2001:4860:4860::8888(2001:4860:4860::8888) from 2001:7a8:116e:47:216:3eff:fe47:ba20 : 56 data bytes&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=1 ttl=57 time=7.16 ms&lt;br /&gt;
 64 bytes from 2001:4860:4860::8888: icmp_seq=2 ttl=57 time=7.21 ms&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Cependant, en analysant les paquets icmp6 passant par les interface eth1 et eth2 on obtient ceci:&lt;br /&gt;
&lt;br /&gt;
Les echo request sont envoyé sur l'interface eth1&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth1 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth1, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:36:49.282006 '''IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 15, length 64'''&lt;br /&gt;
 16:36:50.283237 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 16, length 64&lt;br /&gt;
 16:36:51.284455 IP6 2001:7a8:116e:47:216:3eff:fe47:ba20 &amp;gt; google-public-dns-a.google.com: ICMP6, echo request, seq 17, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Les echo reply sont ensuite reçues sur l'interface eth2, puisque l'adresse source indiqué explicitement est celle de l'interface eth2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 root@stargate:~# '''tcpdump -i eth2 icmp6'''&lt;br /&gt;
 tcpdump: verbose output suppressed, use -v or -vv for full protocol decode&lt;br /&gt;
 listening on eth2, link-type EN10MB (Ethernet), capture size 262144 bytes&lt;br /&gt;
 16:32:17.341902 IP6 '''google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo  reply, seq 4, length 64'''&lt;br /&gt;
 16:32:18.343265 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 5, length 64&lt;br /&gt;
 16:32:19.344553 IP6 google-public-dns-a.google.com &amp;gt; 2001:7a8:116e:47:216:3eff:fe47:ba20: ICMP6, echo reply, seq 6, length 64&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Des tests complémentaires ont ensuite été fait directement en salle serveur en débranchant les liaisons ADSL, SDSL et Renater. Cette solution s'est finalement avéré fonctionner.  &lt;br /&gt;
&lt;br /&gt;
Un script renvoyant l'état des réseaux ADSL, SDSL et Renater a finalement été rédigé:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''usage: ./check_ping.sh &amp;lt;Network&amp;gt; '''&lt;br /&gt;
 '''Network : choose: ADSL, SDSL or Renater'''&lt;br /&gt;
 root@stargate:~/PFE_IMA_5# ./check_ping.sh ADSL&lt;br /&gt;
 Connexion ADSL OK - 10/10 paquets reçus&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Ce script ping 5 adresses ipv4 ou ipv6 et renvoie l'état du réseau indiqué en paramètre ainsi le nombre de paquets reçus.&lt;br /&gt;
&lt;br /&gt;
==Semaine 8==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Redaction d'un script pour sauvegarde automatique (destiné à fonctionner avec cron). Le script en question sauvegarde les images disk &amp;amp; swap des VMs sur le serveur de sauvegarde baleine.&lt;br /&gt;
* [https://support.nagios.com/kb/article/nagios-core-performance-graphs-using-influxdb-nagflux-grafana-histou-802.html Configuration de Nagios]afin de permettre la visualisation des données via grafana.&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana===&lt;br /&gt;
&lt;br /&gt;
Afin de soigner l'affichage des valeurs à monitorer, un serveur grafana à été installé sur le serveur de supervision. &lt;br /&gt;
&lt;br /&gt;
Ce dernier consiste en une application web apache2 permettant de récupérer des flux provenant de bases de donnés (type times series) et de les afficher. Grafana peut ainsi afficher simultanément des graphs et des données provenant de plusieurs sources.&lt;br /&gt;
&lt;br /&gt;
Afin de pouvoir afficher les données produites par Nagios, la base de donné InfluxDB a été installé:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
[[Fichier:grafana.png|1500px|thumb|center|Source: Load value du serveur baleine affiché sur grafana]]&lt;br /&gt;
&lt;br /&gt;
==Semaine 9==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tests de l'outil de supervision Prometheus combiné avec l'outil de visualisation de données grafana.&lt;br /&gt;
* Recherche d'un système de backup open source fonctionnant sur linux:&lt;br /&gt;
** [https://rsnapshot.org/ rsnapshot] &lt;br /&gt;
** [http://www.amanda.org/ amanda]&lt;br /&gt;
** [https://backuppc.github.io/backuppc/ backuppc]&lt;br /&gt;
&lt;br /&gt;
===Installation de Grafana + Node_exporter===&lt;br /&gt;
&lt;br /&gt;
Cette séance à été dédié à l'installation du serveur de supervision [https://prometheus.io/docs/introduction/overview/ Prometheus], qui est un fork de nagios. Ce dernier est moderne et possède une compatibilité avec [https://github.com/prometheus/node_exporter Node_exporter], un outil permettant de prélever des données via des outils linux et des afficher formaté sur un serveur web.&lt;br /&gt;
&lt;br /&gt;
La configuration se fait de manière très simple en indiquant les adresses IP des machines à superviser dans le fichier &amp;lt;code&amp;gt;prometheus.yml&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;scrape_configs:&lt;br /&gt;
  # The job name is added as a label `job=&amp;lt;job_name&amp;gt;` to any timeseries scraped from this config.&lt;br /&gt;
    &lt;br /&gt;
  - job_name: 'node'&lt;br /&gt;
    static_configs:&lt;br /&gt;
            - targets: ['172.26.64.15:9100','localhost:9100','172.26.64.16:9100']  &amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Le résultat obtenue se présente de la manière suivante:&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Prometheus.png|1500px|thumb|center|lien: http://172.26.64.13:3000/d/Y9CWDqfmk/node-exporter-full?orgId=1&amp;amp;from=now-30m&amp;amp;to=now&amp;amp;var-job=node&amp;amp;var-node=172.26.64.16&amp;amp;var-port=9100 - Sélectionner Bashboard &amp;quot;Node Exporter Full&amp;quot; ]]&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Semaine 10==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Test de la solution de sauvegarde incrémentiel rsnapshot&lt;br /&gt;
&lt;br /&gt;
====jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation des tests sur rsnapshot. &lt;br /&gt;
&lt;br /&gt;
Après une discussion avec le tuteur de projet, la solution rsnapshot à finalement été abandonné en raison de son non respect au cahier des charges (nécessite trop de configuration).&lt;br /&gt;
&lt;br /&gt;
==Semaine 11==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Correction bug script DNSSEC et état disque.&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
====Vendredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 12==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rédaction Wiki &lt;br /&gt;
* Début Rédaction rapport&lt;br /&gt;
* Préparation soutenance&lt;br /&gt;
&lt;br /&gt;
==Semaine 13==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification du script de vérification de l'état des disques pour intégration à Prometheus.&lt;br /&gt;
* Intégration du script de vérification de l'état des disques à la dashboard grafana.&lt;br /&gt;
&lt;br /&gt;
====Mardi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Modification et installation de script de service pour prometheus et node_exporter sur les VMs et Serveurs.&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Script pour sauvegarde automatique des machines virtuelles, avec roulement sur 3 jours, 3 semaines et 3 mois (modification du script fournit par Mr Redon).&lt;br /&gt;
&lt;br /&gt;
===Installation des scripts de service pour node_exporter et prometheus===&lt;br /&gt;
&lt;br /&gt;
Afin de permettre un déploiement plus simple et rapide de prometheus et de l'agent node_exporter, les binaires ont été transformés en services. &lt;br /&gt;
Ceci permet:&lt;br /&gt;
* D'avoir un programme fonctionnant dès le démarrage du système&lt;br /&gt;
* D'avoir un retour à tout instant (status du service ou log)&lt;br /&gt;
&lt;br /&gt;
Pour cela, je me suis reposé sur [https://gist.github.com/eiri/1102e1f3c168684b5a8b0e7a0f5a5a14 guide suivant], afin de procurer les scripts permettant d'installer node_exporter et prometheus en tant que service.&lt;br /&gt;
&lt;br /&gt;
Pour prometheus, l'installation s'est effectué de la manière suivante: &lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/prometheus                 '''binaire prometheus'''&lt;br /&gt;
 /url/local/bin/promtool                   '''utilitaire prometheus'''&lt;br /&gt;
 /etc/prometheus/prometheus.yml            '''fichier de configuration prometheus'''&lt;br /&gt;
 /etc/prometheus/consoles                  '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /etc/prometheus/console_libraries         '''fichiers pour appli web prometheus'''&lt;br /&gt;
 /var/log/prometheus/prometheus.log        '''fichier de log prometheus'''&lt;br /&gt;
 /etc/init.d/prometheus                    '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status prometheus&amp;lt;/code&amp;gt;:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' prometheus.service - LSB: monitoring system and time series database.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/prometheus; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 4min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 197 ExecStart=/etc/init.d/prometheus start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/prometheus.service&lt;br /&gt;
            `-227 /usr/local/bin/prometheus --config.file=/etc/prometheus/prometheus.yml --storage.tsdb.&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: monitoring system and time series database....&lt;br /&gt;
 Feb 05 13:59:14 supervise prometheus[197]: Starting Prometheus monitoring system -: prometheus.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: monitoring system and time series database..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pour Node_exporter:&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 /url/local/bin/node_exporter              '''binaire node_exporter'''&lt;br /&gt;
 /var/log/prometheus/node_exporter.log     '''fichier de log node_exporter'''&lt;br /&gt;
 /etc/init.d/node_exporter                 '''script de service'''&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Retour affiché par la commande &amp;lt;code&amp;gt; service status node_exporter&amp;lt;/code&amp;gt;:&lt;br /&gt;
 &amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 '''*''' node_exporter.service - LSB: Exporter for machine metrics.&lt;br /&gt;
    Loaded: loaded (/etc/init.d/node_exporter; generated; vendor preset: enabled)&lt;br /&gt;
    Active: '''active (running)''' since Tue 2019-02-05 13:59:14 CET; 2h 5min ago&lt;br /&gt;
      Docs: man:systemd-sysv-generator(8)&lt;br /&gt;
   Process: 196 ExecStart=/etc/init.d/node_exporter start (code=exited, status=0/SUCCESS)&lt;br /&gt;
    CGroup: /system.slice/node_exporter.service&lt;br /&gt;
            `-228 /usr/local/bin/node_exporter&lt;br /&gt;
 &lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Starting LSB: Exporter for machine metrics....&lt;br /&gt;
 Feb 05 13:59:14 supervise node_exporter[196]: Starting Exporter for machine metrics -: node_exporter.&lt;br /&gt;
 Feb 05 13:59:14 supervise systemd[1]: Started LSB: Exporter for machine metrics..&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde automatique===&lt;br /&gt;
&lt;br /&gt;
Concernant le système de sauvegarde automatique, comme cela a été abordé dans le résumé des précédentes semaines, ce dernier doit respecter les contraintes suivante:&lt;br /&gt;
* Un espace de stockage limité&lt;br /&gt;
* Des backups regulières (jour dernier, semaine dernière, mois dernier)&lt;br /&gt;
&lt;br /&gt;
Afin de répondre à ces contraintes, un système de sauvegarde fonctionnant grâce à un roulement à été mis en place. &lt;br /&gt;
&lt;br /&gt;
Ce système s'articule autour de trois tâches de sauvegarde simultanées:&lt;br /&gt;
* Une tâche quotidienne, faisant une full-backup de VMs chaque nuit.&lt;br /&gt;
* Une tâche hebdomadaire, effectuant une full-backup de VMs en fin de chaque semaine.&lt;br /&gt;
* Une tâche mensuelle, effectuant une full-backup de VMs chaque début de mois.&lt;br /&gt;
&lt;br /&gt;
A chaque fois qu'une tâche de sauvegarde est effectué, un roulement se produit et la backup la plus ancienne est supprimé.&lt;br /&gt;
Au total, pour une VM, on compte 9 full-backups, correspondant aux 3 derniers jours, aux 3 dernières semaines et aux 3 derniers mois.&lt;br /&gt;
&lt;br /&gt;
==Semaine 14==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Modifications sur la VM stargate pour liaison avec la VM supervise&lt;br /&gt;
* Intégration des scripts sur Prometheus et sur grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution de bugs d'affichage sur grafana&lt;br /&gt;
* Mise en place des scipts Ansible pour déploiement automatique&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin scripts Ansible &lt;br /&gt;
* Correction bugs script de service node_exporter&lt;br /&gt;
&lt;br /&gt;
===Liaison VMs stargate et supervise===&lt;br /&gt;
&lt;br /&gt;
Afin d'avoir un retour au sujet de l'état des réseaux ADSL, SDSL et Renater ainsi que la date de validation des clés DNSSEC, il a été nécessaire de relier la VM supervise à la VM stargate.&lt;br /&gt;
&lt;br /&gt;
Pour cela, la VM stargate a été doté d'une adresse ipv6 relié à la vlan 48. La VM supervise a elle aussi été relié à la vlan 48, via la brigde &amp;quot;bridgeServeurs&amp;quot;, créé sur l'hôte baleine.&lt;br /&gt;
&lt;br /&gt;
'''Interfaces de supervise:'''&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 2: eth0: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridge'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:56 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.188.11/22 brd 172.26.191.255 scope global eth0&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6048:216:3eff:fe92:4f56/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 834sec preferred_lft 734sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f56/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
 3: eth1: &amp;lt;BROADCAST,MULTICAST,UP,LOWER_UP&amp;gt; mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 '''Interface relié à bridgeServers'''&lt;br /&gt;
     link/ether 00:16:3e:92:4f:57 brd ff:ff:ff:ff:ff:ff&lt;br /&gt;
     inet 172.26.64.13/20 brd 172.26.79.255 scope global eth1&lt;br /&gt;
        valid_lft forever preferred_lft forever&lt;br /&gt;
     inet6 2001:660:4401:6006:216:3eff:fe92:4f57/64 scope global mngtmpaddr dynamic&lt;br /&gt;
        valid_lft 922sec preferred_lft 822sec&lt;br /&gt;
     inet6 fe80::216:3eff:fe92:4f57/64 scope link&lt;br /&gt;
        valid_lft forever preferred_lft forever&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Ansible===&lt;br /&gt;
&lt;br /&gt;
Afin de faciliter le déploiement de l'agent node_exporter ou du serveur de supervision prometheus, des scripts ansibles ont été mise en place sur le serveur baleine. &lt;br /&gt;
&lt;br /&gt;
Plusieurs &amp;quot;rôles&amp;quot; ont été créés, avec sur chacun d'entre eux les taches suivantes:&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;node&amp;quot;''':&lt;br /&gt;
* Installation de curl, afin d'avoir un aperçu direct des métriques exporté par l’agent node_expoter (commande curl localhost:9100/metrics)&lt;br /&gt;
* Installation des binaires et des scripts de services (comme indiqué dans le semaine 13)&lt;br /&gt;
* Lancement de l'agent node_exporter&lt;br /&gt;
&lt;br /&gt;
'''Rôle &amp;quot;prometheus&amp;quot;'''&lt;br /&gt;
* Installation des binaires et des scripts de services (idem semaine 13)&lt;br /&gt;
* Lancement du service Prometheus&lt;br /&gt;
&lt;br /&gt;
'''Fichier &amp;quot;inventory&amp;quot;'''&lt;br /&gt;
&lt;br /&gt;
Les VMs cibles sont précisés dans le fichier inventory comme suit:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [Serveurs]&lt;br /&gt;
 Table ansible_host=&amp;quot;172.26.64.23&amp;quot;&lt;br /&gt;
 &lt;br /&gt;
 [VMs]&lt;br /&gt;
 TestAnsible ansible_host=&amp;quot;172.26.64.18&amp;quot;&lt;br /&gt;
 cachalot ansible_host=&amp;quot;172.26.64.22&amp;quot;&lt;br /&gt;
 #dune ansible_host=&amp;quot;172.26.64.24&amp;quot;&lt;br /&gt;
 #fondation ansible_host=&amp;quot;172.26.64.25&amp;quot;&lt;br /&gt;
 hyperion ansible_host=&amp;quot;172.26.64.30&amp;quot;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
En ce qui concerne la communication à distance d'ansible avec les nodes cibles, il y a deux possibilitées:&lt;br /&gt;
* Préciser le mot de passe comme suit pour un groupe d'utilisateurs&lt;br /&gt;
* Mettre la clé publique de la VM supervise dans le fichier &amp;lt;code&amp;gt;~/.ssh/authorized_keys&amp;lt;/code&amp;gt; de la node cible.&lt;br /&gt;
&lt;br /&gt;
Ici, le mot de passe par usuel du compte root a été désigné pour tout les utilisateurs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt; &lt;br /&gt;
 [all:vars]&lt;br /&gt;
 ansible_connection=ssh&lt;br /&gt;
 ansible_user=root&lt;br /&gt;
 ansible_ssh_pass= &amp;lt;mot_de_passe_usuel&amp;gt;&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
'''Tests effectués'''&lt;br /&gt;
&lt;br /&gt;
Plusieurs tests ont été effectués sur différentes machines virtuelles, dont une créée (TestAnsible) pour l’occasion.&lt;br /&gt;
&lt;br /&gt;
Le lancement du script ansible se fait la manière suivante: &amp;lt;code&amp;gt;ansible-playbook playbook.yml -i inventory &amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Dans l'ensemble, le déploiement de l'agent node_exporter ou du service de supervision prometheus s'est bien déroulé. J'ai noté cependant un problème lors de l'installation du package curl sur les VMs dune et supervise en raison d'un bug lors qui survient au lancement de la commande &amp;lt;code&amp;gt; apt-get update&amp;lt;/code&amp;gt;.&lt;br /&gt;
&lt;br /&gt;
===Interface Grafana===&lt;br /&gt;
&lt;br /&gt;
==Semaine 15==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Rackage du serveur secondaire&lt;br /&gt;
* Rackage des baies du serveur de sauvegarde secondaire et des baies du serveur baleine &lt;br /&gt;
* Installation des baies sur le serveur de sauvegarde secondaire&lt;br /&gt;
&lt;br /&gt;
===Travail effectué===&lt;br /&gt;
&lt;br /&gt;
Cette semaine fut dédié au rackage et à l'installation du serveur de sauvegarde secondaire et à l'installation de baies DAS sur les deux serveurs de sauvegarde.&lt;br /&gt;
&lt;br /&gt;
L'idée fut d'utiliser le matériel non utilisé afin:&lt;br /&gt;
* De monter un serveur de sauvegarde secondaire&lt;br /&gt;
* Relier ce dernier à 4 baies DAS contenants des disques de 500 Go&lt;br /&gt;
* Mettre en place une deuxième baie DAS, avec des disques de 1 To, sur le serveur de sauvegarde primaire&lt;br /&gt;
&lt;br /&gt;
===Installation du serveur de sauvegarde secondaire===&lt;br /&gt;
&lt;br /&gt;
La première étape a été l'installation du serveur de sauvegarde secondaire. Ce choix fut motivé par la nécessité de conserver les backups présentes sur baleine avant l'installation de la deuxième baie DAS.&lt;br /&gt;
&lt;br /&gt;
====Installation des baie DAS====&lt;br /&gt;
&lt;br /&gt;
Le choix pour chaque baie fut le suivant:&lt;br /&gt;
* Former un volume logique en RAID5 avec les 11 premiers disques&lt;br /&gt;
* Le 12e disques en spare &lt;br /&gt;
&lt;br /&gt;
Puis, former un volume virtuelle à partir d'un groupe de volumes contenants les quatre volumes logiques.&lt;br /&gt;
&lt;br /&gt;
Une autre possibilité aurait été de mettre en place un seul &amp;quot;Array&amp;quot; contenant tout les disques appartenant à toutes les baies. Cette possibilité aurait cependant entrainé un risque en cas de dysfonctionnement d'une des baies. En effet, si une baie meurt, cette dernière doit être impérativement remplacé afin de reformer le volume logique, tandis  qu'en optant pour la solution utilisé, on peut plus facilement retirer un volume logique d'un volume de groupe.&lt;br /&gt;
&lt;br /&gt;
Afin d'installer les volumes logiques, l'outil '''hpacucli''' à été utilisé:&lt;br /&gt;
&lt;br /&gt;
Exemple de commandes:&lt;br /&gt;
* Afficher le status de tout les diques: &lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
 '''Commande:'''&lt;br /&gt;
 ctrl all show config&lt;br /&gt;
 &lt;br /&gt;
 '''Résultat:'''&lt;br /&gt;
 Smart Array P800 in Slot 4                (sn: P98690E9SUU1CD)&lt;br /&gt;
 &lt;br /&gt;
    array A (SAS, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 1 (820.2 GB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 3I:1:1 (port 3I:box 1:bay 1, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:2 (port 3I:box 1:bay 2, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:3 (port 3I:box 1:bay 3, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 3I:1:4 (port 3I:box 1:bay 4, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:5 (port 4I:box 1:bay 5, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:6 (port 4I:box 1:bay 6, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:7 (port 4I:box 1:bay 7, SAS, 146 GB, OK)&lt;br /&gt;
       physicaldrive 4I:1:8 (port 4I:box 1:bay 8, SAS, 146 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array B (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 2 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:2:1 (port 2E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:2 (port 2E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:3 (port 2E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:4 (port 2E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:5 (port 2E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:6 (port 2E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:7 (port 2E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:8 (port 2E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:9 (port 2E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:10 (port 2E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:11 (port 2E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:2:12 (port 2E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array C (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 3 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:3:1 (port 2E:box 3:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:2 (port 2E:box 3:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:3 (port 2E:box 3:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:4 (port 2E:box 3:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:5 (port 2E:box 3:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:6 (port 2E:box 3:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:7 (port 2E:box 3:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:8 (port 2E:box 3:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:9 (port 2E:box 3:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:10 (port 2E:box 3:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:11 (port 2E:box 3:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:3:12 (port 2E:box 3:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array D (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 4 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 1E:2:1 (port 1E:box 2:bay 1, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:2 (port 1E:box 2:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:3 (port 1E:box 2:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:4 (port 1E:box 2:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:5 (port 1E:box 2:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:6 (port 1E:box 2:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:7 (port 1E:box 2:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:8 (port 1E:box 2:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:9 (port 1E:box 2:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:10 (port 1E:box 2:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:11 (port 1E:box 2:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 1E:2:12 (port 1E:box 2:bay 12, SATA, 500 GB, OK, spare)&lt;br /&gt;
 &lt;br /&gt;
    array E (SATA, Unused Space: 0  MB)&lt;br /&gt;
 &lt;br /&gt;
 &lt;br /&gt;
       logicaldrive 5 (4.5 TB, RAID 5, OK)&lt;br /&gt;
 &lt;br /&gt;
       physicaldrive 2E:1:2 (port 2E:box 1:bay 2, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:3 (port 2E:box 1:bay 3, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:4 (port 2E:box 1:bay 4, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:5 (port 2E:box 1:bay 5, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:6 (port 2E:box 1:bay 6, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:7 (port 2E:box 1:bay 7, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:8 (port 2E:box 1:bay 8, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:9 (port 2E:box 1:bay 9, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:10 (port 2E:box 1:bay 10, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:11 (port 2E:box 1:bay 11, SATA, 500 GB, OK)&lt;br /&gt;
       physicaldrive 2E:1:12 (port 2E:box 1:bay 12, SATA, 500 GB, OK)&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
NB: pas de disque de spare pour le volume logique 5, puisqu'un des disques de la 4e baie DAS est mort &lt;br /&gt;
&lt;br /&gt;
Création d'un volume logique en RAID5:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 create type=ld drives=2E:2:1,2E:2:2,2E:2:3,...,2E:2:11 raid=5&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un disque de spare sur l'array C:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 array B add spares=2E:2:12&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Supprimer le volume logique n°2:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 ctrl slot=4 ld 2 delete&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Installation des volumes virutels:====&lt;br /&gt;
&lt;br /&gt;
On créé ensuite un volume virtuelle unique utilisant les quatre volumes logiques précédemment créées. On utilise pour cela l'outil '''lvm'''&lt;br /&gt;
&lt;br /&gt;
Affichage des volumes logiques créés avec la commande &amp;lt;code&amp;gt;fdisk -l&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 Disk /dev/cciss/c0d1: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
  &lt;br /&gt;
 Disk /dev/cciss/c0d2: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d3: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/code&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
 Disk /dev/cciss/c0d4: 4.6 TiB, 5000742854656 bytes, 9767075888 sectors&lt;br /&gt;
 Units: sectors of 1 * 512 = 512 bytes&lt;br /&gt;
 Sector size (logical/physical): 512 bytes / 512 bytes&lt;br /&gt;
 I/O size (minimum/optimal): 512 bytes / 512 bytes&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un groupe de volume:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 vgcreate mvg /dev/cciss/c0d1 /dev/cciss/c0d2 /dev/cciss/c0d3 /dev/cciss/c0d4&amp;lt;/font&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;vgdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
  --- Volume group ---&lt;br /&gt;
  VG Name               mvg&lt;br /&gt;
  System ID&lt;br /&gt;
  Format                lvm2&lt;br /&gt;
  Metadata Areas        4&lt;br /&gt;
  Metadata Sequence No  4&lt;br /&gt;
  VG Access             read/write&lt;br /&gt;
  VG Status             resizable&lt;br /&gt;
  MAX LV                0&lt;br /&gt;
  Cur LV                1&lt;br /&gt;
  Open LV               1&lt;br /&gt;
  Max PV                0&lt;br /&gt;
  Cur PV                4&lt;br /&gt;
  Act PV                4&lt;br /&gt;
  VG Size               18.19 TiB&lt;br /&gt;
  PE Size               4.00 MiB&lt;br /&gt;
  Total PE              4769076&lt;br /&gt;
  Alloc PE / Size       788992 / 3.01 TiB&lt;br /&gt;
  Free  PE / Size       3980084 / 15.18 TiB&lt;br /&gt;
  VG UUID               MseO7m-SVYJ-P6I2-mske-g78n-24Ds-yewwfK&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Création d'un volume virtuel de 3 To:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 lvcreate -n Backup -L 3T mvg&amp;lt;/font&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Résutat obtenu avec la commande &amp;lt;code&amp;gt;lvdisplay&amp;lt;/code&amp;gt;:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;font style=&amp;quot;color: purple;&amp;quot;&amp;gt;&lt;br /&gt;
 --- Logical volume ---&lt;br /&gt;
  LV Path                /dev/mvg/Backup&lt;br /&gt;
  LV Name                Backup&lt;br /&gt;
  VG Name                mvg&lt;br /&gt;
  LV UUID                4gNfSp-kChc-gQ8x-jv3m-8irm-Tc7S-MHPZ3u&lt;br /&gt;
  LV Write Access        read/write&lt;br /&gt;
  LV Creation host, time devuan1, 2019-01-28 17:01:09 +0100&lt;br /&gt;
  LV Status              available&lt;br /&gt;
  # open                 1&lt;br /&gt;
  LV Size                3.01 TiB&lt;br /&gt;
  Current LE             788992&lt;br /&gt;
  Segments               1&lt;br /&gt;
  Allocation             inherit&lt;br /&gt;
  Read ahead sectors     auto&lt;br /&gt;
  - currently set to     256&lt;br /&gt;
  Block device           254:0&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Semaine 16==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin installation des baies sur le serveurs de sauvegarde secondaire &lt;br /&gt;
* Installation des baies sur le serveur baleine &lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place des volumes virtuels sur les serveurs de sauvegarde&lt;br /&gt;
* Tests &amp;amp; Correction de bug sur les serveurs de sauvagerdes&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation d'un serveur de virtualisation en salle serveur et mise sur le réseau&lt;br /&gt;
* Installation des cartes réseaux Fibre 10G&lt;br /&gt;
* Tests effectués sur les cartes réseaux Fibre 10G (détection des dysfonctionnements)&lt;br /&gt;
&lt;br /&gt;
====Jeudi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Installations de VMs sur le nouveau serveur de virtualisation&lt;br /&gt;
* Mise en place d'une bridge sur le nouveau serveur de virtualisation, correction erreurs réseaux&lt;br /&gt;
* Correction bugs VMs&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Continuation du système de sauvegarde&lt;br /&gt;
* Test effectué sur des VMs distantes&lt;br /&gt;
* Arrangements interface grafana&lt;br /&gt;
&lt;br /&gt;
===Installation des cartes réseau fibre 10G ===&lt;br /&gt;
&lt;br /&gt;
===Installation d'un nouveau serveur de virtualisation===&lt;br /&gt;
&lt;br /&gt;
===Système de sauvegarde===&lt;br /&gt;
&lt;br /&gt;
==Semaine 17==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Tests et modification du système de sauvegarde pour récupération de la date de sauvegarde&lt;br /&gt;
* Configuration grafana&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Résolution problèmes liés à la défaillance de deux disques sur la baie DAS relié au serveur baleine&lt;br /&gt;
* Installation de nouveaux disques durs&lt;br /&gt;
&lt;br /&gt;
====Mercredi(4h)====&lt;br /&gt;
&lt;br /&gt;
* Mise en place d'un nouveau serveur gitlab (documentation, installation)&lt;br /&gt;
* Installation, configuration du deuxième serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Détection des projets corrompus &lt;br /&gt;
* Prise de backups de la base de donnée et des projets sur l'ancien serveur gitlab&lt;br /&gt;
&lt;br /&gt;
====Vendredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentatives de restauration de backups&lt;br /&gt;
* Redaction Wiki&lt;br /&gt;
&lt;br /&gt;
==Semaine 18==&lt;br /&gt;
&lt;br /&gt;
===Résumé du travail effectué===&lt;br /&gt;
&lt;br /&gt;
====Lundi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives restauration backup&lt;br /&gt;
* Récupération de l'ancienne base de donné et tentatives d'installation manuelle de la bdd sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
====Mardi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Fin tentatives de restauration de la bdd&lt;br /&gt;
* Installation manuelle des projets de l'ancien gitlab sur le nouveau&lt;br /&gt;
&lt;br /&gt;
====Mercredi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative liaison projets avec utilisateurs&lt;br /&gt;
&lt;br /&gt;
====Jeudi(8h)====&lt;br /&gt;
&lt;br /&gt;
* Installation manuelle des utilisateurs sur la nouvelle base de donnée&lt;br /&gt;
&lt;br /&gt;
====Vendredi(6h)====&lt;br /&gt;
&lt;br /&gt;
* Tentative de résolution de problème sur le nouveau gitlab&lt;br /&gt;
&lt;br /&gt;
===Restauration de la base de donnée psql du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Restauration des projets du serveur archives.plil.fr===&lt;br /&gt;
&lt;br /&gt;
===Installation du nouveau serveur gitlab (archies.ilot.org)===&lt;br /&gt;
&lt;br /&gt;
===Peuplement de la nouvelle base de donnée sur le nouveau serveur gitlab===&lt;br /&gt;
&lt;br /&gt;
===Problèmes et résolutions===&lt;br /&gt;
&lt;br /&gt;
=Documents Rendus=&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Rapport interm diaire PFE.pdf]]&lt;br /&gt;
&lt;br /&gt;
[[Fichier:Soutenance_PFE.pdf]]&lt;/div&gt;</summary>
		<author><name>Tdjeraba</name></author>	</entry>

	</feed>