Outils pour utilisateurs

Outils du site


nethserver_201_cahier_06_proxmox

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
nethserver_201_cahier_06_proxmox [2019-09-17 18:36] michelandrenethserver_201_cahier_06_proxmox [2025-01-12 19:30] (Version actuelle) – modification externe 127.0.0.1
Ligne 1: Ligne 1:
 +\\ 
 +[[cours_nethserver_101|{{ images_cahier-201-06-000.png?650 }}]]
 +\\ 
 +====== Description générale ======
  
 +===== Introduction =====
 +
 +Ce document présente l'installation de l'environnement de virtualisation **Proxmox VE**.
 +
 +L'environnement de virtualisation Proxmox VE, basé sur la distribution Debian, est livré sur un CD-ROM d'installation qui comprend un système Debian complet, un noyau Linux spécialement modifié et tous les paquets //PVE// nécessaires.
 +
 +L'installateur vous pose seulement quelques questions, partitionne le(s) disques locaux, installe tous les paquetages requis et configure le système comprenant une configuration réseau de base. Vous pouvez obtenir un système entièrement fonctionnel en quelques minutes.
 +
 +Alternativement, //PVE// peut être installé sur un système Debian existant. Cette option n'est seulement recommandée qu'aux utilisateurs avancés, car des connaissances détaillées sont nécessaires.
 +
 +==== VirtualBox ====
 +
 +{{Images_icone-201-003_Note.png?25}} Habituellement, l'installation de //PVE// s'effectue sur une machine qui lui est complètement dédiée. Vu que nous voulons seulement nous familiariser avec le comportement de cet environnement, nous allons commencer par l'installer sur une machine virtuelle sous //VirtualBox//. Une fois maîtrisées, nous allons répéter les mêmes procédures sur une machine physique dédiée à //PVE//.\\ 
 +{{Images_Cahier-101-03-003.png?22}} Vous pourrez vérifier les modifications à l'environnement //PVE// sur la machine virtuelle avant de les implémenter sur la machine physique.
 +
 +==== Mise en garde ====
 +
 +L'installation de machines virtuelles dans //PVE// roulant sous //VirtualBox// est excessivement lente, car il existe deux niveaux de virtualisation: un pour //VirtualBox// et un autre pour //PVE//. Une installation //NethServer// sur un serveur virtuel //PVE// roulant sous //VirtualBox// prend plus d'une heure tandis que sur un serveur //PVE// physique, elle ne prend qu'environ vingt minutes.
 +
 +{{Images_Cahier-101-03-004.png?25}} Nous recommandons cet environnement uniquement __pour la vérification des changements de configuration__ de //PVE//.
 +
 +==== Proxmox Virtual Environment ====
 +
 +Virtualisation LIBRE //(licence GNU Affero General Public License, version 3)// basée sur l'hyperviseur Linux KVM offrant aussi une solution de //Conteneurs// avec LXC.
 +
 +//PVE// fourni par //Proxmox Server Solutions GmbH// est une solution de virtualisation de type "bare metal".
 +
 +L'installateur //(basé sur Debian)// configure:
 +
 +  - le système d'exploitation //(Debian Stretch 64 bits)//,
 +  - le partitionnement de disques durs avec LVM2,
 +  - le support de LXC //(conteneurs)// et le module KVM //(virtualisation complète)//,
 +  - les outils de sauvegarde et de restauration,
 +  - l'interface Web d'administration et de supervision, etc...
 +
 +Les fonctions de grappe permettent la migration à chaud des machines virtuelles, d'un serveur physique à un autre serveur. //(À condition d'utiliser un stockage partagé SAN ou Ceph sinon, la migration entraîne une courte interruption lors du redémarrage sur un autre nœud de la grappe)//.
 +
 +{{Images_Cahier-101-03-006.png?25}} L'installation du système depuis le CD formate le disque dur et entraîne la suppression complète des données qui pourraient y être présentes. Cependant, étant donné que //PVE// repose sur une distribution Debian, il est tout à fait possible de l'installer à partir de paquetages sur une machine existante, sans pour autant perdre ses données.
 +
 +==== Caractéristiques ====
 +
 +//PVE// propose deux types de virtualisation.
 +
 +  - Virtualisation matérielle //(ou complète)// - KVM: permettant la virtualisation de tout système d'exploitation sur des processeurs d'architectures x86_64 disposant des technologies Intel VT ou AMD-V.
 +  - Virtualisation par conteneurs - LXC: permettant la création d'instances isolées de système d'exploitation //(Linux uniquement)// appelées Serveurs Privés Virtuels //(VPS)//, Environnements Virtuels //(VE)// ou Conteneurs. Cette solution est plus performante //(consomme moins de ressources)// qu'une virtualisation matérielle du fait du peu de temps système requis.
 +
 +==== Système requis ====
 +
 +{{Images_Cahier-101-03-004.png?25}} Pour des services en mode production, il est fortement recommandé d'utiliser des serveurs modernes.\\ 
 +{{Images_Cahier-101-03-006.png?25}} Comme toute technologie de virtualisation, un problème touchant une machine physique affectera toutes les machines virtuelles installées sur celle-ci. Ce risque est cependant atténué par l'utilisation de la haute disponibilité //(HA)// offerte depuis la version 2.0. En effet, //PVE// supporte les grappes et signifie que des installations multiples de //PVE// peuvent être centralisées et contrôlées par l'intermédiaire de la fonction //Cluster//, incluse dans l'interface d'administration du logiciel.
 +
 +//PVE// peut utiliser le stockage local //(DAS)//, SAN, NAS et également le stockage distribué //(Ceph RBD)//, voir le //chapitre 8, Proxmox VE Storage// du guide  [[https://pve.proxmox.com/pve-docs/pve-admin-guide.pdf|https://pve.proxmox.com/pve-docs/pve-admin-guide.pdf]].
 +
 +Depuis la version 1.5, il est désormais possible d'utiliser des disques iSCSI pour stocker les machines virtuelles permettant ainsi d'assouplir le fonctionnement en grappe. D'autres types de stockage sont utilisables tel NFS.
 +
 +{{ Images_Cahier-201-06-002.png?650 }}
 +
 +==== Système minimum requis ====
 +
 +  - CPU 64 bits //(Intel EM64T ou AMD64)//.
 +  - Carte-mère et BIOS compatible Intel VT/AMD-V //(pour le support de la virtualisation par KVM)//.
 +  - 1 GO de RAM.
 +  - Disque dur.
 +  - Une carte réseau.
 +
 +=== Système recommandé ===
 +
 +  - CPU 64 bits //(Intel EM64T ou AMD64)//, multi-cœur recommandé.
 +  - Carte-mère et BIOS compatible Intel VT/AMD-V //(pour le support de la virtualisation par KVM)//.
 +  - Mémoire: 2 Go minimum pour les services OS et //PVE// et le plus de mémoire possible pour les invités. Pour Ceph ou ZFS, de la mémoire supplémentaire est requise, soit environ 1 Go de mémoire pour chaque To utilisé.
 +  - RAID matériel avec cache d'écriture protégé par batterie //("BBU")// ou protection par flash ou non-RAID pour ZFS. Ni ZFS ni Ceph ne sont compatibles avec un contrôleur RAID matériel. Partagé et distribué, le stockage est également possible.
 +  - Disques durs rapides; de meilleurs résultats sont obtenus avec des disques à 15 000 RPM en RAID 10.
 +  - Au moins 2 cartes réseau en fonction de la technologie de stockage utilisée, vous pourriez en avoir besoin de plus.
 +  - Système d'alimentation sans coupure.
 +
 +==== Documentation ====
 +
 +=== PDF & HTML ===
 +
 +Anglais seulement: [[https://pve.proxmox.com/pve-docs/|https://pve.proxmox.com/pve-docs/]].
 +
 +=== Vidéo ===
 +
 +Français: [[https://www.proxmox.com/en/training/video-tutorials/category/french|https://www.proxmox.com/en/training/video-tutorials/category/french]].\\ 
 +Anglais: [[https://www.proxmox.com/en/training/video-tutorials/category/english|https://www.proxmox.com/en/training/video-tutorials/category/english]].\\ 
 +Youtube: [[https://www.youtube.com/watch?v=Sjy0jll0Rx4|https://www.youtube.com/watch?v=Sjy0jll0Rx4]].
 +
 +==== Aide en ligne ====
 +
 +//PVE// lui-même est entièrement LIBRE donc, il encourage toujours ses utilisateurs à discuter et à partager leurs connaissances en utilisant le Forum communautaire Proxmox VE à l'adresse [[https://forum.proxmox.com/|https://forum.proxmox.com/]]. Le forum est entièrement "pondéré" par l'équipe de support Proxmox et possède une vaste base d'utilisateurs tout autour du globe. Inutile de dire qu'un tel forum est un bon endroit pour obtenir des informations. 
 +
 +La principale source de la documentation se trouve à l'adresse [[https://www.proxmox.com/en/downloads|https://www.proxmox.com/en/downloads]]. Cette source combine documentation et téléchargements.
 +
 +===== Cours NethServer-101 =====
 +
 +Le //Cours NethServer-101//, se voulant une base solide pour la création d'un site de **Commerce en ligne**, comprend plusieurs cahiers:
 +
 +  - [[nethserver_101_cahier_01_linux|Cahier-01]]: -> Les bases de Linux.
 +  - [[nethserver_101_cahier_02_installations_configurations_logiciels_prerequis|Cahier-02]]: -> Installation et configuration des logiciels prérequis sur le poste de travail.
 +  - [[nethserver_101_cahier_03_creation_un_serveur_virtuel|Cahier-03]]: -> Création d'un Serveur NethServer virtuel.
 +  - [[nethserver_101_cahier_04_local_certificat_let_encrypt|Cahier-04]]: -> Serveur NethServer LOCAL & Let's Encrypt.
 +  - [[nethserver_101_cahier_05_vdsl_fqdn_internet_et_nethserver|Cahier-05]]: -> FAI, modem VDSL, domaine FQDN(( **FQDN**: Dans le //DNS//, un Fully Qualified Domain Name //(FQDN, ou nom de domaine complètement qualifié)// est un nom de domaine qui révèle la position absolue d'un nœud dans l'arborescence //DNS// en indiquant tous les domaines de niveau supérieur jusqu'à la racine. On parle également de domaine absolu, par opposition aux domaines relatifs. Par convention, le //FQDN// est ponctué par un point final.\\ 
 +//Référence:// [[https://fr.wikipedia.org/wiki/Fully_qualified_domain_name|https://fr.wikipedia.org/wiki/Fully_qualified_domain_name]]. \\ \\ )) et Serveur NethServer physique.
 +  - [[nethserver_101_cahier_06_nethserver_wordPress|Cahier-06]]: -> Installation de WordPress.
 +  - [[nethserver_101_cahier_07_nethserver_wordPress_wordfence|Cahier-07]]: -> Installation de l'extension de sécurité Wordfence.
 +  - [[nethserver_101_cahier_08_woocommerce_paypal_stripe|Cahier-08]]: -> WooCommerce, comptes chez Stripe et   PayPal pour les paiements en ligne.
 +  - [[nethserver_101_cahier_09_duplicator_migration|Cahier-09]]: -> Sauvegarde/restauration ou migration d'un site avec l'extension Duplicator.
 +  - [[nethserver_101_cahier_10_mandataire_inverse|Cahier-10]]: -> Serveur mandataire inversé.
 +  - [[nethserver_101_cahier_11_nethserver_backuppc|Cahier-11]]: -> Sauvegarde/restauration avec BackupPC.
 +
 +==== Cours NethServer-201 ====
 +
 +Le //Cours NethServer-201// décrit l'installation et la configuration d'applications sur un serveur NethServer.
 +
 +  - [[nethserver_201_cahier_01_nethserver_et_dolibarr|Cahier-201-01]]: -> Dolibarr.
 +  - [[nethserver_201_cahier_02_odoo_12|Cahier-201-02]]: -> Odoo-12.
 +  - [[nethserver_201_cahier_03_mediawiki|Cahier-201-03]]: -> MediaWiki.
 +  - [[nethserver_201_cahier_04_dokuwiki|Cahier-201-04]]: -> DokuWiki.
 +  - [[nethserver_201_cahier_05_moodle|Cahier-201-05]]: -> Moodle.
 +  - [[nethserver_201_cahier_06_proxmox|Cahier-201-06]]: -> Proxmox.
 +  - [[nethserver_201_cahier_07_flectra|Cahier-201-07]]: -> Flectra.
 +
 +==== Logiciels ====
 +
 +Tous les logiciels nécessaires sont du domaine public ou LIBRE sous licence //GPL//; ils ne coûtent pas un sou. Le seul achat nécessaire est l'obtention d'un nom de domaine au prix initial de $15 CAD et son renouvellement annuel d'environ $30 CAD.
 +
 +==== But final ====
 +
 +Après avoir suivi le //Cours NethServer-101//, vous posséderez un site de //Commerce en ligne// fiable et hautement sécuritaire. De plus, vous pourrez utiliser un clone de votre site, sur un //Serveur NethServer// virtuel roulant sur votre poste de travail, pour tester de nouvelles extensions et applications sans compromettre la sécurité ou l'intégrité de votre site en ligne.
 +
 +{{ NS-101_001_Diagramme.png?500 }}
 +
 +===== Particularités de ce document =====
 +
 +==== Notes au lecteur ====
 +
 +<nowiki>*</nowiki> Les captures d'écrans ne sont que des références.\\
 +<nowiki>**</nowiki> Les informations écrites ont préséance sur celles retrouvées dans les captures d'écrans. Veillez vous référer aux différents tableaux lorsque ceux-ci sont présents.\\ 
 +<nowiki>***</nowiki> Une capture d'écran avec une accentuation en magenta indique qu'il faut remplacer cette distinction par vos propres paramètres ou implique un choix laissé à votre appréciation.
 +
 +==== Conventions ====
 +
 +{{Images_icone-201-001_doigt.png?22}} Manipulation, truc ou ruse pour se tirer d'embarras.\\
 +{{Images_icone-201-002_Lumiere.png?25}} Une recommandation ou astuce.\\
 +{{Images_icone-201-003_Note.png?25}} Une note.\\
 +{{Images_icone-201-004_Triangle.png?25}} Une étape, note ou procédure à surveiller.\\
 +{{Images_icone-201-005_Non-termine.png?25}} Paragraphe non complété ou non vérifié.\\
 +{{Images_icone-201-006_Securite.png?25}} Danger pour la sécurité du système.
 +
 +Toutes les commandes à la console ou à travers //PuTTY// sont précédées d'une invite qui est toujours présente.
 +
 +<file>
 +[root@dorgee ~]# ping 10.10.10.75 -c1
 +
 +PING 10.10.10.75 (10.10.10.75) 56(84) bytes of data.
 +64 bytes from 10.10.10.75: icmp_seq=1 ttl=64 time=1.63 ms
 +
 +--- 10.10.10.75 ping statistics ---
 +1 packets transmitted, 1 received, 0% packet loss, time 0ms
 +rtt min/avg/max/mdev = 1.639/1.639/1.639/0.000 ms
 +[root@dorgee ~]#
 +</file>
 +
 +<WRAP box round>
 +<file>
 +Commande à exécuter si ce n'est déjà fait.
 +</file>
 +</WRAP>
 +
 +<WRAP box>
 +<file>
 +Commande indiquée à titre d'information seulement.
 +</file>
 +</WRAP>
 +\\ 
 +
 +====== Téléchargement de l'ISO ======
 +
 +===== Page de téléchargement =====
 +
 +On se rend à la page de téléchargement de la version Proxmox VE 6.0: [[https://www.proxmox.com/en/downloads/item/proxmox-ve-6-0-iso-installer]]. La page affiche aussi la somme de contrôle du fichier qui nous servira à vérifier l'intégrité de l'ISO téléchargé.
 +
 +===== Téléchargement =====
 +
 +Nous allons télécharger la version Proxmox VE 6.0 ISO Installer //(version 6.0-1.iso)// et sauvegarder l'ISO sur notre poste de travail.
 +
 +<WRAP column 55%>
 +**Download**.
 +|{{ Images_Cahier-201-06-004.png?600 }}|
 +</WRAP>
 +<WRAP column 37%>
 +**Enregistrer le fichier -> OK**.
 +|{{ Images_Cahier-201-06-005.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +==== Vérification de la somme de contrôle ====
 +
 +{{Images_Cahier-101-03-004.png?25}} Il est toujours préférable de vérifier la somme de contrôle d'un fichier avant de l’utiliser.
 +
 +=== Calcul de la somme de contrôle ===
 +
 +Nous utilisons le calculateur de //7-Zip// pour la somme de contrôle //SHA-256//.
 +
 +<WRAP column 46%>
 +Clac //(clic droit)// sur le fichier **iso -> CRC SHA -> SHA-256**. //(Peut prendre quelques secondes.)//
 +|{{ Images_Cahier-201-06-006.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +La somme de contrôle //SHA-256// calculée est affichée.
 +|{{ Images_Cahier-201-06-007.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +Ci-contre, la somme de contrôle //SHA-256// affichée sur la page de téléchargement.
 +
 +Les sommes de contrôle coïncident, le fichier peut être utilisé en toute sécurité.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-008.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +{{Images_icone-201-003_Note.png?25}} On brûle l'ISO sur un CD/DVD qu'on insérera dans le lecteur de notre machine physique dédiée avant son amorçage.
 +\\ 
 +\\ 
 +
 +====== Création d'une machine virtuelle sous VirtualBox ======
 +
 +===== Description =====
 +
 +{{Images_Cahier-101-03-003.png?22}} Avec une installation //VirtualBox//, vous pourrez vérifier les modifications à l'environnement //PVE// sur la machine virtuelle avant de les implémenter sur la machine physique.
 +
 +{{ Images_Cahier-201-06-009.png?650 }}
 +
 +===== Marche à suivre =====
 +
 +  - Vérification du BIOS.
 +  - Création et configuration de la machine virtuelle qui roulera //PVE//.
 +
 +===== BIOS =====
 +
 +Depuis 2006, les processeurs Intel et AMD supportent ce qui est appelé la “virtualisation matérielle”. La virtualisation matérielle signifie que ces processeurs peuvent aider //VirtualBox// à intercepter des opérations potentiellement dangereuses que pourrait essayer d'exécuter l'invité et facilite la présentation du matériel à une machine virtuelle.
 +
 +Ces fonctionnalités diffèrent entre les CPU d'Intel et ceux d'AMD. Intel a appelé sa techno VT-x; AMD a nommé la leur AMD-V. Le support d’Intel et d’AMD est très différent dans le détail, mais pas si différent dans le principe.
 +
 +Les processeurs modernes incluent des fonctionnalités de virtualisation matérielle qui aident à accélérer la virtualisation. Intel VT-x n'est pas toujours activé par défaut. Si tel est le cas, un message est affiché: "L'accélération matérielle VT-x/AMD-V n'est pas disponible sur votre système" ou "Cet hôte prend en charge Intel VT-x mais Intel, VT-x est désactivé".
 +
 +Le matériel Intel VT-x peut être désactivé via le BIOS ou le micrologiciel UEFI. Il est régulièrement désactivé sur les nouveaux ordinateurs.
 +
 +AMD-V est toujours activé si vous utilisez un processeur AMD qui le prend en charge, il n'y a donc aucun BIOS ou UEFI que vous devez modifier.
 +
 +==== Activation ====
 +
 +[[http://www.informatiweb.net/tutoriels/informatique/9-bios/89--activer-la-virtualisation-intel-vt-x-amd-v.html|http://www.informatiweb.net/tutoriels/informatique/9-bios/89--activer-la-virtualisation-intel-vt-x-amd-v.html]].\\ 
 +[[http://www.pumbaa.ch/blog/tutoriaux/?d=2016/03/09/16/30/00-activer-vt-xamd-v-pour-installer-un-os-64-bits-dans-une-vm|http://www.pumbaa.ch/blog/tutoriaux/?d=2016/03/09/16/30/00-activer-vt-xamd-v-pour-installer-un-os-64-bits-dans-une-vm]].\\ 
 +[[https://www.qnap.com/fr-fr/qa/con_show.php?op=showone&cid=258|https://www.qnap.com/fr-fr/qa/con_show.php?op=showone&cid=258]].\\ 
 +[[http://f4b1.com/comment-activer-la-virtualisation-vt-x-amd-v-dans-le-bios|http://f4b1.com/comment-activer-la-virtualisation-vt-x-amd-v-dans-le-bios]].
 +\\ 
 +\\ 
 +
 +===== Paramètres de la machine virtuelle PVE =====
 +
 +Pour l'installation de //VirtualBox//, voir: [[nethserver_101_cahier_02_installations_configurations_logiciels_prerequis|Cahier-02: Installations & configurations des logiciels prérequis]] du "Cours NethServer-101".
 +
 +Dans //VirtualBox//, nous allons créer une machine virtuelle **ProxmoxVE_16Go**.
 +
 +  - Mémoire: 4096 Mo. Si nous avons seulement 4 Go de mémoire totale pour la station de travail et que nous allouons plus de 1998 Mo, //VirtualBox// affichera un //Avertissement//.
 +  - Disque: 16 Go.
 +\\ 
 +\\ 
 +
 +===== Création de la machine virtuelle PVE =====
 +
 +**Machine -> Nouvelle ...** {{Images_Cahier-201-06-010.png?150}}
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +• //Nom:// **ProxmoxVE_16Go**. \\ 
 +• //Type:// **Linux**. \\ 
 +• //Version:// **Debian (64-bit)**. \\ 
 +• //Taille de la mémoire://  **4096**. \\ 
 +• **Créer un disque virtuel maintenant**. \\ 
 +• **Créer**.
 +
 +|{{ Images_Cahier-201-06-011.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +• //Taille du fichier://  **16,00 Go**.\\ 
 +• //type de fichier de disque dur:// \\ 
 +⦿ **VDI (Image Disque VirtualBox)**.\\ 
 +• //Stockage sur disque physique:// \\ 
 +⦿ **Dynamiquement alloué**.\\ 
 +• **Créer**.
 +|{{ Images_Cahier-201-06-012.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +• On est retourné à l’écran principal de //VirtualBox// et on voit notre nouvelle machine virtuelle.
 +
 +• On sélectionne la machine virtuelle et on clique **Configuration**.
 +|{{ Images_Cahier-201-06-013.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Configuration =====
 +
 +<WRAP column 30%>
 +**Général ->** onglet **Avancé -> //Presse-papier partagé:// Bidirectionnel -> //Glisser-Déposer:// Bidirectionnel** //(non obligatoire)//.
 +|{{ Images_Cahier-201-06-014.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +Onglet **Description ->** on entre une description assez détaillée et __surtout le mot de passe__, car une fois qu’on aura plusieurs //MV//, il sera facile d’oublier…
 +|{{ Images_Cahier-201-06-015.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +<nowiki>-</nowiki> **Système ->** onglet **Processeur ->** on peut choisir le nombre de processeurs à allouer à cette machine virtuelle.\\ 
 +<nowiki>-</nowiki> Cocher toutes les **//Fonctions avancées//**.
 +|{{ Images_Cahier-201-06-016.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> **Affichage ->** onglet **Écran -> //Mémoire Vidéo://** on ajuste à **32 MB** ou jusqu'au max //128 MB//.\\ 
 +<nowiki>-</nowiki> **//Contrôleur graphique://** **VboxVGA**.
 +|{{ Images_Cahier-201-06-017.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +**Stockage -> Vide ->** cliquer l’**icône** du CD/DVD **-> Choisissez un fichier de disque optique virtuel...**
 +|{{ Images_Cahier-201-06-018.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +On se rend au répertoire où on a téléchargé l’ISO de Proxmox, on sélectionne le **fichier ISO -> Ouvrir**.
 +|{{ Images_Cahier-201-06-019.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> Le fichier ISO de //PVE// est maintenant attaché au CD/DVD de la machine virtuelle. Lorsque la //MV// amorcera, elle lancera l’installation de //PVE//.
 +
 +<nowiki>-</nowiki> **Son ->** on décoche //**Activer le son**//. Un serveur n’a pas besoin de carte de son.
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-020.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-021.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 52%>
 +==== Carte 1 (eth0) ====
 +
 +<nowiki>-</nowiki> **Réseau ->** onglet **Carte 1**.
 +
 +<nowiki>-</nowiki> **//Mode d’accès réseau://** **-> Accès par pont**.
 +
 +Cliquer **Avancé** pour afficher plus de choix.
 +
 +<nowiki>-</nowiki> **//Type d'interface://** **->** choisir la carte reliée au connecteur //RJ-45//.
 +
 +<nowiki>-</nowiki> **//Mode Promiscuité://**(( **Mode Promiscuité**: En informatique, se réfère à une configuration de la carte réseau, qui permet à celle-ci d'accepter tous les paquets qu'elle reçoit, même si ceux-ci ne lui sont pas adressés. Chaque paquet réseau envoyé inclut l'adresse //(adresse MAC)// de la carte réseau destinataire. Quand une carte réseau voit passer un paquet, elle vérifie si elle est la destinataire du paquet; si elle ne l'est pas, elle ne tient pas compte du paquet; mais en //Mode Promiscuité//, elle traite le paquet dans tous les cas, permettant ainsi à l'ordinateur de pouvoir lire tous les paquets.\\ //Référence://[[https://fr.wikipedia.org/wiki/Promiscuous_mode|https://fr.wikipedia.org/wiki/Promiscuous_mode]].\\ \\ )) **-> Autoriser les VMs**.
 +</WRAP>
 +<WRAP column 40%>
 +|{{ Images_Cahier-201-06-022.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 52%>
 +==== Carte 2 (eth1) ====
 +
 +<nowiki>-</nowiki> **Réseau ->** onglet **Carte 2**.
 +
 +<nowiki>-</nowiki> On coche **Activer la carte réseau**.
 +
 +<nowiki>-</nowiki> **//Mode d’accès réseau://** **-> Accès par pont**.
 +
 +Cliquer **Avancé** pour afficher plus de choix.
 +
 +<nowiki>-</nowiki> **//Type d'interface://** **->** choisir la carte reliée au connecteur //RJ-45//.
 +
 +<nowiki>-</nowiki> **//Mode Promiscuité://** **-> Autoriser les VMs**.
 +</WRAP>
 +<WRAP column 40%>
 +|{{ Images_Cahier-201-06-023.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +==== Interface utilisateur ====
 +
 +☑ **Afficher en plein écran/mode intégré**.
 +
 +☑ **Afficher en haut de l'écran**.
 +
 +On coche ☑ la case en bas à gauche afin d'afficher les icônes au bas de l'écran //VirtualBox//.
 +
 +{{Images_Cahier-101-03-006.png?25}} On déroule tous les menus et on coche toutes les options offertes **-> OK**.
 +</WRAP>
 +<WRAP column 36%>
 +|{{ Images_Cahier-201-06-024.png?400 }}|
 +</WRAP>
 +<WRAP column 24%>
 +|{{ Images_Cahier-201-06-025.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP centeralign>**La machine ProxmoxVE_16Go sous //VirtualBox// est prête à recevoir l'installation de //PVE//.**</WRAP>
 +\\ 
 +
 +====== Installation & configuration ======
 +
 +La machine virtuelle est configurée, elle possède deux cartes réseau et le CD/DVD est attaché au lecteur optique. On peut amorcer cette //MV// pour lancer l'installation de //PVE//.
 +
 +===== Installation =====
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> On amorce la machine virtuelle Proxmox VE.\\ 
 +<nowiki>-</nowiki> **//Install Proxmox VE//** **-> [Entrée]**.
 +|{{ Images_Cahier-201-06-026.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +Si vous recevez l'erreur ci-dessous, voir [[nethserver_201_cahier_06_proxmox#Virtualisation matérielle KVM]].
 +|{{ Images_Cahier-201-06-027.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +__<wrap em>Si on accepte les termes de la licence</wrap>__, on clique **I agree**.
 +|{{ Images_Cahier-201-06-028.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\ 
 +\\ 
 +**Next**.
 +|{{ Images_Cahier-201-06-029.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +On entre le pays **->** on choisit un fuseau horaire //(Montréal n'est pas là, mais dans l'écran de gestion, il apparaîtra dans les choix)// **-> Next**.
 +|{{ Images_Cahier-201-06-030.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On entre un mot de passe pour __root__ //(au moins 7 caractères)// et on le confirme.\\ 
 +<nowiki>-</nowiki> On entre l'adresse courriel qui recevra les messages de //PVE//.\\ 
 +<nowiki>-</nowiki> **Next**.
 +|{{ Images_Cahier-201-06-031.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +\\ 
 +<nowiki>-</nowiki> Les différents paramètres sont affichés, on peut les modifier.\\ 
 +<nowiki>-</nowiki> **Next**.
 +|{{ Images_Cahier-201-06-032.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +On vérifie les paramètres affichés, puis pour lancer l'installation, on clique **Install**.
 +|{{ Images_Cahier-201-06-033.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +Le système //PVE// débute son installation.
 +|{{ Images_Cahier-201-06-034.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +L'installation rend le système amorçable.
 +|{{ Images_Cahier-201-06-035.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +Victoire! L'installation est terminée.
 +|{{ Images_Cahier-201-06-036.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +//Menu VirtualBox// **-> Périphérique -> Lecteurs optiques -> Éjecter le disque du lecteur virtuel**.
 +|{{ Images_Cahier-201-06-037.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +\\ 
 +On force l'éjection **-> Éjection forcée**.
 +|{{ Images_Cahier-201-06-038.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +On réamorce le système en cliquant **Reboot**.
 +|{{ Images_Cahier-201-06-039.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Adresse du gestionnaire PVE =====
 +
 +<WRAP column 30%>
 +Après le réamorçage, l'écran de connexion s'affiche.
 +
 +{{Images_Cahier-101-03-006.png?25}} On voit l'adresse pour accéder au //gestionnaire //PVE////.
 +<WRAP centeralign>
 +__**https://192.168.1.44:8006/**__ 
 +</WRAP>
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-040.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Instantané VirtualBox =====
 +
 +Ici, on arrête la machine virtuelle et on prend un //Instantané VirtualBox// afin d'avoir une sauvegarde de l'installation originale: **Proxmox-6.0.1**<nowiki>_</nowiki>**Sauvegarde**<nowiki>_</nowiki>**originale**<nowiki>_</nowiki>**AAAA-MM-JJ**<nowiki>_</nowiki>**nnhnn**. On redémarre la machine virtuelle.
 +
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-041.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-042.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Connexion à la console de la MV =====
 +
 +<WRAP column 30%>
 +Pour vérifier le bon fonctionnement de la //MV//, on se logue à la console du serveur //PVE//.
 +
 +**//Nom d'usager://** **->** __**root**__.
 +
 +**//Mot de passe://** **->** le mot de passe entré lors de l'installation.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-043.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Connexion PuTTY =====
 +
 +On lance //PuTTY// et on crée une nouvelle session pour se connecter en //SSH// au système //PVE//.
 +
 +<WRAP column 46%>
 +On entre les informations demandées, port __<wrap em>22</wrap>__ **-> Save -> Open**.
 +|{{ Images_Cahier-201-06-044.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +**Oui** pour accepter la clé //RSA2//.
 +|{{ Images_Cahier-201-06-045.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +On utilise l'usager __root__ et on entre le mot de passe donné lors de l'installation.
 +
 +<file>
 +login as: root
 +root@192.168.1.44's password: mot-de-passe-de-root
 +Linux pve 5.0.15-1-pve #1 SMP PVE 5.0.15-1 (Wed, 03 Jul 2019 11:01:11 +0200) x86_64
 +
 +The programs included with the Debian GNU/Linux system are free software;
 +the exact distribution terms for each program are described in the
 +individual files in /usr/share/doc/*/copyright.
 +
 +Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
 +permitted by applicable law.
 +root@pve:~#
 +</file>
 +
 +==== Groupe de volumes ====
 +
 +Le programme d'installation crée un //Groupe de Volumes// //(VG)// appelé **pve** et des //Volumes Logiques// //(LV)// supplémentaires appelés: **data**, **root** et **swap**.
 +
 +<file>
 +root@pve:~# vgs
 +
 +  VG  #PV #LV #SN Attr   VSize   VFree
 +  pve       0 wz--n- <15.50g <1.88g
 +root@pve:~#
 +</file>
 +
 +=== Volume physique ===
 +
 +<file>
 +root@pve:~# pvs
 +
 +  PV         VG  Fmt  Attr PSize   PFree
 +  /dev/sda3  pve lvm2 a--  <15.50g <1.88g
 +root@pve:~#
 +</file>
 +
 +=== Volumes logiques ===
 +
 +<file>
 +root@pve:~# lvs
 +
 +  LV   VG  Attr       LSize  Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
 +  data pve twi-a-tz-- <6.00g             0.00   1.57
 +  root pve -wi-ao----  3.75g
 +  swap pve -wi-ao---- <1.88g
 +root@pve:~#
 +</file>
 +
 +=== Volume data ===
 +
 +Ce volume logique utilise //LVM-thin//, et est utilisé pour stocker les images des machines virtuelles. //LVM-thin// est préférable pour cette tâche, car il offre un support efficace pour les Instantanés des //MV// //PVE//.
 +
 +**//LVM-thin//**
 +
 +Certains systèmes de fichiers dont //Qemu qcow2 (Quick emulator - Quick Copy On Write)// supportent //LVM-thin//. Avec //LVM-thin// activé, seuls les blocs que le système invité utilisera réellement seront écrits sur le disque de stockage.
 +
 +=== Volume root ===
 +
 +Le volume logique root est formaté en //ext4//, et contient le système d'exploitation.
 +
 +<file>
 +root@pve:~# cat /etc/fstab
 +
 +# <file system> <mount point> <type> <options> <dump> <pass>
 +/dev/pve/root / ext4 errors=remount-ro 0 1
 +/dev/pve/swap none swap sw 0 0
 +proc /proc proc defaults 0 0
 +root@pve:~#
 +</file>
 +
 +==== Vérification de la connexion Internet ====
 +
 +<file>
 +root@pve:~# ping -c3 google.com
 +
 +PING google.com (172.217.1.14) 56(84) bytes of data.
 +64 bytes from yyz10s14-in-f14.1e100.net (172.217.1.14): icmp_seq=1 ttl=57 time=12.9 ms
 +64 bytes from yyz10s14-in-f14.1e100.net (172.217.1.14): icmp_seq=2 ttl=57 time=12.5 ms
 +64 bytes from yyz10s14-in-f14.1e100.net (172.217.1.14): icmp_seq=3 ttl=57 time=11.8 ms
 +
 +--- google.com ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 5ms
 +rtt min/avg/max/mdev = 11.821/12.402/12.905/0.464 ms
 +root@pve:~#
 +</file>
 +
 +==== Performance de l'hôte ====
 +
 +<file>
 +root@pve:~# pveperf
 +
 +CPU BOGOMIPS:      13973.88
 +REGEX/SECOND:      1487730
 +HD SIZE:           3.63 GB (/dev/mapper/pve-root)
 +BUFFERED READS:    88.55 MB/sec
 +AVERAGE SEEK TIME: 8.69 ms
 +FSYNCS/SECOND:     240.33
 +DNS EXT:           40.20 ms
 +DNS INT:           2.03 ms (micronator.org)
 +root@pve:~#
 +</file>
 +
 +==== Souscription ====
 +
 +<file>
 +root@pve:~# pvesubscription get
 +
 +message: There is no subscription key
 +serverid: 3D7751FEBFC5CB91DA22881F61A887C5
 +status: NotFound
 +url: https://www.proxmox.com/proxmox-ve/pricing
 +root@pve:~#
 +</file>
 +\\ 
 +
 +===== Configuration =====
 +
 +Pour connaître l'adresse du gestionnaire //PVE//, voir le paragraphe [[nethserver_201_cahier_06_proxmox#Connexion à la console de la MV]].\\ 
 +{{Images_Cahier-101-03-003.png?22}} Il faut absolument autoriser les <wrap em>témoins</wrap> et <wrap em>JavaScript</wrap> dans le navigateur sinon, l'écran de connexion ne sera pas présenté.
 +
 +==== Adresse du gestionnaire PVE ====
 +
 +{{Images_Cahier-101-03-004.png?25}} Par la console du serveur, on peut toujours retrouver l'adresse //IP// du gestionnaire //PVE// en affichant le fichier ''/etc/network/interfaces''.
 +
 +<file>
 +root@pve:~# cat /etc/network/interfaces
 +
 +auto lo
 +iface lo inet loopback
 +
 +iface enp0s3 inet manual
 +
 +auto vmbr0
 +iface vmbr0 inet static
 +        address 192.168.1.44
 +        netmask 255.255.255.0
 +        gateway 192.168.1.1
 +        bridge_ports enp0s3
 +        bridge_stp off
 +        bridge_fd 0
 +
 +root@pve:~#
 +</file>
 +
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On pointe un navigateur vers: **https://192.168.1.44:8006/**\\ 
 +<nowiki>-</nowiki> **Avancé**.
 +|{{ Images_Cahier-201-06-046.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +C'est une nouvelle installation, il faut **Ajouter une exception...**
 +|{{ Images_Cahier-201-06-047.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +{{Images_Cahier-101-03-004.png?25}} Si vous ne pouvez accéder à l'adresse du gestionnaire, voir le paragraphe [[nethserver_201_cahier_06_proxmox#Adresse IP]]. 
 +
 +<WRAP column 46%>
 +\\ 
 +\\ 
 +\\ 
 +**Confirmer l'exception de sécurité**.
 +|{{ Images_Cahier-201-06-048.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +- **//Language://** **-> French** //(l'écran va se rafraîchir)//.\\ 
 +- **//Utilisateur://**  **-> __root__**.\\ 
 +- **//Mot de passe://** **->** celui donné lors de l'installation.\\ 
 +- **Login**.
 +|{{ Images_Cahier-201-06-049.png?400 }}|
 +
 +|{{ Images_Cahier-201-06-050.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +On nous suggère de visiter le site [[http://www.proxmox.com/|www.proxmox.com]] pour plus d'informations sur les options de contrat de service.
 +|{{ Images_Cahier-201-06-051.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +<nowiki>-</nowiki> [[https://www.proxmox.com/en/proxmox-ve/pricing|https://www.proxmox.com/en/proxmox-ve/pricing]]\\ 
 +<nowiki>-</nowiki> Sur le site de Proxmox, les différents plans de souscription sont affichés.
 +|{{ Images_Cahier-201-06-053.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +\\ 
 +<nowiki>-</nowiki> On retourne à l'écran du gestionnaire.\\ 
 +<nowiki>-</nowiki> **OK**.
 +|{{ Images_Cahier-201-06-052.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\ 
 +
 +==== Fuseau horaire ====
 +
 +Maintenant, nous pouvons ajuster le fuseau horaire à //America/Montreal//.
 +
 +<WRAP column 30%>
 +**Vue Stockage -> Datacenter -> pve -> Système -> Temps -> Éditer**.
 +|{{ Images_Cahier-201-06-054.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +Choisir **America/Montreal -> OK**.
 +|{{ Images_Cahier-201-06-055.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +Au retour, on voit que la //**Zone de temps**// est bien //America/Montreal//.
 +|{{ Images_Cahier-201-06-056.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Mise à jour =====
 +
 +Cette mise à jour s'appliquera au système complet.
 +
 +<WRAP column 30%>
 +**Vue Stockage -> Datacenter -> pve -> Mise à jour -> Rafraîchir**.
 +|{{ Images_Cahier-201-06-057.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +**OK**.
 +|{{ Images_Cahier-201-06-058.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +Après la recherche de mises à jour dans les référentiels, on ferme la fenêtre.
 +|{{ Images_Cahier-201-06-059.png?400 }}|
 +</WRAP>
 +
 +Certains fichiers n'ont pu être téléchargés.\\ 
 +{{Images_icone-201-003_Note.png?25}} L'erreur de téléchargement vient du fait que nous n'avons aucun plan de souscription à Proxmox.
 +
 +<WRAP column 30%>
 +Le chargement du cache s'effectue.
 +|{{ Images_Cahier-201-06-060.png?400 }}|
 +</WRAP>
 +<WRAP column 62%>
 +**Appliquer les mises à jour**.
 +|{{ Images_Cahier-201-06-061.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\ 
 +Pour continuer, entrer  **Y -> [Entrée]**.
 +|{{ Images_Cahier-201-06-062.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On peut ignorer les suggestions.\\ 
 +<nowiki>-</nowiki> Pour quitter, on entre "**q**" sans guillemets.
 +|{{ Images_Cahier-201-06-063.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +On prend le choix par défaut **//UTF-8//** **-> OK**.
 +|{{ Images_Cahier-201-06-064.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +On prend le choix par défaut **//English (US)//** **-> OK**.
 +|{{ Images_Cahier-201-06-065.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +La mise à jour est terminée. On peut fermer cette fenêtre.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-066.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +À l'écran du gestionnaire **-> Rafraîchir**.
 +|{{ Images_Cahier-201-06-067.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +**OK**.
 +|{{ Images_Cahier-201-06-068.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +On peut fermer l'écran surgissant.
 +|{{ Images_Cahier-201-06-069.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> Un rechargement du cache s'effectue.
 +
 +<nowiki>-</nowiki> Il n'y a plus de mises à jour disponibles
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-070.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-071.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Souscription =====
 +
 +//Référence:// [[https://it.izero.fr/proxmox-quelques-infos-en-vrac/|https://it.izero.fr/proxmox-quelques-infos-en-vrac/]].
 +
 +<WRAP column 30%>
 +Pour supprimer l'écran surgissant //No valid subscription//.
 +</WRAP>
 +<WRAP column 63%>
 +|{{ Images_Cahier-201-06-072.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +À la console du serveur.
 +
 +<file>
 +root@pve:~# sed -i.bak 's/NotFound/Active/g'                         \
 +                       /usr/share/perl5/PVE/API2/Subscription.pm &&  \
 +                       systemctl restart pveproxy.service
 +
 +root@pve:~#
 +</file>
 +
 +Fichier ''/usr/share/perl5/PVE/API2/Subscription.pm'' original.
 +
 +<WRAP box>
 +<file>
 +...
 +    my $info = PVE::INotify::read_file('subscription');
 +    if (!$info) {
 +        return {
 +        status => "NotFound",
 +        message => "There is no subscription key",
 +        serverid => $server_id,
 +        url => $url,
 +        }
 +    }
 +...
 +</file>
 +</WRAP>
 +
 +Fichier ''/usr/share/perl5/PVE/API2/Subscription.pm'' modifié. La valeur **//NotFound//** a été remplacé par **//Active//**.
 +
 +<WRAP box>
 +<file>
 +...
 +    my $info = PVE::INotify::read_file('subscription');
 +    if (!$info) {
 +        return {
 +        status => "Active",
 +        message => "There is no subscription key",
 +        serverid => $server_id,
 +        url => $url,
 +        }
 +    }
 +...
 +</file>
 +</WRAP>
 +
 +On vérifie.
 +
 +<file>
 +root@pve:~# cat /usr/share/perl5/PVE/API2/Subscription.pm | grep -C 1 "Active"
 +
 +    return $info if $info->{status} ne 'Active';
 +
 +--
 +            my $no_subscription_info = {
 +                status => "Active",
 +                message => "There is no subscription key",
 +--
 +
 +        if (!$param->{force} && $info->{status} eq 'Active') {
 +            my $age = time() -  $info->{checktime};
 +root@pve:~#
 +</file>
 +
 +On redémarre les services.
 +
 +<file>
 +root@pve:~# service pvestatd restart
 +
 +root@pve:~#
 +</file>
 +
 +<file>
 +root@pve:~# service pvedaemon restart
 +
 +root@pve:~#
 +</file>
 +
 +===== Instantané VirtualBox =====
 +
 +{{Images_Cahier-101-03-004.png?25}} À ce stade-ci, on peut prendre un //Instantané// de la machine virtuelle afin de pouvoir y revenir en cas d'une future erreur de manipulation.
 +\\ 
 +\\
 +
 +===== Configuration du poste de travail =====
 +
 +==== Fichier hosts ====
 +
 +Le //FQDN// de notre //Serveur PVE// est //**pve.micronator-dev.org**//. Vu que nous n'avons pas de serveur //DNS// sur notre réseau, il nous faut une façon quelconque pour pouvoir spécifier le nom de notre domaine afin que le navigateur puisse identifier son adresse //IP// sans devoir interroger un serveur //DNS//. C'est ici que le fichier ''hosts'' du poste de travail entre en jeu.
 +
 +La communication dans l'Internet se fait toujours par adresses //IP// et non pas avec les noms de domaines qui sont utilisés par les humains qui ont plus de facilité à retenir un nom qu'un numéro.
 +
 +Lorsque vous voulez vous rendre chez //google.com//, le navigateur ne connaît pas l'adresse //IP// de //google.com//. Il commence par regarder dans le fichier ''hosts'' du poste de travail si ce fichier contient une référence à //google.com//.
 +
 +Si oui, il utilise l'adresse //IP// contenu dans le fichier ''hosts''.
 +
 +Si le fichier ''hosts'' du poste de travail n'a pas de référence pour le nom du domaine recherché, le navigateur va demander à son serveur //DNS// s'il connaît ''google.com''. Si son serveur //DNS// ne connaît pas le domaine en question, il demande à son tour à son serveur //DNS// supérieur s'il connaît le domaine. Si le //DNS// supérieur n'a pas de référence pour le domaine, à son tour, il demande à son serveur //DNS// supérieur et ainsi de suite jusqu'au //DNS// tout en haut de l'échelle hiérarchique //.com// qui lui, avec ses confrères //.org//, //.net//, etc..., connaissent tous les noms de tous les domaines de l'Internet.
 +
 +Une fois l'adresse //IP// trouvée, elle redescend l'échelle hiérarchique jusqu'à votre navigateur qui utilisera alors l'adresse //IP// reçue pour communiquer avec //google.com//.
 +
 +Le point à remarquer est que le navigateur cherche en premier lieu dans le fichier ''host'' du poste de travail. Pour tromper le navigateur, il suffit alors d'y entrer une référence pour notre domaine //pve.micronator-dev.org//.
 +
 +Pour un système Windows, le chemin du fichier ''hosts'' est: ''C:\Windows\System32\drivers\etc\hosts''. Pour un système Linux, le chemin est: ''/etc/hosts''.
 +
 +Pour un système Windows, le fichier //hosts// est en __Lecture seule__.
 +
 +En ayant les droits d'<wrap em>administrateur</wrap> Windows, on enlève le droit de //Lecture seule// sur le fichier //hosts// du poste de travail et on l'édite avec //Notepad++//.
 +
 +<WRAP column 30%>
 +Dans l'explorateur de fichiers, on claque sur le fichier **hosts -> Propriété**s.
 +|{{ Images_Cahier-201-06-073.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +Décocher **Lecture seule -> OK**.
 +|{{ Images_Cahier-201-06-074.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +**Continuer**.
 +|{{ Images_Cahier-201-06-075.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\ 
 +Clac sur **hosts -> Éditer avec //Notepad++//**.
 +|{{ Images_Cahier-201-06-076.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On entre notre domaine avec ses **CNAME** et son **adresse IP**.\\ 
 +<nowiki>-</nowiki> On sauvegarde le fichier.
 +|{{ Images_Cahier-201-06-077.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +**Oui**.
 +|{{ Images_Cahier-201-06-078.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +**Oui**.
 +|{{ Images_Cahier-201-06-079.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +{{Images_Cahier-101-03-006.png?25}} On est alors retourné à l'écran d'édition et <wrap em>on sauvegarde encore une fois</wrap>, car la première sauvegarde n'a pas eu lieu, elle a été transformée en demande de changement de mode.
 +
 +{{Images_Cahier-101-03-008.png?25}} On ferme //Notepad++// et, pour la sécurité du poste de travail, __on remet le fichier ''hosts''__ en <wrap em>Lecture seule</wrap>.
 +
 +À l'avenir, lorsqu'on demandera à notre navigateur de se rendre à **https://www.pve.micronator-dev.org:8006**, il cherchera dans le fichier ''hosts'' une correspondance avec //www.pve.micronator-dev.org// et trouvera //**www.pve.micronator-dev.org**//, il prendra alors l'adresse //192.168.1.44// qui y est associée et se connectera à la page de l'interface Web de notre serveur //PVE//.
 +
 +==== Cartes réseau ====
 +
 +=== Particularités de la carte RJ-45 ===
 +
 +{{Images_icone-201-003_Note.png?25}} L'adresse //MAC// de cette carte est différente de l'adresse //MAC// de la Carte-1, Carte-2, eth0 ou eth1.\\ 
 +{{Images_Cahier-101-03-006.png?25}} La carte réseau //RJ-45// doit être activée et reliée à un dispositif quelconque pour que le poste de travail puisse l'i­dentifier. Pour nous, cette carte est branchée à un port de l'aguilleur.
 +
 +Si le connecteur //RJ-45// n'est pas branché à un dispositif quelconque et qu'on examine cette carte dans l'utilitaire //Centre Réseau et partage// de Windows, on verra qu'il indique **//Câble réseau non connecté//** même si elle est pourtant reliée, à travers la Carte-1, au réseau LOCAL et à travers la Carte-2, au réseau Externe du serveur invité Proxmox. De plus, si //VirtualBox// ne trouve pas cette carte, le serveur invité pourrait refuser de démarrer.
 +
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-080.png?400 }}|
 +{{Images_icone-201-003_Note.png?25}} Nous activerons la deuxième carte réseau au paragraphe [[nethserver_201_cahier_06_proxmox#Deuxième carte réseau]].
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-080-A.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +Plus haut, nous avons débuté une arnaque en faisant croire au navigateur Web du poste de travail que c'est son serveur //DNS// qui lui donnera l'adresse l'//IP// de notre //Serveur Proxmox// LOCAL alors qu'en réalité c'est le fichier ''C:\Windows\System32\drivers\etc\hosts'' du poste de travail qui répondra à sa requête.\\ 
 +{{Images_Cahier-101-03-003.png?22}} Le but principal de notre configuration "non standard" de la carte réseau du poste de travail est de continuer l'arnaque précédente en lui faisant croire qu'il possède deux cartes réseau //RJ-45//.
 +
 +=== Première adresse IP ===
 +
 +**1)** Nous commençons par donner l'adresse //192.168.1.81// à la carte //RJ-45// du poste de travail.
 +
 +<WRAP column 52%>
 +Clac //(clic droit)// sur l'**icône réseau** dans la zone de notification **->  Ouvrir le Centre Réseau et partage**.
 +|{{ Images_Cahier-201-06-081.png?500 }}|
 +</WRAP>
 +<WRAP column 40%>
 +\\ 
 +Modifier les paramètres de la carte.
 +|{{ Images_Cahier-201-06-082.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\ 
 +Clac sur la **carte Éthernet -> Propriétés**.
 +|{{ Images_Cahier-201-06-083.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +Onglet **Gestion de réseau -> Protocole Internet version 4 (TCP/IPv4) -> Propriétés**.
 +|{{ Images_Cahier-201-06-084.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +**2)** **//Utiliser l'adresse IP suivante://**
 +
 +On entre les informations telles que ci contre.
 + 
 +{{Images_icone-201-003_Note.png?25}} Utiliser une passerelle par défaut sur un autre segment //IP// que l'adresse principale __n'est pas tout à fait standard__.
 +
 +**3)** **//Serveur DNS//**
 +
 +Pour le serveur //DNS préféré//, nous utiliserons l'adresse //IP// **10.10.10.75** du serveur invité //Proxmox// sur son réseau LOCAL afin de pouvoir utiliser le nom //FQDN// du //Serveur Proxmox// virtuel même si celui-ci ne possède pas de véritable nom de domaine.
 +
 +En effet, plus tard, lorsque le navigateur Web lancera une requête //DNS// pour l'adresse //IP// de l'URL **https://www.proxmox.micronator-dev.org**:
 +
 +Windows cherchera d'abord dans son fichier ''hosts'' s'il existe une correspondance pour cette URL. Il trouvera l'adresse //IP// du //Serveur Proxmox// entrée précédemment et il la transmettra au navigateur Web.
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-085.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +Si l'URL en question n'existe pas dans le fichier ''hosts'' du poste de travail, la requête sera transmise au serveur DNS préféré - //10.10.10.75// - le //Serveur Proxmox// virtuel. Si notre serveur virtuel ne connaît pas cette //URL//, il transmet la requête à son propre serveur //DNS// qui lui, la transmet à son propre serveur //DNS//, etc... jusqu'à ce que l'adresse //IP// soit enfin trouvée et retournée au navigateur Web.
 +
 +Lorsque le serveur invité sera éteint, la carte //RJ-45// ne trouvant pas le serveur //DNS préféré//, demandera alors au serveur //DNS auxiliaire (192.168.1.1)// de remplir les requêtes //DNS//.
 +
 +**->** Cliquer **Avancé...**
 +\\ 
 +\\ 
 +
 +=== Deuxième adresse IP ===
 +
 +**4)** Nous donnons une deuxième adresse - **10.10.10.81** à la carte //RJ-45// du poste de travail.
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> Onglet **Paramètres IP**.\\ 
 +<nowiki>-</nowiki> **//Adresses IP//** **-> Ajouter...**
 +|{{ Images_Cahier-201-06-086.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +<nowiki>-</nowiki> On entre l'**adresse** et le **masque**.\\ 
 +<nowiki>-</nowiki> **Ajouter**.
 +|{{ Images_Cahier-201-06-087.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +La nouvelle adresse a été ajoutée à la carte //RJ-45// du poste de travail.
 +|{{ Images_Cahier-201-06-088.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +=== Deuxième passerelle par défaut ===
 +
 +<WRAP column 30%>
 +\\ 
 +**//Passerelles par défaut://** **-> Ajouter...**
 +|{{ Images_Cahier-201-06-089.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +<nowiki>-</nowiki> **//Passerelle://** **-> 192.168.1.1**\\ 
 +<nowiki>-</nowiki> Ajouter.
 +|{{ Images_Cahier-201-06-090.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +<nowiki>-</nowiki> La deuxième passerelle à été ajoutée.\\ 
 +<nowiki>-</nowiki> **OK**.
 +|{{ Images_Cahier-201-06-091.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +**OK**.
 +|{{ Images_Cahier-201-06-092.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +**OK**.
 +|{{ Images_Cahier-201-06-093.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +**Détails...**
 +|{{ Images_Cahier-201-06-094.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +Nos deux adresses //IP// et nos deux passerelles son présentes.
 +
 +<nowiki>-</nowiki> **Fermer** toutes les fenêtre.
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-095.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +====== Certificat TLS/SSL Let's Encrypt ======
 +
 +===== Référence =====
 +
 +Voir le chapitre [[nethserver_101_cahier_04_local_certificat_let_encrypt#let_s_encrypt|Certificat TLS/SSL Let's Encrypt]] dans le **Cahier-04:** //NethServer LOCAL & Certificat Let's Encrypt// du "Cours NehServer-101".
 +
 +==== Ajout des nouveaux CNAME chez Cloudflare.com ====
 +
 +<WRAP column 20%>
 +=== pve ===
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-096.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 20%>
 +=== www.pve ===
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-097.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 20%>
 +<nowiki>-</nowiki> On vérifie.
 +
 +<nowiki>-</nowiki> On se déconnecte de //Cloudflare//.
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-098.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Installation du script acme.sh =====
 +
 +==== Utilitaire curl ====
 +
 +Installation de ''curl'' pour le téléchargement du fichier du script.
 +
 +<file>
 +root@pve:~# apt-get install -y curl
 +
 +Reading package lists... Done
 +Building dependency tree
 +Reading state information... Done
 +The following additional packages will be installed:
 +  libcurl4
 +The following NEW packages will be installed:
 +  curl libcurl4
 +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
 +Need to get 596 kB of archives.
 +After this operation, 1,123 kB of additional disk space will be used.
 +Get:1 http://ftp.ca.debian.org/debian buster/main amd64 libcurl4 amd64 7.64.0-4 [332 kB]
 +Get:2 http://ftp.ca.debian.org/debian buster/main amd64 curl amd64 7.64.0-4 [264 kB]
 +Fetched 596 kB in 1s (1,150 kB/s)
 +Selecting previously unselected package libcurl4:amd64.
 +(Reading database ... 43994 files and directories currently installed.)
 +Preparing to unpack .../libcurl4_7.64.0-4_amd64.deb ...
 +Unpacking libcurl4:amd64 (7.64.0-4) ...
 +Selecting previously unselected package curl.
 +Preparing to unpack .../curl_7.64.0-4_amd64.deb ...
 +Unpacking curl (7.64.0-4) ...
 +Setting up libcurl4:amd64 (7.64.0-4) ...
 +Setting up curl (7.64.0-4) ...
 +Processing triggers for man-db (2.8.5-2) ...
 +Processing triggers for libc-bin (2.28-10) ...
 +root@pve:~#
 +</file>
 +
 +==== Téléchargement du fichier du script ====
 +
 +<file>
 +root@pve:~# curl https://get.acme.sh | sh
 +
 +  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
 +                                 Dload  Upload   Total   Spent    Left  Speed
 +100   705    0   705    0       2974      0 --:--:-- --:--:-- --:--:--  2974
 +  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
 +                                 Dload  Upload   Total   Spent    Left  Speed
 +100  186k  100  186k    0       578k      0 --:--:-- --:--:-- --:--:--  576k
 +[Mon 09 Sep 2019 07:02:49 PM EDT] Installing from online archive.
 +[Mon 09 Sep 2019 07:02:49 PM EDT] Downloading https://github.com/Neilpang/acme.sh/archive/master.tar.gz
 +[Mon 09 Sep 2019 07:02:49 PM EDT] Extracting master.tar.gz
 +[Mon 09 Sep 2019 07:02:49 PM EDT] Installing to /root/.acme.sh
 +[Mon 09 Sep 2019 07:02:49 PM EDT] Installed to /root/.acme.sh/acme.sh
 +[Mon 09 Sep 2019 07:02:49 PM EDT] Installing alias to '/root/.bashrc'
 +[Mon 09 Sep 2019 07:02:49 PM EDT] OK, Close and reopen your terminal to start using acme.sh
 +[Mon 09 Sep 2019 07:02:49 PM EDT] Installing cron job
 +41 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
 +[Mon 09 Sep 2019 07:02:49 PM EDT] Good, bash is found, so change the shebang to use bash as preferred.
 +[Mon 09 Sep 2019 07:02:50 PM EDT] OK
 +[Mon 09 Sep 2019 07:02:50 PM EDT] Install success!
 +root@pve:~#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +root@pve:~# ls -als
 +
 +total 36
 +4 drwx------  5 root root 4096 Sep 10 09:15 .
 +4 drwxr-xr-x 18 root root 4096 Sep  9 12:53 ..
 +4 drwx------  7 root root 4096 Sep  7 07:02 .acme.sh
 +4 -rw-r--r--  1 root root  601 Sep 10 09:15 .bashrc
 +4 -rw-r--r--  1 root root   25 Sep  9 12:53 .forward
 +4 drwx------  3 root root 4096 Sep 10 09:14 .gnupg
 +4 -rw-r--r--  1 root root  148 Aug 17  2015 .profile
 +4 -rw-------  1 root root 1024 Sep  9 13:11 .rnd
 +4 drwxr-xr-x  2 root root 4096 Sep  9 13:11 .ssh
 +root@pve:~#
 +</file>
 +
 +===== Variables d'environnement =====
 +
 +On doit définir certaines variables d’environnement correspondant à nos informations d’identification et à notre validateur //DNS// c.-à-d. //Cloudflare//.\\ 
 +{{Images_Cahier-101-03-003.png?22}} C’est ici que vous devrez effectuer des ajustements nécessaires si vous utilisez un autre serveur de noms que //Cloudflare// - pour plus de détails, voir ce lien pour la documentation du script ''acme.sh'': [[https://github.com/Neilpang/acme.sh/wiki/dnsapi|https://github.com/Neilpang/acme.sh/wiki/dnsapi]].\\ 
 +{{Images_Cahier-101-03-006.png?25}} L'exemple ci-dessous est celui d'une installation utilisant le serveur de noms //Cloudflare//.
 +
 +On exporte, dans l'environnement présentement en mémoire, notre **clé API Globale** de //Cloudflare//.
 +
 +<file>
 +[root@tchana ~]# export CF_Key="VotreCléGlobaleDeCloudflare"
 +
 +[root@tchana ~]#
 +</file>
 +
 +On exporte notre adresse courriel utilisée pour notre enregistrement chez //Cloudflare//.
 +
 +<file>
 +[root@tchana ~]# export CF_Email="VotreAdresseCourrielDEnregistrementChezCloudflare"
 +
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie les exportations.
 +
 +<file>
 +[root@tchana ~]# env | grep -i CF_
 +
 +CF_Email= VotreAdresseCourrielDEnregistrementChezCloudflare
 +CF_Key= VotreCléGlobaleDeCloudflare
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_Cahier-101-03-006.png?25}} {{Images_Cahier-101-03-003.png?22}} <wrap em>Si vous réamorcez</wrap> le //Serveur PVE// __avant la demande d'un certificat__, vous perdez ces exportations. Il vous faudra alors les refaire.
 +
 +===== Demande d'un certificat de test =====
 +
 +<file>
 +[root@tchana ~]# /root/.acme.sh/acme.sh                                   \
 +                      --issue                                             \
 +                      --dns dns_cf                                        \
 +                      -d pve.micronator-dev.org                           \
 +                      -d www.pve.micronator-dev.org                       \
 +                      --accountemail "michelandre@micronator.org"         \
 +                      --keypath /etc/pve/local/pveproxy-ssl.key           \
 +                      --fullchainpath /etc/pve/local/pveproxy-ssl.pem     \
 +                      --reloadcmd "systemctl restart pveproxy"            \
 +                      --log /root/.acme.sh/acme.sh.log                    \
 +                      --test                                              \
 +                      --force 
 +
 +[Tue 10 Sep 2019 09:16:49 AM AST] Using stage ACME_DIRECTORY: https://acme-staging-v02.api.letsencrypt.org/directory
 +[Tue 10 Sep 2019 09:16:50 AM AST] Create account key ok.
 +[Tue 10 Sep 2019 09:16:50 AM AST] Registering account
 +[Tue 10 Sep 2019 09:16:51 AM AST] Registered
 +...
 +[Tue 10 Sep 2019 09:16:51 AM AST] The domain key is here: /root/.acme.sh/pve.micronator-dev.org/pve.micronator-dev.org.key
 +[Tue 10 Sep 2019 09:16:51 AM AST] Multi domain='DNS:pve.micronator-dev.org,DNS:www.pve.micronator-dev.org'
 +...
 +[Tue 10 Sep 2019 09:17:17 AM AST] Domain pve.micronator-dev.org '_acme-challenge.pve.micronator-dev.org' success.
 +[Tue 10 Sep 2019 09:17:17 AM AST] Checking www.pve.micronator-dev.org for _acme-challenge.www.pve.micronator-dev.org
 +[Tue 10 Sep 2019 09:17:17 AM AST] Domain www.pve.micronator-dev.org '_acme-challenge.www.pve.micronator-dev.org' success.
 +[Tue 10 Sep 2019 09:17:17 AM AST] All success, let's return
 +...
 +[Tue 10 Sep 2019 09:17:17 AM AST] Verifying: pve.micronator-dev.org
 +[Tue 10 Sep 2019 09:17:19 AM AST] Success
 +[Tue 10 Sep 2019 09:17:20 AM AST] Verifying: www.pve.micronator-dev.org
 +[Tue 10 Sep 2019 09:17:22 AM AST] Success
 +...
 +-----BEGIN CERTIFICATE-----
 +MIIFYDCCBEigAwIBAgITAPqGqLkQqAECZQhj5EuyG3VRATANBgkqhkiG9w0BAQsF
 +...
 +TBVT2PIBfGL9VvjcRbffwwq52ZFtVG9n/KJ3471tNFW9+jrf
 +-----END CERTIFICATE-----
 +[Tue 10 Sep 2019 09:17:29 AM AST] Your cert is in  /root/.acme.sh/pve.micronator-dev.org/pve.micronator-dev.org.cer
 +[Tue 10 Sep 2019 09:17:29 AM AST] Your cert key is in  /root/.acme.sh/pve.micronator-dev.org/pve.micronator-dev.org.key
 +[Tue 10 Sep 2019 09:17:29 AM AST] The intermediate CA cert is in  /root/.acme.sh/pve.micronator-dev.org/ca.cer
 +[Tue 10 Sep 2019 09:17:29 AM AST] And the full chain certs is there:  /root/.acme.sh/pve.micronator-dev.org/fullchain.cer
 +[Tue 10 Sep 2019 09:17:29 AM AST] Installing key to:/etc/pve/local/pveproxy-ssl.key
 +chmod: changing permissions of '/etc/pve/local/pveproxy-ssl.key': Operation not permitted
 +[Tue 10 Sep 2019 09:17:29 AM AST] Installing full chain to:/etc/pve/local/pveproxy-ssl.pem
 +[Tue 10 Sep 2019 09:17:29 AM AST] Run reload cmd: systemctl restart pveproxy
 +[Tue 10 Sep 2019 09:17:32 AM AST] Reload success
 +root@pve:~#
 +</file>
 +
 +===== Demande d'un certificat officiel =====
 +
 +<file>
 +[root@tchana ~]# /root/.acme.sh/acme.sh                                   \
 +                      --issue                                             \
 +                      --dns dns_cf                                        \
 +                      -d pve.micronator-dev.org                           \
 +                      -d www.pve.micronator-dev.org                       \
 +                      --accountemail "michelandre@micronator.org"         \
 +                      --keypath /etc/pve/local/pveproxy-ssl.key           \
 +                      --fullchainpath /etc/pve/local/pveproxy-ssl.pem     \
 +                      --reloadcmd "systemctl restart pveproxy"            \
 +                      --log /root/.acme.sh/acme.sh.log                    \
 +                      --force
 +
 +...
 +[Mon 09 Sep 2019 06:32:59 PM EDT] Let's check each dns records now. Sleep 20 seconds first.
 +[Mon 09 Sep 2019 06:33:20 PM EDT] Checking www.pve.micronator-dev.org for _acme-challenge.www.pve.micronator-dev.org
 +[Mon 09 Sep 2019 06:33:21 PM EDT] Domain www.pve.micronator-dev.org '_acme-challenge.www.pve.micronator-dev.org' success.
 +[Mon 09 Sep 2019 06:33:21 PM EDT] All success, let's return
 +[Mon 09 Sep 2019 06:33:21 PM EDT] pve.micronator-dev.org is already verified, skip dns-01.
 +[Mon 09 Sep 2019 06:33:21 PM EDT] Verifying: www.pve.micronator-dev.org
 +[Mon 09 Sep 2019 06:33:23 PM EDT] Success
 +...
 +[Mon 09 Sep 2019 06:33:27 PM EDT] Download cert, Le_LinkCert: https://acme-v02.api.letsencrypt.org/acme/cert/04709b7539b16d5d777430b314c755ce9601
 +[Mon 09 Sep 2019 06:33:27 PM EDT] Cert success.
 +-----BEGIN CERTIFICATE-----
 +MIIFgTCCBGmgAwIBAgISBHCbdTmxbV13dDCzFMdVzpYBMA0GCSqGSIb3DQEBCwUA
 +...
 +cfbX5u8+i4U5T+uEZJZyrCLyD1vU
 +-----END CERTIFICATE-----
 +[Mon 09 Sep 2019 06:33:27 PM EDT] Your cert is in  /root/.acme.sh/pve.micronator-dev.org/pve.micronator-dev.org.cer
 +[Mon 09 Sep 2019 06:33:27 PM EDT] Your cert key is in  /root/.acme.sh/pve.micronator-dev.org/pve.micronator-dev.org.key
 +[Mon 09 Sep 2019 06:33:27 PM EDT] The intermediate CA cert is in  /root/.acme.sh/pve.micronator-dev.org/ca.cer
 +[Mon 09 Sep 2019 06:33:27 PM EDT] And the full chain certs is there:  /root/.acme.sh/pve.micronator-dev.org/fullchain.cer
 +[Mon 09 Sep 2019 06:33:27 PM EDT] Installing key to:/etc/pve/local/pveproxy-ssl.key
 +[Mon 09 Sep 2019 06:33:27 PM EDT] Installing full chain to:/etc/pve/local/pveproxy-ssl.pem
 +[Mon 09 Sep 2019 06:33:27 PM EDT] Run reload cmd: systemctl restart pveproxy
 +[Mon 09 Sep 2019 06:33:31 PM EDT] Reload success
 +root@pve:~#
 +</file>
 +
 +===== Vérification =====
 +
 +<WRAP column 52%>
 +On se rend à **https://www.pve.micronator-dev.org**.
 +
 +{{Images_icone-201-003_Note.png?25}} Il n'est pas nécessaire d'ajouter une exception pour le certificat, car il a été émis par une autorité de certification reconnue. Le cadenas est __vert__.
 +
 +On clique le cadenas pour afficher les informations de la connexion, puis on clique l'icône <wrap em>></wrap>.
 +</WRAP>
 +<WRAP column 40%>
 +|{{ Images_Cahier-201-06-099.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +**Plus d'informations**.
 +|{{ Images_Cahier-201-06-100.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +Onglet **Sécurité -> Afficher le certificat**.
 +|{{ Images_Cahier-201-06-101.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\ 
 +<nowiki>-</nowiki> Le certificat a été émis par **//Let's Encrypt Authority X3//**.\\ 
 +<nowiki>-</nowiki> On clique l'onglet **Détails**.
 +|{{ Images_Cahier-201-06-102.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On clique **Nom alternatif du sujet du certificat**.\\ 
 +<nowiki>-</nowiki> Tous les //CNAME// sont présents.\\ 
 +<nowiki>-</nowiki> **Fermer** toutes les fenêtres.
 +|{{ Images_Cahier-201-06-103.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Renouvellement =====
 +
 +À chaque jour, une tâche ''cron'' vérifie le nombre de jours restant pour la validité. 
 +
 +<file>
 +[root@tchana ~]# crontab -l
 +
 +41 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_icone-201-003_Note.png?25}} Le renouvellement se fera automatiquement lorsqu'il ne restera que **30** jours de validité.
 +
 +===== Journal =====
 +
 +Nous avons spécifié de créer un journal en utilisant le paramètre ''--log  /root/.acme.sh/acme.sh.log''.
 +
 +On examine les dernières lignes du journal.
 +
 +<file>
 +root@pve:~# tail /root/.acme.sh/acme.sh.log
 +
 +[Tue 10 Sep 2019 00:40:00 PM EDT] ACME_REVOKE_CERT='https://acme-v02.api.letsencrypt.org/acme/revoke-cert'
 +[Tue 10 Sep 2019 00:40:00 PM EDT] ACME_AGREEMENT='https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf'
 +[Tue 10 Sep 2019 00:40:00 PM EDT] ACME_NEW_NONCE='https://acme-v02.api.letsencrypt.org/acme/new-nonce'
 +[Tue 10 Sep 2019 00:40:00 PM EDT] ACME_VERSION='2'
 +[Tue 10 Sep 2019 00:40:00 PM EDT] Le_NextRenewTime='1573166007'
 +[Tue 10 Sep 2019 00:40:00 PM EDT] _saved_domain='pve.micronator-dev.org'
 +[Tue 10 Sep 2019 00:40:00 PM EDT] _saved_alt='www.pve.micronator-dev.org'
 +[Tue 10 Sep 2019 00:40:00 PM EDT] Domains not changed.
 +[Tue 10 Sep 2019 00:40:00 PM EDT] Skip, Next renewal time is: Fri 08 Nov 2019 10:33:27 PM UTC
 +[Tue 10 Sep 2019 00:40:00 PM EDT] Add '--force' to force to renew.
 +root@pve:~#
 +</file>
 +
 +===== Instantané VirtualBox =====
 +
 +{{Images_Cahier-101-03-004.png?25}} À ce stade-ci, on peut prendre un //Instantané// de la machine virtuelle afin de pouvoir y revenir en cas d'une future erreur de manipulation.
 +\\ 
 +\\ 
 +
 +====== Serveur physique dédié ======
 +
 +{{ Images_Cahier-201-06-104.png?700 }}
 +
 +===== Installation =====
 +
 +On insère le CD/DVD de //Proxmox-6// dans le lecteur du serveur physique et on l'amorce.
 +
 +<WRAP column 46%>
 +**//Install Proxmox VE//** **-> [Entrée]**.
 +|{{ Images_Cahier-201-06-105.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<wrap em>Si on accepte les termes de la licence</wrap>, on clique **I agree**.
 +|{{ Images_Cahier-201-06-106.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\ 
 +\\ 
 +**Next**.
 +|{{ Images_Cahier-201-06-107.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +On entre le **pays** **->** on choisit un **fuseau horaire** //(Montréal n'est pas là, mais dans l'écran de gestion, il apparaîtra dans les choix)// **-> Next**.
 +|{{ Images_Cahier-201-06-108.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On entre un mot de passe robuste pour __**root**__ //(au moins 7 caractères)// et on le confirme.\\ 
 +<nowiki>-</nowiki> On entre l'adresse courriel qui recevra les messages de //PVE//.\\ 
 +<nowiki>-</nowiki> **Next**.
 +|{{ Images_Cahier-201-06-109.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +<nowiki>-</nowiki> Les différents paramètres sont affichés, on peut les modifier.\\ 
 +<nowiki>-</nowiki> **Next**.\\ 
 +<nowiki>-</nowiki> Le système //Proxmox VE// s'installe.
 +|{{ Images_Cahier-201-06-110.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +On vérifie les paramètres affichés, puis pour lancer l'installation, on clique **Install**.
 +|{{ Images_Cahier-201-06-111.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +Le système //PVE// débute son installation.
 +|{{ Images_Cahier-201-06-112.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\
 +L'installation rend le système amorçable.
 +|{{ Images_Cahier-201-06-113.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +- L'installation est terminée.\\ 
 +- On réamorce le système en cliquant **Reboot**.
 +|{{ Images_Cahier-201-06-114.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Adresse du gestionnaire PVE =====
 +
 +<WRAP column 30%>
 +Après le réamorçage, l'écran de connexion s'affiche.
 +
 +{{Images_Cahier-101-03-006.png?25}} On voit l'adresse pour accéder au //gestionnaire PVE//.
 +<WRAP centeralign>
 +**https://192.168.1.52:8006**
 +</WRAP>
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-115.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Connexion PuTTY =====
 +
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On ajoute une nouvelle entrée, port <wrap em>22</wrap> **-> Save**.\\ 
 +<nowiki>-</nowiki> On sélectionne la nouvelle entrée //ProxmoxVE// **-> Open**.
 +|{{ Images_Cahier-201-06-116.png?700 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +**Oui** pour accepter la clé //RSA2//.
 +|{{ Images_Cahier-201-06-117.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +On se logue à la console.\\ 
 +//Nom d'usager:// **->** __**root**__.\\ 
 +//Mot de passe:// **->** le mot de passe entré lors de l'installation.
 +
 +<file>
 +login as: root
 +root@192.168.1.52's password: mot-de-passe-de-root
 +Linux proxmox 5.0.15-1-pve #1 SMP PVE 5.0.15-1 (Wed, 03 Jul 2019 10:51:57 +0200) x86_64
 +
 +The programs included with the Debian GNU/Linux system are free software;
 +the exact distribution terms for each program are described in the
 +individual files in /usr/share/doc/*/copyright.
 +
 +Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
 +permitted by applicable law.
 +Last login: Tue Sep 10 16:29:30 2019
 +root@proxmox:~#
 +</file>
 +
 +Affichage des cartes réseau
 +
 +<file>
 +root@proxmox:~# lspci | grep Ethernet
 +
 +02:00.0 Ethernet controller: Broadcom Limited NetXtreme BCM5751 Gigabit Ethernet PCI Express (rev 21)
 +04:00.0 Ethernet controller: Broadcom Limited NetXtreme BCM5722 Gigabit Ethernet PCI Express
 +root@proxmox:~#
 +</file>
 +\\ 
 +
 +===== Inspection de la machine PVE =====
 +
 +==== Stockage ====
 +
 +Le programme d'installation crée un //Groupe de Volumes (VG)// appelé **pve** et des //Volumes Logiques (LV)// supplémentaires appelés: **data**, **root** et **swap**.
 +
 +<WRAP centeralign>[[https://www.packtpub.com/books/content/basic-concepts-proxmox-virtual-environment|https://www.packtpub.com/books/content/basic-concepts-proxmox-virtual-environment]]</WRAP>
 +
 +<WRAP centeralign>**Basic Concepts of Proxmox Virtual Environment**</WRAP>
 +
 +{{ Images_Cahier-201-06-118.png?600 }}
 +\\ 
 +
 +=== Groupe de volumes ===
 +
 +<file>
 +root@proxmox:~# vgs
 +
 +  VG  #PV #LV #SN Attr   VSize   VFree
 +  pve       0 wz--n- <74.03g 9.25g
 +root@proxmox:~#
 +</file>
 +
 +=== Volume physique ===
 +
 +<file>
 +root@proxmox:~# pvs
 +
 +  PV         VG  Fmt  Attr PSize   PFree
 +  /dev/sda3  pve lvm2 a--  <74.03g 9.25g
 +root@proxmox:~#
 +</file>
 +
 +=== Volumes logiques ===
 +
 +<file>
 +root@proxmox:~# lvs
 +
 +  LV   VG  Attr       LSize   Pool Origin Data%  Meta%  Move Log Cpy%Sync Convert
 +  data pve twi-a-tz-- <37.28g             0.00   1.59
 +  root pve -wi-ao----  18.50g
 +  swap pve -wi-ao----   7.00g
 +root@proxmox:~#
 +</file>
 +
 +== Volume data ==
 +
 +Ce volume logique utilise //LVM-thin//, et est utilisé pour stocker les images des machines virtuelles. //LVM-thin// est préférable pour cette tâche, car il offre un support efficace pour les //Instantanés//.
 +
 +== LVM-thin ==
 +
 +Certains systèmes de fichiers dont //Qemu qcow2 (Quick emulator - Quick Copy On Write)//(( [[https://fr.wikipedia.org/wiki/Qcow2|https://fr.wikipedia.org/wiki/Qcow2]].\\ \\ )) supportent //LVM-thin//. Avec //LVM-thin// activé, seuls les blocs que le système invité utilisera réellement seront écrits sur le disque de stockage.
 +
 +Par exemple, vous créez une machine virtuelle avec un disque dur de //32 Go// et, après l'installation du système d'exploitation invité, le système de fichiers de la machine virtuelle contient seulement //3 Go// de données. Dans ce cas, seulement //3 Go// sont écrits sur le disque, même si la //MV// voit un disque dur de //32 Go//. De cette façon, //LVM-thin// vous permet de créer des disques qui sont plus grands que les blocs de stockage actuellement disponibles. Vous pouvez créer de grands disques pour vos machines virtuelles et quand le besoin se présente, ajouter plus de disques à votre stockage sans redimensionner les systèmes de fichiers des machines virtuelles.
 +
 +Tous les types de stockage qui possèdent la fonctionnalité "Instantané" supportent également //LVM-thin//.
 +
 +=== Volume root ===
 +
 +Le volume logique //root// est formaté en //ext4// et contient le système d'exploitation.
 +
 +<file>
 +root@proxmox:~# cat /etc/fstab
 +
 +# <file system> <mount point> <type> <options> <dump> <pass>
 +/dev/pve/root / ext4 errors=remount-ro 0 1
 +/dev/pve/swap none swap sw 0 0
 +proc /proc proc defaults 0 0
 +root@proxmox:~#
 +</file>
 +\\ 
 +
 +===== Communication =====
 +
 +==== Dispositifs réseau ====
 +
 +<file>
 +root@proxmox:~# ip link show
 +
 +1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
 +    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 +2: enp2s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN mode DEFAULT group default qlen 1000
 +    link/ether 00:10:18:27:7d:c9 brd ff:ff:ff:ff:ff:ff
 +3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master vmbr0 state UP mode DEFAULT group default qlen 1000
 +    link/ether 00:26:b9:7a:8e:dc brd ff:ff:ff:ff:ff:ff
 +4: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
 +    link/ether 00:26:b9:7a:8e:dc brd ff:ff:ff:ff:ff:ff
 +root@proxmox:~#
 +</file>
 +
 +//Référence:// [[https://pve.proxmox.com/wiki/Network_Configuration|https://pve.proxmox.com/wiki/Network_Configuration]].
 +
 +=== Noms des interfaces réseau Systemd ===
 +
 +//Systemd// utilise le préfixe de deux caractères **en** pour les périphériques réseau Ethernet. Les caractères suivants dépendent du pilote de périphérique et à quel modèle il correspond.
 +
 +<nowiki>- </nowiki><wrap em>o</wrap><nowiki><index>[n<phys_port_name>|d<dev_port>] — devices on board.</nowiki>\\
 +<nowiki>- </nowiki><wrap em>s</wrap><nowiki><slot>[f<function>][n<phys_port_name>|d<dev_port>] — device by hotplug id.</nowiki>\\
 +<nowiki>- [P<domain>]</nowiki><wrap em>p</wrap><nowiki><bus>s<slot>[f<function>][n<phys_port_name>|d<dev_port>] — devices by bus id.</nowiki>\\
 +<nowiki>- </nowiki><wrap em>x</wrap><nowiki><MAC> — device by MAC address.</nowiki>
 +
 +
 +Les modèles les plus courants sont:
 +
 +**enp2s0** — est la carte réseau sur pcibus **2** slot **0**.\\ 
 +**eno1** — est la première carte réseau embarquée.
 +
 +Affichage des cartes réseau de notre serveur.
 +
 +<file>
 +root@proxmox:~# lspci | grep Ethernet
 +
 +02:00.0 Ethernet controller: Broadcom Limited NetXtreme BCM5751 Gigabit Ethernet PCI Express (rev 21)
 +04:00.0 Ethernet controller: Broadcom Limited NetXtreme BCM5722 Gigabit Ethernet PCI Express
 +root@proxmox:~#
 +</file>
 +
 +<file>
 +root@proxmox:~# cat /proc/net/dev
 +
 +Inter-|   Receive                                                |  Transmit
 + face |bytes    packets errs drop fifo frame compressed multicast|bytes    packets errs drop fifo colls carrier compressed
 +    lo:                0    0    0              0                0          0    0    0                    0
 + vmbr0:   58716     889    0    0    0              0            34589     195    0    0    0                    0
 +  eno1:   74708     890    0    2    0              0       671    35831     194    0    0    0                    0
 +enp2s0:                0    0    0              0                0          0    0    0                    0
 +root@proxmox:~#
 +</file>
 +
 +==== Adresses ====
 +
 +<file>
 +root@proxmox:~# ip address show
 +
 +1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
 +    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 +    inet 127.0.0.1/8 scope host lo
 +       valid_lft forever preferred_lft forever
 +    inet6 ::1/128 scope host
 +       valid_lft forever preferred_lft forever
 +2: enp2s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
 +    link/ether 00:10:18:27:7d:c9 brd ff:ff:ff:ff:ff:ff
 +3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master vmbr0 state UP group default qlen 1000
 +    link/ether 00:26:b9:7a:8e:dc brd ff:ff:ff:ff:ff:ff
 +4: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
 +    link/ether 00:26:b9:7a:8e:dc brd ff:ff:ff:ff:ff:ff
 +    inet 192.168.1.52/24 brd 192.168.1.255 scope global vmbr0
 +       valid_lft forever preferred_lft forever
 +    inet6 fe80::226:b9ff:fe7a:8edc/64 scope link
 +       valid_lft forever preferred_lft forever
 +root@proxmox:~#
 +</file>
 +
 +{{Images_icone-201-003_Note.png?25}} Le dispositif **vmbr0** prend l'adresse //MAC// du dispositif **eno1**.
 +\\ 
 +
 +==== Vérification de la connexion Internet ====
 +
 +<file>
 +root@proxmox:~# ping -c3 google.com
 +
 +PING google.com (172.217.1.14) 56(84) bytes of data.
 +64 bytes from iad23s25-in-f14.1e100.net (172.217.1.14): icmp_seq=1 ttl=57 time=12.0 ms
 +64 bytes from iad23s25-in-f14.1e100.net (172.217.1.14): icmp_seq=2 ttl=57 time=12.0 ms
 +64 bytes from iad23s25-in-f14.1e100.net (172.217.1.14): icmp_seq=3 ttl=57 time=11.8 ms
 +
 +--- google.com ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 5ms
 +rtt min/avg/max/mdev = 11.755/11.921/12.005/0.117 ms
 +root@proxmox:~#
 +</file>
 +
 +===== Performance de l'hôte =====
 +
 +<file>
 +root@proxmox:~# pveperf
 +
 +CPU BOGOMIPS:      40431.68
 +REGEX/SECOND:      1315068
 +HD SIZE:           18.08 GB (/dev/mapper/pve-root)
 +BUFFERED READS:    49.15 MB/sec
 +AVERAGE SEEK TIME: 17.58 ms
 +FSYNCS/SECOND:     12.95
 +DNS EXT:           37.70 ms
 +DNS INT:           20.38 ms (micronator-dev.org)
 +root@proxmox:~#
 +</file>
 +
 +==== Souscription ====
 +
 +<file>
 +root@proxmox:~# pvesubscription get
 +
 +message: There is no subscription key
 +serverid: 95581739A670F04DEA88D32431E185B4
 +status: NotFound
 +url: http://www.proxmox.com/products/proxmox-ve/subscription-service-plans
 +root@proxmox:~#
 +</file>
 +\\ 
 +
 +===== Affichage de l'adresse du gestionnaire PVE =====
 +
 +{{Images_Cahier-101-03-004.png?25}} Par la console du serveur, on peut toujours retrouver l'adresse //IP// du gestionnaire //PVE// en affichant le fichier ''/etc/network/interfaces''.
 +
 +<file>
 +root@proxmox:~# cat /etc/network/interfaces
 +
 +auto lo
 +iface lo inet loopback
 +
 +iface eno1 inet manual
 +
 +auto vmbr0
 +iface vmbr0 inet static
 +        address 192.168.1.52
 +        netmask 255.255.255.0
 +        gateway 192.168.1.1
 +        bridge_ports eno1
 +        bridge_stp off
 +        bridge_fd 0
 +
 +root@proxmox:~#
 +</file>
 +\\ 
 +
 +====== Interface Web ======
 +
 +===== Adresse et navigateur =====
 +
 +Pour savoir l'adresse du gestionnaire //PVE//, voir le paragraphe [[nethserver_201_cahier_06_proxmox#Affichage de l'adresse du gestionnaire PVE]] ou utiliser la commande du paragraphe: [[nethserver_201_cahier_06_proxmox#Adresse du gestionnaire PVE]].
 +
 +{{Images_Cahier-101-03-003.png?22}} Il faut absolument autoriser les <wrap em>témoins</wrap> et <wrap em>JavaScript</wrap> dans le navigateur, sinon l'écran de connexion ne sera pas présenté.
 +
 +===== Connexion =====
 +
 +{{Images_icone-201-003_Note.png?25}} Si vous ne pouvez accéder à l'adresse du gestionnaire, voir la section [[nethserver_201_cahier_06_proxmox#Gestionnaire PVE]].
 +
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On pointe un navigateur vers: **https://192.168.1.52:8006/**\\ 
 +<nowiki>-</nowiki> **Avancé...**
 +|{{ Images_Cahier-201-06-119.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +C'est une nouvelle installation, il faut **Ajouter une exception...**
 +|{{ Images_Cahier-201-06-120.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> **//Language://** **-> French** //(l'écran va se rafraîchir)//.
 +
 +<nowiki>-</nowiki> **//Utilisateur://**  **-> __root__**.\\ 
 +<nowiki>-</nowiki> **//Mot de passe://** **->** celui donné lors de l'installation.\\ 
 +<nowiki>-</nowiki> **Login**.
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-121.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-122.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +On nous suggère de visiter le site [[http://www.proxmox.com/|www.proxmox.com]] pour plus d'informations sur les options de contrat de service.
 +|{{ Images_Cahier-201-06-123.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +<nowiki>-</nowiki> [[https://www.proxmox.com/en/proxmox-ve/pricing|https://www.proxmox.com/en/proxmox-ve/pricing]]\\ 
 +<nowiki>-</nowiki> Sur le site de Proxmox, les différents plans de souscription sont affichés.
 +|{{ Images_Cahier-201-06-125.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +\\ 
 +De retour au //gestionnaire PVE// **-> OK** pour accéder à l'écran de gestion.
 +|{{ Images_Cahier-201-06-124.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\ 
 +
 +==== Fuseau horaire ====
 +
 +Maintenant, nous pouvons ajuster le fuseau horaire à //America/Montreal//.
 +
 +<WRAP column 30%>
 +**Vue Serveur -> Datacenter -> proxmox -> Système -> Temps -> Éditer**.
 +|{{ Images_Cahier-201-06-126.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +Choisir **America/Montreal -> OK**.
 +|{{ Images_Cahier-201-06-127.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +Au retour, on voit que la **//Zone de temps//** est bien //America/Montreal//.
 +|{{ Images_Cahier-201-06-128.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Mise à jour =====
 +
 +Cette mise à jour s'appliquera au système complet.
 +
 +<WRAP column 46%>
 +**Vue Serveur -> Datacenter -> proxmox -> Système -> Mise à jour**.
 +|{{ Images_Cahier-201-06-129.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +**Rafraîchir**.
 +|{{ Images_Cahier-201-06-130.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 40%>
 +\\ 
 +**OK**.
 +|{{ Images_Cahier-201-06-131.png?400 }}|
 +Certains fichiers n'ont pu être téléchargés.
 +
 +{{Images_icone-201-003_Note.png?25}} L'erreur de téléchargement vient du fait que nous n'avons aucun plan de souscription à Proxmox.
 +</WRAP>
 +<WRAP column 52%>
 +Après la recherche de mises à jour dans les référentiels, on ferme la fenêtre.
 +|{{ Images_Cahier-201-06-132.png?600 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +Le chargement du cache s'effectue.
 +|{{ Images_Cahier-201-06-133.png?400 }}|
 +</WRAP>
 +<WRAP column 62%>
 +**Appliquer les mises à jour**.
 +|{{ Images_Cahier-201-06-134.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\ 
 +Pour continuer, entrer  **Y -> [Entrée]**.
 +|{{ Images_Cahier-201-06-135.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On peut ignorer les suggestions.\\ 
 +<nowiki>-</nowiki> Pour quitter, on entre "**q**" sans guillemets.
 +|{{ Images_Cahier-201-06-136.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +On prend le choix par défaut **//UTF-8//** **-> OK**.
 +|{{ Images_Cahier-201-06-137.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +On prend le choix par défaut //**English (US)**// **-> OK**.
 +|{{ Images_Cahier-201-06-138.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +La mise à jour est terminée. On peut fermer cette fenêtre.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-139.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +À l'écran du gestionnaire **-> Rafraîchir**.
 +|{{ Images_Cahier-201-06-140.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +**OK**.
 +|{{ Images_Cahier-201-06-141.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +On peut fermer l'écran surgissant.
 +|{{ Images_Cahier-201-06-143.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> Un rechargement du cache s'effectue.
 +
 +<nowiki>-</nowiki> Il n'y a plus de mises à jour disponibles.
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-143.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-144.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Cartes réseau =====
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> On peut examiner les cartes réseau:\\ 
 +**Vue Stockage -> Datacenter -> proxmox -> Système -> Réseau**.
 +
 +<nowiki>-</nowiki> Les cartes réseau ont été correctement détectées.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-145.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Souscription =====
 +
 +<WRAP column 30%>
 +Nous allons désactiver l'affichage de l'écran surgissant **//No valid subscription//**,
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-146.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +On active la variable ''$no<nowiki>_</nowiki>subscription<nowiki>_</nowiki>info'' dans le fichier ''Subscription.pm'' et en redémarrant ''pveproxy.service''.
 +
 +<file>
 +root@pve:~# sed -i.bak 's/NotFound/Active/g' /usr/share/perl5/PVE/API2/Subscription.pm &&  systemctl restart pveproxy.service
 +
 +root@pve:~#
 +</file>
 +
 +On vérifie que le statut de la variable est à la valeur ''Active''.
 +
 +<file>
 +root@pve:~# cat /usr/share/perl5/PVE/API2/Subscription.pm | grep -C 1 "Active"
 +
 +    return $info if $info->{status} ne 'Active';
 +
 +--
 +            my $no_subscription_info = {
 +                status => "Active",
 +                message => "There is no subscription key",
 +--
 +
 +        if (!$param->{force} && $info->{status} eq 'Active') {
 +            my $age = time() -  $info->{checktime};
 +root@pve:~#
 +</file>
 +
 +On redémarre les services.
 +
 +<file>
 +root@pve:~# service pvestatd restart
 +
 +root@pve:~#
 +</file>
 +
 +<file>
 +root@pve:~# service pvedaemon restart
 +
 +root@pve:~#
 +</file>
 +
 +<WRAP centeralign>**Tout fonctionne correctement et notre serveur physique est à jour.**</WRAP>
 +\\ 
 +
 +====== Certificat Let's Encrypt ======
 +
 +Voir le chapitre [[nethserver_101_cahier_04_local_certificat_let_encrypt#let_s_encrypt|Certificat TLS/SSL Let's Encrypt]] dans le **Cahier-04:** //NethServer LOCAL & Certificat Let's Encrypt// du "Cours NehServer-101".
 +
 +===== Ajout des nouveaux CNAME chez Cloudflare.com =====
 +
 +<WRAP column 20%>
 +==== proxmox ====
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-147.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 20%>
 +==== www.proxmox ====
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-148.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 20%>
 +<nowiki>-</nowiki> On vérifie.
 +
 +<nowiki>-</nowiki> On se déconnecte de //Cloudflare//.
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-149.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Installation du script acme.sh =====
 +
 +==== Utilitaire curl ====
 +
 +Installation de ''curl'' pour le téléchargement du fichier du script ''acme.sh''.
 +
 +<file>
 +root@pve:~# apt-get install -y curl
 +
 +Reading package lists... Done
 +Building dependency tree
 +Reading state information... Done
 +The following additional packages will be installed:
 +  libcurl4
 +The following NEW packages will be installed:
 +  curl libcurl4
 +0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
 +Need to get 596 kB of archives.
 +After this operation, 1,123 kB of additional disk space will be used.
 +Get:1 http://ftp.ca.debian.org/debian buster/main amd64 libcurl4 amd64 7.64.0-4 [332 kB]
 +Get:2 http://ftp.ca.debian.org/debian buster/main amd64 curl amd64 7.64.0-4 [264 kB]
 +Fetched 596 kB in 0s (1,247 kB/s)
 +Selecting previously unselected package libcurl4:amd64.
 +(Reading database ... 43351 files and directories currently installed.)
 +Preparing to unpack .../libcurl4_7.64.0-4_amd64.deb ...
 +Unpacking libcurl4:amd64 (7.64.0-4) ...
 +Selecting previously unselected package curl.
 +Preparing to unpack .../curl_7.64.0-4_amd64.deb ...
 +Unpacking curl (7.64.0-4) ...
 +Setting up libcurl4:amd64 (7.64.0-4) ...
 +Setting up curl (7.64.0-4) ...
 +Processing triggers for man-db (2.8.5-2) ...
 +Processing triggers for libc-bin (2.28-10) ...
 +root@pve:~#
 +</file>
 +
 +=== Téléchargement du fichier du script ===
 +
 +<file>
 +root@pve:~# curl https://get.acme.sh | sh
 +
 +  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
 +                                 Dload  Upload   Total   Spent    Left  Speed
 +100   705    0   705    0       3248      0 --:--:-- --:--:-- --:--:--  3248
 +  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
 +                                 Dload  Upload   Total   Spent    Left  Speed
 +100  186k  100  186k    0       707k      0 --:--:-- --:--:-- --:--:--  707k
 +[Tue 10 Sep 2019 06:36:41 PM EDT] Installing from online archive.
 +[Tue 10 Sep 2019 06:36:41 PM EDT] Downloading https://github.com/Neilpang/acme.sh/archive/master.tar.gz
 +[Tue 10 Sep 2019 06:36:41 PM EDT] Extracting master.tar.gz
 +[Tue 10 Sep 2019 06:36:41 PM EDT] Installing to /root/.acme.sh
 +[Tue 10 Sep 2019 06:36:41 PM EDT] Installed to /root/.acme.sh/acme.sh
 +[Tue 10 Sep 2019 06:36:41 PM EDT] Installing alias to '/root/.bashrc'
 +[Tue 10 Sep 2019 06:36:41 PM EDT] OK, Close and reopen your terminal to start using acme.sh
 +[Tue 10 Sep 2019 06:36:41 PM EDT] Installing cron job
 +no crontab for root
 +no crontab for root
 +[Tue 10 Sep 2019 06:36:41 PM EDT] Good, bash is found, so change the shebang to use bash as preferred.
 +[Tue 10 Sep 2019 06:36:42 PM EDT] OK
 +[Tue 10 Sep 2019 06:36:42 PM EDT] Install success!
 +root@pve:~#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +root@pve:~# ls -als
 +
 +total 40
 +4 drwx------  5 root root 4096 Sep 10 18:36 .
 +4 drwxr-xr-x 18 root root 4096 Sep 10 17:02 ..
 +4 drwx------  5 root root 4096 Sep 10 18:36 .acme.sh
 +4 -rw-------  1 root root   16 Sep 10 16:29 .bash_history
 +4 -rw-r--r--  1 root root  601 Sep 10 18:36 .bashrc
 +4 -rw-r--r--  1 root root   25 Sep 10 16:28 .forward
 +4 drwx------  3 root root 4096 Sep 10 16:29 .gnupg
 +4 -rw-r--r--  1 root root  148 Aug 17  2015 .profile
 +4 -rw-------  1 root root 1024 Sep 10 16:31 .rnd
 +root@pve:~#
 +</file>
 +
 +===== Variables d'environnement =====
 +
 +On doit définir certaines variables d’environnement correspondant à nos informations d’identification et à notre validateur //DNS// c.-à-d. //Cloudflare//.\\ 
 +{{Images_Cahier-101-03-003.png?22}} C’est ici que vous devrez effectuer des ajustements nécessaires si vous utilisez un autre serveur de noms que //Cloudflare// - pour plus de détails, voir ce lien pour la documentation du script ''acme.sh'': [[https://github.com/Neilpang/acme.sh/wiki/dnsapi|https://github.com/Neilpang/acme.sh/wiki/dnsapi]].\\ 
 +{{Images_Cahier-101-03-006.png?25}} L'exemple ci-dessous est celui d'une installation utilisant le serveur de noms //Cloudflare//.
 +
 +On exporte, dans l'environnement présentement en mémoire, notre **clé API Globale** de //Cloudflare//.
 +
 +<file>
 +[root@tchana ~]# export CF_Key="VotreCléGlobaleDeCloudflare"
 +
 +[root@tchana ~]#
 +</file>
 +
 +On exporte notre adresse courriel utilisée pour notre enregistrement chez //Cloudflare//.
 +
 +<file>
 +[root@tchana ~]# export CF_Email="VotreAdresseCourrielDEnregistrementChezCloudflare"
 +
 +[root@tchana ~]#
 +</file>
 +
 +On vérifie les exportations.
 +
 +<file>
 +[root@tchana ~]# env | grep -i CF_
 +
 +CF_Email= VotreAdresseCourrielDEnregistrementChezCloudflare
 +CF_Key= VotreCléGlobaleDeCloudflare
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_Cahier-101-03-006.png?25}} {{Images_Cahier-101-03-003.png?22}} <wrap em>Si vous réamorcez</wrap> le //Serveur PVE// __avant la demande d'un certificat__, vous perdez ces exportations. Il vous faudra alors les refaire.
 +
 +===== Demande d'un certificat de test =====
 +
 +<file>
 +[root@tchana ~]# /root/.acme.sh/acme.sh                                   \
 +                      --issue                                             \
 +                      --dns dns_cf                                        \
 +                      -d proxmox.micronator-dev.org                       \
 +                      -d www.proxmox.micronator-dev.org                   \
 +                      --accountemail "michelandre@micronator.org"         \
 +                      --keypath /etc/pve/local/pveproxy-ssl.key           \
 +                      --fullchainpath /etc/pve/local/pveproxy-ssl.pem     \
 +                      --reloadcmd "systemctl restart pveproxy"            \
 +                      --log /root/.acme.sh/acme.sh.log                    \
 +                      --test                                              \
 +                      --force 
 +
 +[Tue 10 Sep 2019 06:39:16 PM EDT] Using stage ACME_DIRECTORY: https://acme-staging-v02.api.letsencrypt.org/directory
 +[Tue 10 Sep 2019 06:39:17 PM EDT] Create account key ok.
 +[Tue 10 Sep 2019 06:39:17 PM EDT] Registering account
 +[Tue 10 Sep 2019 06:39:18 PM EDT] Registered
 +[Tue 10 Sep 2019 06:39:18 PM EDT] ACCOUNT_THUMBPRINT='DhfgmCkjdV_zUAumSuOREjUR1lNr-QYIAqA5s1b6plI'
 +[Tue 10 Sep 2019 06:39:18 PM EDT] Creating domain key
 +[Tue 10 Sep 2019 06:39:18 PM EDT] The domain key is here: /root/.acme.sh/proxmox.micronator-dev.org/proxmox.micronator-dev.org.key
 +[Tue 10 Sep 2019 06:39:18 PM EDT] Multi domain='DNS:proxmox.micronator-dev.org,DNS:www.proxmox.micronator-dev.org'
 +[Tue 10 Sep 2019 06:39:18 PM EDT] Getting domain auth token for each domain
 +...
 +[Tue 10 Sep 2019 06:39:19 PM EDT] Getting webroot for domain='proxmox.micronator-dev.org'
 +[Tue 10 Sep 2019 06:39:19 PM EDT] Getting webroot for domain='www.proxmox.micronator-dev.org'
 +...
 +[Tue 10 Sep 2019 06:39:48 PM EDT] Verifying: proxmox.micronator-dev.org
 +[Tue 10 Sep 2019 06:39:50 PM EDT] Success
 +[Tue 10 Sep 2019 06:39:50 PM EDT] Verifying: www.proxmox.micronator-dev.org
 +[Tue 10 Sep 2019 06:39:53 PM EDT] Success
 +...
 +[Tue 10 Sep 2019 06:39:57 PM EDT] Download cert, Le_LinkCert: https://acme-staging-v02.api.letsencrypt.org/acme/cert/fac5e54195ddd18b976e9b2715f5a1f9be76
 +[Tue 10 Sep 2019 06:39:58 PM EDT] Cert success.
 +-----BEGIN CERTIFICATE-----
 +MIIFbjCCBFagAwIBAgITAPrF5UGV3dGLl26bJxX1ofm+djANBgkqhkiG9w0BAQsF
 +
 +5bQthGGYwsd5EHlMVFXCEYP4wuUe2eicxUr/NCE6JqbqI3sTlTjvtQchkuLSZ2rF
 +qME=
 +-----END CERTIFICATE-----
 +[Tue 10 Sep 2019 06:39:58 PM EDT] Your cert is in  /root/.acme.sh/proxmox.micronator-dev.org/proxmox.micronator-dev.org.cer
 +[Tue 10 Sep 2019 06:39:58 PM EDT] Your cert key is in  /root/.acme.sh/proxmox.micronator-dev.org/proxmox.micronator-dev.org.key
 +[Tue 10 Sep 2019 06:39:58 PM EDT] The intermediate CA cert is in  /root/.acme.sh/proxmox.micronator-dev.org/ca.cer
 +[Tue 10 Sep 2019 06:39:58 PM EDT] And the full chain certs is there:  /root/.acme.sh/proxmox.micronator-dev.org/fullchain.cer
 +[Tue 10 Sep 2019 06:39:58 PM EDT] Installing key to:/etc/pve/local/pveproxy-ssl.key
 +chmod: changing permissions of '/etc/pve/local/pveproxy-ssl.key': Operation not permitted
 +[Tue 10 Sep 2019 06:39:58 PM EDT] Installing full chain to:/etc/pve/local/pveproxy-ssl.pem
 +[Tue 10 Sep 2019 06:39:58 PM EDT] Run reload cmd: systemctl restart pveproxy
 +[Tue 10 Sep 2019 06:40:04 PM EDT] Reload success
 +root@pve:~#
 +</file>
 +
 +===== Demande d'un certificat officiel =====
 +
 +On __force__ notre première demande de certificat officiel //Let's Encrypt//.
 +
 +<file>
 +[root@tchana ~]# /root/.acme.sh/acme.sh                                   \
 +                      --issue                                             \
 +                      --dns dns_cf                                        \
 +                      -d proxmox.micronator-dev.org                       \
 +                      -d www.proxmox.micronator-dev.org                   \
 +                      --accountemail "michelandre@micronator.org"         \
 +                      --keypath /etc/pve/local/pveproxy-ssl.key           \
 +                      --fullchainpath /etc/pve/local/pveproxy-ssl.pem     \
 +                      --reloadcmd "systemctl restart pveproxy"            \
 +                      --log /root/.acme.sh/acme.sh.log                    \
 +                      --force
 +
 +[Tue 10 Sep 2019 06:44:54 PM EDT] Create account key ok.
 +[Tue 10 Sep 2019 06:44:54 PM EDT] Registering account
 +[Tue 10 Sep 2019 06:44:55 PM EDT] Registered
 +[Tue 10 Sep 2019 06:44:55 PM EDT] ACCOUNT_THUMBPRINT='hZTl7u8PJriLTr_yJTA9p6nGgXTYDls5i3QWO0TGpWs'
 +[Tue 10 Sep 2019 06:44:55 PM EDT] Multi domain='DNS:proxmox.micronator-dev.org,DNS:www.proxmox.micronator-dev.org'
 +[Tue 10 Sep 2019 06:44:55 PM EDT] Getting domain auth token for each domain
 +[Tue 10 Sep 2019 06:44:56 PM EDT] Getting webroot for domain='proxmox.micronator-dev.org'
 +[Tue 10 Sep 2019 06:44:56 PM EDT] Getting webroot for domain='www.proxmox.micronator-dev.org'
 +...
 +[Tue 10 Sep 2019 06:45:21 PM EDT] Checking proxmox.micronator-dev.org for _acme-challenge.proxmox.micronator-dev.org
 +[Tue 10 Sep 2019 06:45:22 PM EDT] Domain proxmox.micronator-dev.org '_acme-challenge.proxmox.micronator-dev.org' success.
 +[Tue 10 Sep 2019 06:45:22 PM EDT] Checking www.proxmox.micronator-dev.org for _acme-challenge.www.proxmox.micronator-dev.org
 +[Tue 10 Sep 2019 06:45:22 PM EDT] Domain www.proxmox.micronator-dev.org '_acme-challenge.www.proxmox.micronator-dev.org' success.
 +[Tue 10 Sep 2019 06:45:22 PM EDT] All success, let's return
 +[Tue 10 Sep 2019 06:45:22 PM EDT] Verifying: proxmox.micronator-dev.org
 +[Tue 10 Sep 2019 06:45:24 PM EDT] Success
 +[Tue 10 Sep 2019 06:45:24 PM EDT] Verifying: www.proxmox.micronator-dev.org
 +[Tue 10 Sep 2019 06:45:27 PM EDT] Success
 +...
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Download cert, Le_LinkCert: https://acme-v02.api.letsencrypt.org/acme/cert/0425cf1782b6f2ffaaebf72b6df6ad5d93f8
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Cert success.
 +-----BEGIN CERTIFICATE-----
 +MIIFjjCCBHagAwIBAgISBCXPF4K28v+q6/crbfatXZP4MA0GCSqGSIb3DQEBCwUA
 +...
 +EO3jraRnlFx6f9ZrL8PVp48IUG1bph8SYojVGSVqU86tLA==
 +-----END CERTIFICATE-----
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Your cert is in  /root/.acme.sh/proxmox.micronator-dev.org/proxmox.micronator-dev.org.cer
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Your cert key is in  /root/.acme.sh/proxmox.micronator-dev.org/proxmox.micronator-dev.org.key
 +[Tue 10 Sep 2019 06:45:34 PM EDT] The intermediate CA cert is in  /root/.acme.sh/proxmox.micronator-dev.org/ca.cer
 +[Tue 10 Sep 2019 06:45:34 PM EDT] And the full chain certs is there:  /root/.acme.sh/proxmox.micronator-dev.org/fullchain.cer
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Installing key to:/etc/pve/local/pveproxy-ssl.key
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Installing full chain to:/etc/pve/local/pveproxy-ssl.pem
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Run reload cmd: systemctl restart pveproxy
 +[Tue 10 Sep 2019 06:45:39 PM EDT] Reload success
 +root@pve:~#
 +</file>
 +
 +===== Fichier hosts =====
 +
 +<WRAP column 46%>
 +On entre notre nouveau domaine, ses //CNAME// et son adresse //IP// dans le fichier ''hosts'':
 +<WRAP centeralign>
 +''C:\Windows\System32\drivers\etc\hosts''.
 +</WRAP>
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-150.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Vérification du certificat =====
 +
 +<WRAP column 46%>
 +On se rend à la page: 
 +<WRAP centeralign>**https://www.proxmox.micronator-dev.org:8006**.</WRAP>
 +
 +{{Images_icone-201-003_Note.png?25}} Il n'est pas nécessaire d'ajouter une exception pour le certificat, car il a été émis par une autorité de certification reconnue. Le cadenas est __vert__.
 +
 +On clique le **cadenas** pour afficher les informations de la connexion, puis on clique l'icône <wrap em>></wrap>.
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-151.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +**Plus d'informations**.
 +|{{ Images_Cahier-201-06-152.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +Onglet **Sécurité -> Afficher le certificat**.
 +|{{ Images_Cahier-201-06-153.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\ 
 +<nowiki>-</nowiki> Le certificat a été émis par **//Let's Encrypt Authority X3//**.\\ 
 +<nowiki>-</nowiki> On clique l'onglet **Détails**.
 +|{{ Images_Cahier-201-06-154.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On clique **Nom alternatif du sujet du certificat**.\\ 
 +<nowiki>-</nowiki> Tous les //CNAME// sont présents.\\ 
 +<nowiki>-</nowiki> **Fermer** toutes les fenêtres.
 +|{{ Images_Cahier-201-06-155.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Renouvellement =====
 +
 +À chaque jour, une tâche cron vérifie le nombre de jours restant pour la validité. 
 +
 +<file>
 +[root@tchana ~]# crontab -l
 +
 +41 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
 +[root@tchana ~]#
 +</file>
 +
 +Le renouvellement se fera automatiquement lorsqu'il ne restera que **30** jours de validité.
 +\\ 
 +
 +===== Journal =====
 +
 +Nous avons spécifié de créer un journal en utilisant le paramètre ''--log  /root/.acme.sh/acme.sh.log''.
 +
 +On examine les dernières lignes du journal.
 +
 +<file>
 +root@pve:~# tail /root/.acme.sh/acme.sh.log
 +
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Your cert is in  /root/.acme.sh/proxmox.micronator-dev.org/proxmox.micronator-dev.org.cer
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Your cert key is in  /root/.acme.sh/proxmox.micronator-dev.org/proxmox.micronator-dev.org.key
 +[Tue 10 Sep 2019 06:45:34 PM EDT] v2 chain.
 +[Tue 10 Sep 2019 06:45:34 PM EDT] The intermediate CA cert is in  /root/.acme.sh/proxmox.micronator-dev.org/ca.cer
 +[Tue 10 Sep 2019 06:45:34 PM EDT] And the full chain certs is there:  /root/.acme.sh/proxmox.micronator-dev.org/fullchain.cer
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Installing key to:/etc/pve/local/pveproxy-ssl.key
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Installing full chain to:/etc/pve/local/pveproxy-ssl.pem
 +[Tue 10 Sep 2019 06:45:34 PM EDT] Run reload cmd: systemctl restart pveproxy
 +[Tue 10 Sep 2019 06:45:39 PM EDT] Reload success
 +[Tue 10 Sep 2019 06:45:39 PM EDT] _on_issue_success
 +root@pve:~#
 +</file>
 +\\ 
 +
 +===== Propriétés du certificat dans l'interface Web =====
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> **Vue Serveur -> Datacenter -> proxmox -> Système -> Certificats**.
 +
 +<nowiki>-</nowiki> Nous avons forcer notre dernière demande de certificat officiel //Let's Encrypt// le //2019-09-10//.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-156.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP centeralign>**Le certificat officiel Let's Encrypt fonctionne correctement.**</WRAP>
 +\\ 
 +\\ 
 +
 +====== Création d'une machine virtuelle NethServer ======
 +
 +===== Diagramme réseau =====
 +
 +Le //Serveur NethServer// virtuel //(ns-1)// créé dans //PVE// s'intégrera dans le diagramme réseau ci-dessous.
 +
 +{{ Images_Cahier-201-06-157.png?750 }}
 +
 +===== Deuxième carte réseau =====
 +
 +On veut activer et configurer la deuxième carte réseau de notre machine physique //proxmox.micronator-dev.org//.
 +
 +==== Configuration sur le serveur de test pve ====
 +
 +{{Images_Cahier-101-03-004.png?25}} Vu que les manipulations des cartes réseau peuvent se terminer en désastre, on commence par modifier les cartes réseau de notre serveur de test //pve.micronator-dev.org// //(nous avons créé ce serveur PVE pour spécifiquement faire des tests de configuration)//.
 +
 +Lors de la création de la //MV// dans //VirtualBox//, nous avons spécifié deux cartes réseau, mais lors de l'installation et de la configuration de ce système, nous avons seulement configuré la première, la deuxième étant désactivée.
 +
 +<WRAP column 20%>
 +**Vue Serveur -> Datacenter -> pve -> Système -> Réseau pour afficher le statut des cartes réseau**.
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-161.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 35%>
 +Première carte réseau dans //VirtualBox//.
 +|{{ Images_Cahier-201-06-158.png?400 }}|
 +</WRAP>
 +<WRAP column 35%>
 +Deuxième carte réseau dans //VirtualBox//.
 +|{{ Images_Cahier-201-06-159.png?400 }}|
 +</WRAP>
 +<WRAP column 20%>
 +Installation & config.
 +|{{ Images_Cahier-201-06-160.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<file>
 +root@pve:~# ip addr
 +
 +1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
 +    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 +    inet 127.0.0.1/8 scope host lo
 +       valid_lft forever preferred_lft forever
 +    inet6 ::1/128 scope host
 +       valid_lft forever preferred_lft forever
 +2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master vmbr0 state UP group default qlen 1000
 +    link/ether 08:00:27:c8:9c:1c brd ff:ff:ff:ff:ff:ff
 +3: enp0s8: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
 +    link/ether 08:00:27:a5:fc:72 brd ff:ff:ff:ff:ff:ff
 +4: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
 +    link/ether 08:00:27:c8:9c:1c brd ff:ff:ff:ff:ff:ff
 +    inet 192.168.1.44/24 brd 192.168.1.255 scope global vmbr0
 +       valid_lft forever preferred_lft forever
 +    inet6 fe80::a00:27ff:fec8:9c1c/64 scope link
 +       valid_lft forever preferred_lft forever
 +root@pve:~#
 +</file>
 +
 +=== Activation de la deuxième carte réseau ===
 +
 +<WRAP column 30%>
 +\\ 
 +On sélectionne **enp0s8 -> Éditer**.
 +|{{ Images_Cahier-201-06-162.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +On coche **Démarrage automatique -> OK**.
 +|{{ Images_Cahier-201-06-163.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +**Créer -> Linux Bridge**.
 +|{{ Images_Cahier-201-06-164.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> **//IPv4/CDR://** **-> 10.10.10.44/24**.\\ 
 +<nowiki>-</nowiki> **//Ports du bridge://** **-> enp0s8**.
 +|{{ Images_Cahier-201-06-165.png?400 }}|
 +</WRAP>
 +<WRAP column 62%>
 +\\ 
 +//<wrap em>Changements en attente</wrap>// //(__Redémarrez__ le serveur pour appliquer les modifications)//.
 +|{{ Images_Cahier-201-06-166.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +On redémarre le serveur //pve.micronator-dev.org//.
 +
 +<file>
 +root@pve:~# reboot
 +
 +
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +root@pve:~# ip addr
 +
 +1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
 +    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 +    inet 127.0.0.1/8 scope host lo
 +       valid_lft forever preferred_lft forever
 +    inet6 ::1/128 scope host
 +       valid_lft forever preferred_lft forever
 +2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master vmbr0 state UP group default qlen 1000
 +    link/ether 08:00:27:c8:9c:1c brd ff:ff:ff:ff:ff:ff
 +3: enp0s8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master vmbr1 state UP group default qlen 1000
 +    link/ether 08:00:27:a5:fc:72 brd ff:ff:ff:ff:ff:ff
 +4: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
 +    link/ether 08:00:27:c8:9c:1c brd ff:ff:ff:ff:ff:ff
 +    inet 192.168.1.44/24 brd 192.168.1.255 scope global vmbr0
 +       valid_lft forever preferred_lft forever
 +    inet6 fe80::a00:27ff:fec8:9c1c/64 scope link
 +       valid_lft forever preferred_lft forever
 +5: vmbr1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
 +    link/ether 08:00:27:a5:fc:72 brd ff:ff:ff:ff:ff:ff
 +    inet 10.10.10.44/24 brd 10.10.10.255 scope global vmbr1
 +       valid_lft forever preferred_lft forever
 +    inet6 fe80::a00:27ff:fea5:fc72/64 scope link
 +       valid_lft forever preferred_lft forever
 +root@pve:~#
 +</file>
 +
 +La deuxième carte réseau est active, fonctionnelle et est représentée par <wrap em>vmbr1</wrap>.
 +\\ 
 +\\
 +
 +==== Configuration sur le serveur physique proxmox ====
 +
 +Nos tests sont concluants. On peut refaire, sans craintes, les mêmes manipulations sur notre serveur physique //proxmox.micronator-dev.org//.
 +
 +<WRAP column 46%>
 +\\ 
 +\\ 
 +<nowiki>-</nowiki> On sélectionne **enp2s0 -> Éditer**.\\ 
 +<nowiki>-</nowiki> On coche **Démarrage automatique -> OK**.
 +|{{ Images_Cahier-201-06-167.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> **Créer -> Linux Bridge**.\\ 
 +<nowiki>-</nowiki> **//IPv4/CDR://** -> **10.10.10.52/24**.\\ 
 +<nowiki>-</nowiki> **//Ports du bridge://** **-> enp2s0**.\\ 
 +<nowiki>-</nowiki> **Créer**.
 +|{{ Images_Cahier-201-06-168.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 20%>
 +//<wrap em>Changements en attente</wrap>// //(__Redémarrez__ le serveur pour appliquer les modifications)//.
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-169.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP box>
 +<file>
 +--- /etc/network/interfaces 2019-09-12 14:38:45.216731205 -0400
 ++++ /etc/network/interfaces.new 2019-09-12 20:53:41.635509920 -0400
 +@@ -15,6 +15,7 @@
 + auto eno1
 + iface eno1 inet manual
 + 
 ++auto enp2s0
 + iface enp2s0 inet manual
 + 
 + auto vmbr0
 +@@ -26,3 +27,11 @@
 +  bridge-stp off
 +  bridge-fd 0
 + 
 ++auto vmbr1
 ++iface vmbr1 inet static
 ++ address  10.10.10.52
 ++ netmask  24
 ++ bridge-ports enp2s0
 ++ bridge-stp off
 ++ bridge-fd 0
 ++
 +</file>
 +</WRAP>
 +
 +On redémarre le serveur physique //proxmox.micronator-dev.org//.
 +
 +<file>
 +root@proxmox:~# reboot
 +
 +
 +</file>
 +
 +<WRAP column 20%>
 +Après le redémarrage du système //proxmox.micronator-dev.org//.
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-170.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +On vérifie les adresse //IP// de toutes les cartes réseau.
 +
 +<file>
 +root@proxmox:~# ip addr
 +
 +1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
 +    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
 +    inet 127.0.0.1/8 scope host lo
 +       valid_lft forever preferred_lft forever
 +    inet6 ::1/128 scope host
 +       valid_lft forever preferred_lft forever
 +2: enp2s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master vmbr1 state UP group default qlen 1000
 +    link/ether 00:10:18:27:7d:c9 brd ff:ff:ff:ff:ff:ff
 +3: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master vmbr0 state UP group default qlen 1000
 +    link/ether 00:26:b9:7a:8e:dc brd ff:ff:ff:ff:ff:ff
 +4: vmbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
 +    link/ether 00:26:b9:7a:8e:dc brd ff:ff:ff:ff:ff:ff
 +    inet 192.168.1.52/24 brd 192.168.1.255 scope global vmbr0
 +       valid_lft forever preferred_lft forever
 +    inet6 fe80::226:b9ff:fe7a:8edc/64 scope link
 +       valid_lft forever preferred_lft forever
 +5: vmbr1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
 +    link/ether 00:10:18:27:7d:c9 brd ff:ff:ff:ff:ff:ff
 +    inet 10.10.10.52/24 brd 10.10.10.255 scope global vmbr1
 +       valid_lft forever preferred_lft forever
 +    inet6 fe80::210:18ff:fe27:7dc9/64 scope link
 +       valid_lft forever preferred_lft forever
 +root@proxmox:~#
 +</file>
 +\\ 
 +
 +==== Vérification des connexions aux réseaux ====
 +
 +On lance 3 //ping// vers le poste de travail - //192.168.1.81//.
 +
 +<file>
 +root@proxmox:~# ping -c3 192.168.1.81
 +
 +PING 192.168.1.81 (192.168.1.81) 56(84) bytes of data.
 +64 bytes from 192.168.1.81: icmp_seq=1 ttl=128 time=0.764 ms
 +64 bytes from 192.168.1.81: icmp_seq=2 ttl=128 time=0.424 ms
 +64 bytes from 192.168.1.81: icmp_seq=3 ttl=128 time=0.407 ms
 +
 +--- 192.168.1.81 ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 48ms
 +rtt min/avg/max/mdev = 0.407/0.531/0.764/0.166 ms
 +root@proxmox:~#
 +</file>
 +
 +On lance 3 //ping// vers le serveur principal __connecté directement à l'Internet__ - //192.168.1.1//.
 +
 +<file>
 +root@proxmox:~# ping -c3 192.168.1.1
 +
 +PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
 +64 bytes from 192.168.1.1: icmp_seq=1 ttl=64 time=0.902 ms
 +64 bytes from 192.168.1.1: icmp_seq=2 ttl=64 time=0.548 ms
 +64 bytes from 192.168.1.1: icmp_seq=3 ttl=64 time=0.441 ms
 +
 +--- 192.168.1.1 ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 52ms
 +rtt min/avg/max/mdev = 0.441/0.630/0.902/0.198 ms
 +root@proxmox:~#
 +</file> 
 +
 +On lance 3 //ping// vers //google.com//.
 +
 +<file>
 +root@proxmox:~# ping -c3 google.com
 +
 +PING google.com (172.217.0.238) 56(84) bytes of data.
 +64 bytes from yyz10s03-in-f14.1e100.net (172.217.0.238): icmp_seq=1 ttl=57 time=11.6 ms
 +64 bytes from yyz10s03-in-f14.1e100.net (172.217.0.238): icmp_seq=2 ttl=57 time=11.8 ms
 +64 bytes from yyz10s03-in-f14.1e100.net (172.217.0.238): icmp_seq=3 ttl=57 time=12.2 ms
 +
 +--- google.com ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 6ms
 +rtt min/avg/max/mdev = 11.640/11.880/12.153/0.228 ms
 +root@proxmox:~#
 +</file>
 +
 +On lance 3 //ping// vers le serveur //<wrap em>pve</wrap> - 192.168.1.44//.
 +
 +<file>
 +root@proxmox:~# ping -c3 192.168.1.44
 +
 +PING 192.168.1.44 (192.168.1.44) 56(84) bytes of data.
 +64 bytes from 192.168.1.44: icmp_seq=1 ttl=64 time=1.48 ms
 +64 bytes from 192.168.1.44: icmp_seq=2 ttl=64 time=2.12 ms
 +64 bytes from 192.168.1.44: icmp_seq=3 ttl=64 time=0.619 ms
 +
 +--- 192.168.1.44 ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 5ms
 +rtt min/avg/max/mdev = 0.619/1.404/2.117/0.613 ms
 +root@proxmox:~#
 +</file>
 +
 +On vérifie le réseau //10.10.10.0/24//.
 +
 +<file>
 +root@proxmox:~# ping -c3 10.10.10.81
 +
 +PING 10.10.10.81 (10.10.10.81) 56(84) bytes of data.
 +64 bytes from 10.10.10.81: icmp_seq=1 ttl=128 time=3.04 ms
 +64 bytes from 10.10.10.81: icmp_seq=2 ttl=128 time=0.496 ms
 +64 bytes from 10.10.10.81: icmp_seq=3 ttl=128 time=0.414 ms
 +
 +--- 10.10.10.81 ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 29ms
 +rtt min/avg/max/mdev = 0.414/1.315/3.037/1.218 ms
 +root@proxmox:~#
 +</file>
 +
 +<file>
 +root@proxmox:~# ping -c3 10.10.10.44
 +
 +PING 10.10.10.44 (10.10.10.44) 56(84) bytes of data.
 +64 bytes from 10.10.10.44: icmp_seq=1 ttl=64 time=0.661 ms
 +64 bytes from 10.10.10.44: icmp_seq=2 ttl=64 time=0.617 ms
 +64 bytes from 10.10.10.44: icmp_seq=3 ttl=64 time=0.669 ms
 +
 +--- 10.10.10.44 ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 53ms
 +rtt min/avg/max/mdev = 0.617/0.649/0.669/0.022 ms
 +root@proxmox:~#
 +</file>
 +
 +On vérifie si le serveur //<wrap em>pve</wrap>// peut communiquer avec le serveur //<wrap em>proxmox</wrap>//.
 +
 +<file>
 +root@pve:~# ping -c3 192.168.1.52
 +
 +PING 192.168.1.52 (192.168.1.52) 56(84) bytes of data.
 +64 bytes from 192.168.1.52: icmp_seq=1 ttl=64 time=1.09 ms
 +64 bytes from 192.168.1.52: icmp_seq=2 ttl=64 time=1.27 ms
 +64 bytes from 192.168.1.52: icmp_seq=3 ttl=64 time=1.24 ms
 +
 +--- 192.168.1.52 ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 9ms
 +rtt min/avg/max/mdev = 1.088/1.200/1.271/0.080 ms
 +root@pve:~#
 +</file>
 +
 +<file>
 +root@pve:~# ping -c3 10.10.10.52
 +
 +PING 10.10.10.52 (10.10.10.52) 56(84) bytes of data.
 +64 bytes from 10.10.10.52: icmp_seq=1 ttl=64 time=0.988 ms
 +64 bytes from 10.10.10.52: icmp_seq=2 ttl=64 time=1.16 ms
 +64 bytes from 10.10.10.52: icmp_seq=3 ttl=64 time=1.05 ms
 +
 +--- 10.10.10.52 ping statistics ---
 +3 packets transmitted, 3 received, 0% packet loss, time 6ms
 +rtt min/avg/max/mdev = 0.988/1.066/1.158/0.079 ms
 +root@pve:~#
 +</file>
 +
 +<WRAP centeralign>**La deuxième carte réseau est activée, configurée et fonctionne correctement.**</WRAP>
 +\\ 
 +
 +===== Téléversement de l'ISO NethServer dans l'environnement PVE =====
 +
 +<WRAP column 30%>
 +**Vue Serveur -> Datacenter -> proxmox -> local (proxmox) -> Contenu -> Upload**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-171.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 35%>
 +**Choisir fichier**.
 +|{{ Images_Cahier-201-06-172.png?400 }}|
 +</WRAP>
 +<WRAP column 57%>
 +Sélectionner le **fichier ISO -> Ouvrir**.
 +|{{ Images_Cahier-201-06-173.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +**Upload**.
 +|{{ Images_Cahier-201-06-175.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +Le fichier //ISO// se téléverse //(peut prendre un certain temps)//.
 +|{{ Images_Cahier-201-06-176.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +Le fichier //ISO// pour l'installation d'un //Serveur NethServer// est maintenant dans l'environnement //PVE//.
 +
 +<WRAP column 30%>
 +{{Images_Cahier-101-03-004.png?25}} Si la taille du fichier indique une grandeur moindre, simplement faire un rafraîchissement de la page du fureteur.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-177.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +==== Vérification par l'interface Web ====
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> **Vue par pools -> Datacenter -> Stockage**.
 +
 +<nowiki>-</nowiki> On voit que le fichier //ISO// est emmagasiné dans le chemin ''/var/lib/vz''.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-178.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +==== Vérification par WinSCP ====
 +
 +On crée une nouvelle connexion dans //WinSCP// pour accéder au serveur //proxmox//.
 +
 +<WRAP column 30%>
 +On entre les informations demandées **-> Sauver...**
 +|{{ Images_Cahier-201-06-179.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +On entre un **nom pour cette connexion -> OK**.
 +|{{ Images_Cahier-201-06-180.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +**Connexion ->** on accepte le certificat.
 +|{{ Images_Cahier-201-06-181.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +\\ 
 +On entre le **mot de passe de __root__ -> OK**.
 +|{{ Images_Cahier-201-06-182.png?400 }}|
 +</WRAP>
 +<WRAP column 62%>
 +<nowiki>-</nowiki> On se rend dans le répertoire ''/var/lib/vz/template/iso''.\\ 
 +<nowiki>-</nowiki> Le fichier //ISO// pour le //Serveur NethServer// s'y trouve.
 +|{{ Images_Cahier-201-06-183.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Création de la machine virtuelle NethServer =====
 +
 +==== Paramètres de la machine virtuelle ====
 +
 +  - //Nom de la machine virtuelle:// **-> NethServer-7.6.1810**.
 +  - //Nom du serveur virtuel:// **-> ns-1**.
 +  - //Le nom complet FQDN:// **-> ns1.micronator-dev.org**.
 +  - //Mémoire:// **-> 4096 MB**.
 +  - //Disque:// **-> 8 GB**.
 +  - //IP (réseau local):// **-> 192.168.1.11 /  Masque: 255.255.255.0**.
 +  - //IP (réseau externe):// **-> 10.10.10.11 /  Masque: 255.255.255.0**.
 +  - //Passerelle:// **-> 192.168.1.1**.
 +
 +==== Création de la machine virtuelle ====
 +
 +<WRAP column 20%>
 +On clique  **Créer VM**.
 +</WRAP>
 +<WRAP column 72%>
 +|{{ Images_Cahier-201-06-184.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +Onglet **Général -> NethServer-7.6.1810**.
 +|{{ Images_Cahier-201-06-185.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +Onglet **OS -> on sélectionne l'ISO NethServer**.
 +|{{ Images_Cahier-201-06-186.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 62%>
 +{{Images_Cahier-101-03-006.png?25}} Si le nombre de //CPU// alloués à la machine virtuelle //(ex: 4)// dépasse le\\ nombre de //CPU// de l'hôte //(ex: 2)//, vous recevrez l'erreur ci-contre.
 +
 +{{Images_icone-201-003_Note.png?25}} Dans notre cas, nous avons 4 coeurs avec 2 //CPU///coeur = 8 CPU.
 +</WRAP>
 +<WRAP column 30%>
 +|{{ Images_Cahier-201-06-187.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +\\ 
 +\\ 
 +Onglet **Système ->** on coche **Agent Qemu**.
 +|{{ Images_Cahier-201-06-188.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> Onglet **Disque Dur**.\\ 
 +<nowiki>-</nowiki> **//Bus/Device// ->** **//VirtIO//**(( **VIRTIO** est une abréviation pour //Virtual Input-Output//, que l'on pourrait traduire en français par //Entrées-Sorties Virtuelles//.\\ //Virtio// est une interface de programmation du Noyau Linux utile aux machines virtuelles.\\ //Problème//\\ Les machines virtuelles, pour des raisons de performance, tendent de plus en plus à devenir des hyperviseurs afin d'accélérer le transit des données entre l'hôte et les invités en présentant au système d'exploitation invité un matériel virtuel nécessitant un pilote spécifique. Ceci contrairement aux machines virtuelles classiques qui simulent la présence d'un matériel existant réellement, généralement répandu, pour lequel le système invité a déjà un pilote.\\ La multiplication des hyperviseurs a entraîné une multiplication dans les mêmes proportions des pilotes nécessaires, des pilotes qui, sous Linux, devaient être adaptés à chaque version du noyau. //Virtio// tente de répondre à ce problème en mettant en œuvre directement dans la branche officielle du noyau Linux une interface de programmation dédiée aux pilotes de périphériques de machines virtuelles.\\ //Fonctionnement//\\ L'interface de programmation de //Virtio// est très minimaliste, toutes les communications entre l'hyperviseur et le noyau invité se font au travers d'une file d'attente //FIFO1//. Des pilotes, eux aussi présents dans le noyau, se basent sur cette interface; il existe à l'heure actuelle des pilotes pour une carte réseau et un contrôleur de disques, utilisés par //KVM//. Les développeurs de //KVM// ont également écrit un pilote réseau pour Microsoft Windows XP et 2000 mettant en œuvre //Virtio//.\\ //Référence:// [[https://fr.wikipedia.org/wiki/Virtio|https://fr.wikipedia.org/wiki/Virtio]].\\ \\ )) **//Block//** est plus rapide.\\ 
 +<nowiki>-</nowiki> **//Taille du disque (GiB)://** **-> 8**.
 +|{{ Images_Cahier-201-06-189.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +<nowiki>-</nowiki> Onglet **CPU -> //Sockets://  2 -> //Coeurs://  2**.\\ 
 +<nowiki>-</nowiki> Donne un total de __4 coeurs__.
 +|{{ Images_Cahier-201-06-190.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +Onglet **Mémoire ->** **//Mémoire (MiB)://** **-> 4096**.
 +|{{ Images_Cahier-201-06-191.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +Onglet** Réseau ->** on prend les défauts surtout pour **//Modèle://** **VirtIO (Paravirtualisé**(( **Paravirtualisation:** En informatique, la paravirtualisation est une technique de virtualisation qui présente une interface logicielle, similaire à du matériel réel, à une machine virtuelle, mais optimisée pour ce type de fonctionnement, contrairement à l'émulation d'un périphérique matériel existant qui peut s'avérer laborieuse et surtout lente.\\ //Référence:// [[https://fr.wikipedia.org/wiki/Paravirtualisation|https://fr.wikipedia.org/wiki/Paravirtualisation]].\\ \\ ))**)**.
 +|{{ Images_Cahier-201-06-192.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> Onglet **Confirmation**.\\
 +<nowiki>-</nowiki> On vérifie **-> Terminé**.
 +|{{ Images_Cahier-201-06-193.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +==== Ajout d'une deuxième carte réseau ====
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> Un //Serveur NethServer// a besoin de __deux cartes réseau__.
 +
 +<nowiki>-</nowiki> **Matériel -> Ajouter -> Carte réseau**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-194.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 46%>
 +<nowiki>-</nowiki> **//Pont://** **-> vmbr1**.\\ 
 +<nowiki>-</nowiki> **//Modèle://** **-> VirtIO (paravirtualisé)**.\\ 
 +<nowiki>-</nowiki> **//Parefeu://** //NethServer// a son propre pare-feu.\\ 
 +<nowiki>-</nowiki> **Ajouter**.
 +|{{ Images_Cahier-201-06-195.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +\\ 
 +\\ 
 +La nouvelle carte réseau a été ajoutée.
 +|{{ Images_Cahier-201-06-196.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Pare-feu =====
 +
 +//Référence:// [[https://pve.proxmox.com/wiki/Firewall|https://pve.proxmox.com/wiki/Firewall]].
 +
 +<WRAP column 46%>
 +**Vue par pools -> Datacenter -> 100 (NethServer-7.6.1810) -> Parefeu -> Options**.
 +
 +//NethServer// possède son propre pare-feu. Il n'est donc pas nécessaire d'utiliser celui de //PVE//.
 +
 +On sélectionne les différentes options **-> Éditer**.
 +
 +**//DHCP//**\\ 
 +{{Images_Cahier-101-03-004.png?25}} On désactive cette option.\\ 
 +{{Images_Cahier-101-03-006.png?25}} Il ne faut surtout pas avoir deux serveurs **DHCP** sur le même segment //IP//.
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-197.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +Les options //NDP// et //Annonce du routeur// sont utilisées par //IPv6//.
 +
 +Par défaut, les machines virtuelles sont autorisées à envoyer des messages de sollicitation d'aiguilleur //(router)// //(pour rechercher un aiguilleur)// et à recevoir des paquets d'annonce d'aiguilleur. Ceci leur permet d'utiliser la configuration automatique sans état //(stateless//(( **Stateless:** Qui ne garde pas de trace d'un contexte lié à un utilisateur.//Note:// Cette expression s'emploie souvent pour qualifier un protocole.\\ //Référence:// [[http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8364596|http://www.granddictionnaire.com/ficheOqlf.aspx?Id_Fiche=8364596]].\\ \\ ))//)//. D'autre part, les ordinateurs virtuels ne peuvent pas s'annoncer eux-mêmes en tant qu'aiguilleur sauf si l'option //Annonce du routeur (radv: 1//(( **radvd: 1:**//(Router Advertisement Daemon, démon d'annonce de routeurs)// est un logiciel //Open Source// qui implémente les annonces lien-local des adresses de routeurs //__IPv6__// et des préfixes de réseau //IPv6// au moyen du protocole //Neighbour Discovery Protocol - (NDP)// conformément à la RFC 24614. Le démon d'annonce de routeurs est utilisé par les administrateurs système dans le cadre de l'auto-configuration sans état des hôtes des réseaux __Internet Protocol version 6__.//\\ Référence://[[https://fr.wikipedia.org/wiki/Radvd|https://fr.wikipedia.org/wiki/Radvd]].\\ \\ ))//)// est définie.
 +\\ 
 +
 +===== Instantané =====
 +
 +<WRAP column 30%>
 +{{Images_Cahier-101-03-004.png?25}} À ce stade-ci, on peut prendre un //Instantané PVE// de la machine virtuelle afin de pouvoir y revenir en cas d'une future erreur de manipulation.
 +
 +**Vue par pool -> Datacenter -> Snapshots -> Créer un snapshot**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-198.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 40%>
 +\\ 
 +\\ 
 +\\ 
 +Caractères permis dans le nom de l'//Instantané//.
 +|{{ Images_Cahier-201-06-199.png?400 }}|
 +</WRAP>
 +<WRAP column 52%>
 +<nowiki>-</nowiki> On entre un nom descriptif.\\ 
 +<nowiki>-</nowiki> On décoche **//Inclure la RAM//**.\\ 
 +<nowiki>-</nowiki> On entre une description plus détaillée.\\ 
 +<nowiki>-</nowiki> **Créer un snapshot**.
 +|{{ Images_Cahier-201-06-200.png?600 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +L'//Instantané// est terminé en seulement quelques secondes.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-201.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +====== Installation de NethServer ======
 +
 +===== Démarrage et installation =====
 +
 +<WRAP column 30%>
 +On amorce la machine virtuelle en cliquant **Démarrer**, puis on ouvre une console en cliquant **Console**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-202.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +\\ 
 +\\ 
 +On presse la clé **[Entrée]** pour lancer l'installation.
 +|{{ Images_Cahier-201-06-203.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +\\ 
 +\\ 
 +**DATE & TIME**.
 +|{{ Images_Cahier-201-06-204.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +<nowiki>-</nowiki> On choisit un **fuseau horaire**, car //Montréal// n'est pas là. Il le sera dans l'interface Web de //NethServer//.\\ 
 +<nowiki>-</nowiki> **Done**.
 +|{{ Images_Cahier-201-06-205.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +**KEYBOARD**.
 +|{{ Images_Cahier-201-06-206.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +On sélectionne le défaut **-> Done**.
 +|{{ Images_Cahier-201-06-207.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +**NETWORK & HOSTNAME**.
 +|{{ Images_Cahier-201-06-208.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +\\ 
 +\\ 
 +On sélectionne la première carte réseau **->** on s'assure qu'elle est active **-> Configure...**
 +|{{ Images_Cahier-201-06-209.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +\\ 
 +<nowiki>-</nowiki> Onglet **General**.\\ 
 +<nowiki>-</nowiki> On coche **Automatically connect to this...**
 +|{{ Images_Cahier-201-06-210.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +Onglet **IPv4 Settings -> Manual -> Add ->** on entre l'**adresse IP**,  le **masque** et l'**IP de la passerelle** //(l'adresse de notre serveur connecté directement à l'Internet)// **->** i.d. pour **//DNS servers// -> Save**.
 +|{{ Images_Cahier-201-06-211.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +\\ 
 +<nowiki>-</nowiki> On sélectionne la deuxième carte réseau.\\ 
 +<nowiki>-</nowiki> On s'assure qu'elle est active.\\ 
 +<nowiki>-</nowiki> **Configure...**
 +|{{ Images_Cahier-201-06-212.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +<nowiki>-</nowiki> Onglet **General**.\\ 
 +<nowiki>-</nowiki> On coche **Automatically connect to this...**
 +|{{ Images_Cahier-201-06-213.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +Onglet **IPv4 Settings -> Manual -> Add ->** on entre l'**adresse IP**, le **masque** et l'**IP de la passerelle** //(l'adresse du serveur proxmox)// **-> Save**.
 +|{{ Images_Cahier-201-06-214.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +**//Host name://** **->** on entre le **FQDN** de notre nouveau serveur //NethServer// **-> Apply -> Done**.
 +|{{ Images_Cahier-201-06-215.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +\\ 
 +**Begin Installation**.
 +|{{ Images_Cahier-201-06-216.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +\\ 
 +**ROOT PASSWORD**.
 +|{{ Images_Cahier-201-06-217.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +On entre un **mot de passe robuste ->** on le confirme **-> Done**.
 +|{{ Images_Cahier-201-06-218.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +\\ 
 +L'installation se poursuit.
 +|{{ Images_Cahier-201-06-219.png?400 }}|
 +</WRAP>
 +<WRAP column 30%>
 +À la fin de l'installation, le serveur réamorce.
 +|{{ Images_Cahier-201-06-220.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\ 
 +
 +===== Première connexion =====
 +
 +<WRAP column 46%>
 +<nowiki>-</nowiki> Les //URL// pour se connecter à l'interface Web sont affichées:
 +<WRAP centeralign>
 +**https://10.10.10.11:980\\ 
 +https://192.168.1.1:980**
 +</WRAP>
 +
 +<nowiki>-</nowiki> On se connecte avec le justificatif de l'utilisateur **__root__**.
 +
 +<nowiki>-</nowiki> On est connecté à la console du serveur.
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-221.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Instantané =====
 +
 +{{Images_Cahier-101-03-004.png?25}} À ce stade-ci, on peut prendre un //Instantané PVE// de la machine virtuelle afin de pouvoir y revenir en cas d'une future erreur de manipulation.
 +
 +<WRAP column 46%>
 +\\ 
 +\\ 
 +**Vue par pool -> Datacenter -> 100 (NethServer-7.6.1810) -> Snapshots -> Créer un snapshot**.
 +|{{ Images_Cahier-201-06-222.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On entre un nom descriptif.\\ 
 +<nowiki>-</nowiki> On décoche **Inclure la RAM**.\\ 
 +<nowiki>-</nowiki> On entre une description plus détaillée.\\ 
 +<nowiki>-</nowiki> **Créer un snapshot**.
 +|{{ Images_Cahier-201-06-223.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +L'//Instantané// est terminé.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-224.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\ 
 +
 +===== Connexion à l'interface Web =====
 +
 +//NethServer// peut être configuré à l'aide de l'interface Web du gestionnaire du serveur.
 +
 +<WRAP column 46%>
 +À partir de notre poste de travail, nous avons besoin d'un navigateur Web tel que //Mozilla Firefox//, //Google Chrome// ou //Safari// pour accéder à l'interface Web à l'aide de l'adresse //(URL)// **https://abcd:980** où **//abcd//** est l'adresse //IP// configurée lors de l'installation du serveur et **//980//** le port utilisé par l'interface Web.
 +
 +<nowiki>-</nowiki> Pour l'instant, on se connecte à l'interface WEB par l'//IP// du réseau LOCAL: **https://192.168.1.11:980**.
 +
 +<nowiki>-</nowiki> **Avancé... -> Accepter le risque et poursuivre**.
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-225.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Configuration initiale de NethServer =====
 +
 +  - **//Nom d'utilisateur par défaut://** **-> __root__**.
 +  - Nous avons déjà choisi un mot de passe lors de l'installation
 +  - Si nous n'avons pas choisi de mot de passe, par défaut il est défini à: <wrap em>Nethesis,1234</wrap>. Attention, ne pas oublier la "virgule".\\ Si le mot de passe de **__root__** n'est pas robuste, modifiez-le dès que possible en choisissant un mot de passe  composé d’une séquence aléatoire de lettres, de chiffres et de symboles.
 +
 +<WRAP column 20%>
 +On se logue avec le nom de l'usager **__root__**.
 +|{{ Images_Cahier-201-06-226.png?400 }}|
 +</WRAP>
 +<WRAP column 72%>
 +\\ 
 +**NEXT**.
 +|{{ Images_Cahier-201-06-227.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +==== Restore configuration ====
 +
 +<nowiki>-</nowiki> On pourrait récupérer la configuration depuis une sauvegarde précédente.\\ 
 +<nowiki>-</nowiki> **Next**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-228.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +==== Set host name ====
 +
 +<nowiki>-</nowiki> Le //FQDN// de notre serveur a été entré lors de l'installation. Ici, on peut le modifier.\\ 
 +<nowiki>-</nowiki> **Next**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-229.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +=== Date and time ===
 +
 +<nowiki>-</nowiki> On choisit le fuseau horaire. Ici, nous avons beaucoup plus de choix que lors de l'installation du serveur.\\ 
 +<nowiki>-</nowiki> **Next**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-230.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +=== SSH ===
 +
 +<nowiki>-</nowiki> On change le port //SSH// de __22__ à <wrap em>2222</wrap> pour dérouter, un peu plus, les intrusions malveillantes.\\ 
 +<nowiki>-</nowiki> **Next**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-230.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +=== Smarthost ===
 +
 +Envoyer les courriels en utilisant un //smarthost//(( **Smarthost:** Un smarthost est un serveur de messagerie via lequel des tiers peuvent envoyer des courriers électroniques et les transférer sur les serveurs de messagerie des destinataires.\\ //Référence//: [[https://en.wikipedia.org/wiki/Smart_host|https://en.wikipedia.org/wiki/Smart_host]].\\ \\ )).\\ 
 +{{Images_Cahier-101-03-003.png?22}} Le serveur tentera d'envoyer les courriels directement à la destination //(recommandé dans la plupart des cas)//. Mais, en choisissant plutôt d'envoyer par un //smarthost//, il essaiera de les transmettre via le serveur //SMTP// du //FAI// //(recommandé en cas de connexion peu fiable ou d'ADSL résidentiel, IP dynamique, etc.)//.
 +
 +<WRAP column 30%>
 +**Next**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-231.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +==== Usage statistics ====
 +
 +<nowiki>-</nowiki> Ces statistique sont utilisées seulement pour connaître le nombre total de //NethServer// installés.\\ 
 +<nowiki>-</nowiki> **Next**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-232.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +==== Review changes ====
 +
 +**Apply**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-233.png?800 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP centeralign>**La configuration initiale du Serveur NethServer est terminée.**</WRAP>
 +\\ 
 +
 +====== Configuration de NethServer ======
 +
 +===== Réseau =====
 +
 +==== Rôles et zones ====
 +
 +Chaque interface réseau a un rôle qui correspond à une zone du pare-feu. Le pare-feu comporte les zones intégrées suivantes, classées de la plus prépondérante à la moins privilégiée:
 +
 +**VERT**: -> réseau LOCAL. Cette zone est considérée comme fiable. Les hôtes de ce réseau peuvent accéder à n’importe quelle autre zone. Les hôtes connectés via //VPN// peuvent être considérés en zone verte.\\ 
 +**BLEU**: -> réseau invité. Les hôtes de ce réseau peuvent accéder aux zones orange et rouge, mais pas à la zone verte.\\ 
 +**ORANGE**: -> réseau //DMZ//. Les hôtes de ce réseau peuvent accéder à la zone rouge, mais pas aux zones verte et bleue.\\ 
 +**ROUGE**: -> réseau externe/Internet. Les hôtes de ce réseau peuvent uniquement accéder à cette zone.
 +
 +Il existe également une zone de pare-feu spéciale qui représente le pare-feu lui-même. Le pare-feu peut accéder à n’importe quelle zone.\\ 
 +Chaque interface réseau, avec un rôle configuré, est une zone du pare-feu. Les rôles sont "mappés" aux zones //Shorewall// comme suit:
 +
 +**vert** -> loc\\ 
 +**rouge** -> net\\ 
 +**bleu** -> bleu\\ 
 +**orange** ->  orang //(dans Shorewall, un nom de zone ne peut dépasser __5 caractères__)//\\ 
 +**pare-feu** ->  FW
 +
 +{{Images_Cahier-101-03-005.png?25}} Les noms personnalisés de zones sont directement "mappés" sur //Shorewall// en respectant la limite de 5 caractères.\\ 
 +{{Images_Cahier-101-03-006.png?25}} Les interfaces rouges peuvent être configurées avec une adresse //IP// statique ou à l'aide de //DHCP//. Toutes les autres interfaces ne peuvent être configurées qu'avec des adresses //IP// statiques.
 +\\ 
 +\\ 
 +
 +===== Connexion Internet =====
 +
 +{{ Images_Cahier-201-06-235.png?600}}
 +Lors de la configuration du poste de travail, nous avons configuré la carte //RJ-45// pour que ce soit elle qui nous connecte à l'internet. Nous lui avons donné l'adresse IP statique //(fixe)// //192.168.1.81// et comme passerelle l'adresse //192.168.1.1//.
 +
 +{{Images_Cahier-101-03-005.png?25}} De plus, nous assumons que c'est le serveur //dorgee.micronator.org// qui sert de serveur //DHCP// et qui fournit dynamiquement les adresses //IP// à tous les autres postes sur le réseau //192.168.1.0/24//.
 +
 +
 +==== Vérification des adresses IP du Serveur NethServer ====
 +
 +<WRAP column 22%>
 +**Configuration  ->  Network**.
 +
 +</WRAP>
 +<WRAP column 70%>
 +|{{ Images_Cahier-201-06-236.png?600 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<nowiki>-</nowiki> Sous //Network//, on voit que le réseau de la carte //eth0// est __vert__ indiquant que c'est un réseau de confiance et implique que quiconque sur le réseau //192.168.1.1/24// peut avoir accès au gestionnaire Web du serveur s'il connaît le mot de passe de **__root__**.
 +
 +<nowiki>-</nowiki> Le réseau de la carte //eth1// est aussi **__vert__** indiquant que c'est aussi un réseau de confiance.
 +
 +=== Carte eth0 ===
 +
 +<WRAP column 60%>
 +|{{ Images_Cahier-201-06-237.png?700 }}|
 +On s'assure que la première carte réseau possède bien l'adresse //192.168.1.11//, que son **//Role//** est //LAN (green)// pour indiquer que c'est elle qui connecte le serveur au réseau LOCAL et que sa passerelle est l'adresse //IP// de notre serveur principal //(directement branché à l'Internet)//, sinon on édite la configuration de cette carte en cliquant **Edit**, à la fin de la ligne sur la capture d'écran ci-dessus.
 +</WRAP>
 +<WRAP column 32%>
 +|{{ Images_Cahier-201-06-238.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +=== Carte eth1 ===
 +
 +{{Images_Cahier-101-03-003.png?22}} On s'assure que la deuxième carte réseau possède bien l'adresse //10.10.10.11// et on la configure pour avoir un  **//Role//** de //<wrap em>DMZ (orange)</wrap>// pour indiquer que c'est elle qui connecte le serveur à l'Internet. On édite la configuration de cette carte en cliquant **Edit**, à la fin de la ligne sur la capture d'écran ci-dessous.
 +
 +<WRAP column 60%>
 +|{{ Images_Cahier-201-06-239.png?700 }}|
 +\\ 
 +
 +Au retour, on vérifie que la carte //eth1// possède bien le rôle de <wrap em>DMZ</wrap>.
 +|{{ Images_Cahier-201-06-240.png?700 }}|
 +</WRAP>
 +<WRAP column 32%>
 +|{{ Images_Cahier-201-06-241.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +==== Serveur DNS ====
 +
 +On clique **DNS servers** et on vérifie que le serveur //DNS// de notre système est bien //192.168.1.1//, l'adresse de notre serveur principal qui est directement branché à l'Internet, __sinon on ajuste__ //-> SUBMIT//.
 +
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-242.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-243.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +<WRAP column 46%>
 +==== Vérification de la communication ====
 +
 +<nowiki>-</nowiki> On crée une nouvelle entrée dans //PuTTY// pour le //Serveur NethServer//. Ici le port est **2222**.
 +
 +<nowiki>-</nowiki> **Open** et on accepte le certificat.
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-244.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +On se connecte en utilisateur **__root__** et le mot de passe qu’on lui a attribué.
 +
 +<file>
 +login as: root
 +root@192.168.1.11's password:mot-de-passe-de-root
 +Last login: Fri Sep 13 17:07:11 2019
 +
 +************ Welcome to NethServer ************
 +
 +This is a NethServer installation.
 +
 +Before editing configuration files, be aware
 +of the automatic events and templates system.
 +
 +
 +          http://docs.nethserver.org
 +
 +***********************************************
 +[root@ns-1 ~]#
 +</file>
 +
 +On affiche la configuration des cartes réseau.
 +
 +<file>
 +[root@ns-1 ~]# ifconfig
 +
 +eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
 +        inet 192.168.1.11  netmask 255.255.255.0  broadcast 192.168.1.255
 +        inet6 fe80::10ac:dcff:fe57:d608  prefixlen 64  scopeid 0x20<link>
 +        ether 12:ac:dc:57:d6:08  txqueuelen 1000  (Ethernet)
 +        RX packets 180905  bytes 233843665 (223.0 MiB)
 +        RX errors 0  dropped 21  overruns 0  frame 0
 +        TX packets 149049  bytes 27381092 (26.1 MiB)
 +        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 +
 +eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
 +        inet 10.10.10.11  netmask 255.255.255.0  broadcast 10.10.10.255
 +        ether 8e:9a:a3:3d:b4:dd  txqueuelen 1000  (Ethernet)
 +        RX packets 7964  bytes 560977 (547.8 KiB)
 +        RX errors 0  dropped 21  overruns 0  frame 0
 +        TX packets 147  bytes 10378 (10.1 KiB)
 +        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 +
 +lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
 +        inet 127.0.0.1  netmask 255.0.0.0
 +        inet6 ::1  prefixlen 128  scopeid 0x10<host>
 +        loop  txqueuelen 1000  (Local Loopback)
 +        RX packets 578  bytes 60489 (59.0 KiB)
 +        RX errors 0  dropped 0  overruns 0  frame 0
 +        TX packets 578  bytes 60489 (59.0 KiB)
 +        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 +
 +[root@ns-1 ~]#
 +</file>
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> Les adresses //IP// sont correctes.
 +
 +<nowiki>-</nowiki> On peut comparer leur adresse //MAC//.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-245.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +On affiche le serveur //DNS//.
 +
 +<file>
 +[root@ns-1 ~]# cat /etc/resolv.conf
 +
 +# ================= DO NOT MODIFY THIS FILE =================
 +#
 +# Manual changes will be lost when this file is regenerated.
 +#
 +# Please read the developer's guide, which is available
 +# at NethServer official site: https://www.nethserver.org
 +#
 +#
 +domain micronator-dev.org
 +search micronator-dev.org
 +
 +# dnsmasq is enabled on this machine:
 +nameserver 127.0.0.1
 +
 +[root@ns-1 ~]#
 +</file>
 +
 +On affiche la table de routage.
 +
 +<file>
 +[root@ns-1 ~]# route
 +
 +Kernel IP routing table
 +Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
 +default         dorgee.micronat 0.0.0.0         UG    0      0        0 eth0
 +10.10.10.0      0.0.0.0         255.255.255.0            0        0 eth1
 +192.168.1.0     0.0.0.0         255.255.255.0            0        0 eth0
 +[root@ns-1 ~]#
 +</file>
 +
 +On lance 2 //ping// vers //google.com// pour vérifier le fonctionnement du //DNS//.
 +
 +<file>
 +[root@tchana ~]# ping -c 2 google.com
 +
 +PING google.com (172.217.164.238) 56(84) bytes of data.
 +64 bytes from yyz12s05-in-f14.1e100.net (172.217.164.238): icmp_seq=1 ttl=57 time=11.9 ms
 +64 bytes from yyz12s05-in-f14.1e100.net (172.217.164.238): icmp_seq=2 ttl=57 time=11.9 ms
 +
 +--- google.com ping statistics ---
 +2 packets transmitted, 2 received, 0% packet loss, time 1001ms
 +rtt min/avg/max/mdev = 11.925/11.962/11.999/0.037 ms
 +[root@tchana ~]#
 +</file>
 +
 +{{Images_Cahier-101-03-006.png?25}} Le domaine //google.com// répond impliquant que le //DNS// a trouvé son adresse //172.217.164.238// et que le serveur-aiguilleur //(192.168.1.1)// fonctionne correctement.
 +
 +===== Test de vitesse =====
 +
 +<WRAP column 30%>
 +<nowiki>-</nowiki> On vérifie que tout fonctionne correctement en lançant un test de vitesse.
 +
 +<nowiki>-</nowiki> **Status -> Diagnostics -> onglet  Speedtest -> SPEEDTEST**.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-246.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Configuration complète du Serveur Nethserver =====
 +
 +Pour la mise à jour, la configuration complète, l'ajout de modules supplémentaires etc., voir le [[nethserver_101_cahier_04_local_certificat_let_encrypt|Cahier-04]]: //NethServer LOCAL & Certificat Let's Encrypt// du "Cours NethServer-101".
 +
 +Appendices du **Cahier-04:** //NethServer LOCAL & Certificat Let's Encrypt// du "Cours NethServer-101".
 +
 +1. Écran conventionnel de démarrage.
 +
 +2. Nom du serveur dans l'écran de connexion à //Webmail//.
 +
 +3. Langue à la console du serveur.
 +
 +4. Langue de l'interface Web.
 +
 +5. Table de mappe de clavier.
 +
 +6. Fermeture automatique de session //(session timeout)//.
 +
 +7. Fuseau horaire.
 +
 +8. Certificat //Let's Encrypt//.
 +
 +9. Changement du mot de passe de **__root__**.
 +
 +10. ERROR Failed to send host log message.
 +
 +11. Martian source.
 +
 +12. Serveur de production
 +
 +<WRAP centeralign>**Le Serveur NethServer est installé et fonctionne correctement.**</WRAP>
 +\\ 
 +
 +===== Virtualisation matérielle KVM =====
 +
 +{{Images_Cahier-101-03-003.png?22}} <wrap em>Si vous êtes sous //VirtualBox//</wrap> et que vous créez une machine virtuelle, il faut, après sa création, désactiver //(mettre à NON)// la **//Virtualisation matérielle KVM//** de cette machine: **Vue serveur -> Datacenter -> pve ->** sélectionner la machine virtuelle **-> Options ->  Virtualisation matérielle KVM ->** décocher **Activé -> OK**.\\ 
 +{{Images_Cahier-101-03-006.png?25}} __Si vous ne désactivez pas cette option, la machine virtuelle ne démarrera pas__.
 +
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-247.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +|{{ Images_Cahier-201-06-248.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +Pour afficher le message d'erreur, cliquer **Erreur: KVM virtualisation co...**
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-249.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +Le message d'erreur s'affiche.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-250.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +====== Instantané PVE d'une machine virtuelle ======
 +
 +<WRAP centeralign><wrap em>Ce chapitre provient de la version 0.0.1 de ce document.</wrap></WRAP>
 +
 +Grâce aux //Instantanés//, vous pouvez enregistrer l'état particulier d'une machine virtuelle à un moment donné pour pouvoir l'utiliser plus tard. Ainsi, après avoir pris un //Instantané//, vous pourrez à n'importe quel moment revenir à cet état, même si la machine virtuelle a été complètement changée ou endommagée.
 +
 +Les //Instantanés// sont particulièrement utiles pour disposer d'un système toujours propre et s'assurer que la machine virtuelle est dépourvue de bogues causés par l'installation de logiciels, virus ou autres.
 +
 +===== Création d'un Instantané d'un Serveur SME =====
 +
 +Maintenant que le //Serveur SME// est fonctionnel, il serait dommage de faire une manipulation quelconque et de ruiner tout le travail qu'on a fait à date.\\ 
 +{{Images_Cahier-101-03-004.png?25}} Si nous prenons un //Instantané// d'une //MV// qui roule, l'//Instantané// peut inclure le contenu de la mémoire, ce qui augmentera la taille de l'Instantané.
 +
 +===== Création d'un Instantané =====
 +
 +On crée notre premier //Instantané// avec la machine en marche.
 +
 +<WRAP column 46%>
 +\\ 
 +\\ 
 +On sélectionne la machine **-> Snapshots -> Créer un snapshot**.
 +|{{ Images_Cahier-201-06-251.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On entre les informations demandées.\\ 
 +<nowiki>-</nowiki> Il n'est pas nécessaire d'inclure la mémoire.\\ 
 +<nowiki>-</nowiki> **Créer un snapshot**.
 +|{{ Images_Cahier-201-06-252.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +Le premier //Instantané// a été créé.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-253.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +On répète l'opération pour avoir quelques //Instantanés//.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-254.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +On crée un //Instantané// avec la machine arrêtée.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-255.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +==== Hiérarchie des Instantanés ====
 +
 +L'//Instantané// apparaîtra dans la liste des //Instantanés//. Sous //Description//, vous verrez apparaître “Vous êtes ici!”, ce qui signifie que l'état actuel de votre machine virtuelle est dérivé de l'//Instantané// précédemment créé; il est basé sur ce dernier.
 +
 +Si, à ce moment-là, vous prenez un autre //Instantané// //n°2// puis un autre //n°3//, chacun d'entre eux sera un //Instantané// dérivé de l'//Instantané// précédent. L'état actuel peut dériver de l'//Instantané// //n°3// qui lui-même dérive du //n°2// qui lui-même dérive du premier.
 +
 +{{Images_Cahier-101-03-006.png?25}} Vous pouvez ainsi créer autant d'//Instantanés// que vous voulez pour créer autant d'états que vous le souhaitez. Mais attention, si on inclut la mémoire, les //Instantanés// utiliseront beaucoup plus d'espace disque.
 +\\ 
 +
 +==== Utiliser les Instantanés ====
 +
 +=== Mise en garde ===
 +
 +Attention, lorsque vous faites un retour sur //Instantané// c'est tout le disque dur //(c.-à.d. le fichier du disque virtuel)// de la machine virtuelle qui est restauré. Autrement dit, si vous aviez créé des documents sur ce disque //(pour une machine virtuelle Windows, si vous avez enregistré vos documents sur le //Bureau// ou dans “Mes Documents”)//, vous ne les retrouverez plus!
 +
 +{{Images_Cahier-101-03-003.png?22}} Pensez donc à enregistrer vos documents ailleurs que sur la machine virtuelle avant de faire un retour sur //Instantané//!
 +\\ 
 +
 +===== Restauration d'un Instantané =====
 +
 +On restaure le deuxième //Instantané//.
 +
 +<WRAP column 55%>
 +<nowiki>-</nowiki> On sélectionne le deuxième //Instantané//.\\ 
 +<nowiki>-</nowiki> **Restauration**.
 +|{{ Images_Cahier-201-06-256.png?600 }}|
 +</WRAP>
 +<WRAP column 37%>
 +\\ 
 +**Oui**.
 +|{{ Images_Cahier-201-06-257.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 30%>
 +Le deuxième //Instantané// a été restauré.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-258.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +==== Suppression d'un Instantané ====
 +
 +"Supprimer" permet de supprimer l'//Instantané// que vous avez sélectionné sans modifier l'état de la machine actuelle.
 +
 +Vous ne pourrez plus revenir à l'ancien état sauvegardé par cet //Instantané//, mais la machine virtuelle courante garde son état actuel.
 +
 +Utile si vous avez trop abusé des //Instantanés// et que vous manquez d'espace libre sur votre disque dur; supprimez les //Instantanés// qui vous serviront probablement le moins.
 +
 +On supprime le troisième //Instantané//.
 +
 +<WRAP column 46%>
 +<nowiki>-</nowiki> On sélectionne le troisième //Instantané//.\\ 
 +<nowiki>-</nowiki> **Supprimer**.
 +|{{ Images_Cahier-201-06-259.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +\\ 
 +**Oui**.
 +|{{ Images_Cahier-201-06-260.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +====== Truc et astuces ======
 +
 +===== Gestionnaire PVE =====
 +
 +==== Adresse IP ====
 +
 +Si vous ne pouvez accéder à l'adresse du gestionnaire, vérifiez le fichier ''/etc/network/interfaces'' à la console du serveur //PVE//.
 +
 +<file>
 +root@proxmox:~# cat /etc/network/interfaces
 +
 +# network interface settings; autogenerated
 +# Please do NOT modify this file directly, unless you know what
 +# you're doing.
 +#
 +# If you want to manage parts of the network configuration manually,
 +# please utilize the 'source' or 'source-directory' directives to do
 +# so.
 +# PVE will preserve these directives, but will NOT read its network
 +# configuration from sourced files, so do not attempt to move any of
 +# the PVE managed interfaces into external files!
 +
 +auto lo
 +iface lo inet loopback
 +
 +auto eno1
 +iface eno1 inet manual
 +
 +auto enp2s0
 +iface enp2s0 inet manual
 +
 +auto vmbr0
 +iface vmbr0 inet static
 +        address  192.168.1.52
 +        netmask  255.255.255.0
 +        gateway  192.168.1.1
 +        bridge-ports eno1
 +        bridge-stp off
 +        bridge-fd 0
 +
 +auto vmbr1
 +iface vmbr1 inet static
 +        address  10.10.10.52
 +        netmask  24
 +        bridge-ports enp2s0
 +        bridge-stp off
 +        bridge-fd 0
 +
 +root@proxmox:~#
 +</file>
 +
 +Assurez-vous que l'adresse utilisée est bien celle affichée du gestionnaire sur la console lors d'un amorçage sinon, modifiez l'adresse locale dans ce fichier et réamorcez pour que le système en tienne compte.
 +\\ 
 +
 +===== Afficher des messages d'amorçage =====
 +
 +//Référence://  [[https://askubuntu.com/questions/25022/how-to-enable-boot-messages-to-be-printed-on-screen-during-boot-up|https://askubuntu.com/questions/25022/how-to-enable-boot-messages-to-be-printed-on-screen-during-boot-up]].
 +
 +Pour afficher les messages lors de l'amorçage ou de l'arrêt d'un serveur //PVE//, vous devez supprimer le paramètre **//quiet//** de la ligne de démarrage du noyau dans le fichier //GRUB//:
 +
 +<WRAP column 32%>
 +**1.** Démarrez votre système et attendez que le menu //GRUB// apparaisse.
 +
 +**2.** Sélectionnez le noyau que vous souhaitez utiliser et appuyez sur la touche <wrap em>e</wrap>. Vous devriez pouvoir voir et éditer les commandes associées au noyau en surbrillance.
 +</WRAP>
 +<WRAP column 60%>
 +|{{ Images_Cahier-201-06-261.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 32%>
 +**3.** Descendez à la ligne commençant par **//Linux//** et supprimez le paramètre **quiet**.
 +
 +**4.** Appuyez maintenant sur **[Ctrl]** + **[x]** pour démarrer.
 +</WRAP>
 +<WRAP column 60%>
 +|{{ Images_Cahier-201-06-262.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +==== Rendre ce changement permanent ====
 +
 +On affiche la ligne du fichier ''/etc/default/grub'' qui débute par //GRUB<nowiki>_</nowiki>CMDLINE<nowiki>_</nowiki>LINUX<nowiki>_</nowiki>DEFAULT//.
 +
 +<file>
 +root@proxmox:~# cat /etc/default/grub | grep "GRUB_CMDLINE_LINUX_DEFAULT"
 +
 +GRUB_CMDLINE_LINUX_DEFAULT="quiet"
 +root@proxmox:~#
 +</file>
 +
 +On supprime **quiet** de cette ligne.
 +
 +<file>
 +root@proxmox:~# sed -i "s/DEFAULT=\"quiet\"/DEFAULT=\"\"/" /etc/default/grub
 +
 +root@proxmox:~#
 +</file>
 +
 +On vérifie.
 +
 +<file>
 +root@proxmox:~# cat /etc/default/grub | grep "GRUB_CMDLINE_LINUX_DEFAULT"
 +
 +GRUB_CMDLINE_LINUX_DEFAULT=""
 +root@proxmox:~#
 +</file>
 +
 +On rend ce changement permanent.
 +
 +<file>
 +root@proxmox:~# update-grub
 +
 +Generating grub configuration file ...
 +Found linux image: /boot/vmlinuz-5.0.15-1-pve
 +Found initrd image: /boot/initrd.img-5.0.15-1-pve
 +Found memtest86+ image: /boot/memtest86+.bin
 +Found memtest86+ multiboot image: /boot/memtest86+_multiboot.bin
 +done
 +root@proxmox:~#
 +</file>
 +\\ 
 +
 +===== Sauvegarde =====
 +
 +Pour la sauvegarde, nous recommandons de créer une grappe //(cluster)// avec un ou deux autres serveurs //PVE//.
 +
 +On peut aussi utiliser //BackupPC// voir: [[nethserver_101_cahier_11_nethserver_backuppc|Cahier-11]]: //NethServer & BackupPC// du "Cours NethServer-101". Vous pouvez utiliser les procédures du //Cahier-11// pour sauvegarder tout serveur Linux.
 +\\ 
 +\\ 
 +
 +===== Logiciels supplémentaires =====
 +
 +On peut installer quelques logiciels supplémentaires qui sont souvent utilisés et qui ne sont pas fournis par //PVE//.
 +
 +==== net-tools ====
 +
 +Pour pouvoir utiliser la commande //ifconfig//.
 +
 +<file>
 +root@proxmox:~# apt-get install -y net-tools
 +
 +Reading package lists... Done
 +Building dependency tree
 +Reading state information... Done
 +The following NEW packages will be installed:
 +  net-tools
 +0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
 +Need to get 248 kB of archives.
 +After this operation, 1,002 kB of additional disk space will be used.
 +Get:1 http://ftp.ca.debian.org/debian buster/main amd64 net-tools amd64 1.60+git20180626.aebd88e-1 [248 kB]
 +Fetched 248 kB in 0s (916 kB/s)
 +Selecting previously unselected package net-tools.
 +(Reading database ... 44068 files and directories currently installed.)
 +Preparing to unpack .../net-tools_1.60+git20180626.aebd88e-1_amd64.deb ...
 +Unpacking net-tools (1.60+git20180626.aebd88e-1) ...
 +Setting up net-tools (1.60+git20180626.aebd88e-1) ...
 +Processing triggers for man-db (2.8.5-2) ...
 +root@proxmox:~#
 +</file>
 +
 +=== Exemple ===
 +
 +<file>
 +root@proxmox:~# ifconfig vmbr0
 +
 +vmbr0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
 +        inet 192.168.1.52  netmask 255.255.255.0  broadcast 192.168.1.255
 +        inet6 fe80::226:b9ff:fe7a:8edc  prefixlen 64  scopeid 0x20<link>
 +        ether 00:26:b9:7a:8e:dc  txqueuelen 1000  (Ethernet)
 +        RX packets 345680  bytes 120289854 (114.7 MiB)
 +        RX errors 0  dropped 0  overruns 0  frame 0
 +        TX packets 262220  bytes 152964543 (145.8 MiB)
 +        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
 +
 +root@proxmox:~#
 +</file>
 +\\ 
 +
 +==== Utilitaire locate ====
 +
 +Pour la recherche de fichiers.
 +
 +<file>
 +root@proxmox:~# apt-get install locate
 +
 +Reading package lists... Done
 +Building dependency tree
 +Reading state information... Done
 +The following NEW packages will be installed:
 +  locate
 +0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
 +Need to get 270 kB of archives.
 +After this operation, 431 kB of additional disk space will be used.
 +Get:1 http://ftp.ca.debian.org/debian buster/main amd64 locate amd64 4.6.0+git+20190209-2 [270 kB]
 +Fetched 270 kB in 0s (1,018 kB/s)
 +Selecting previously unselected package locate.
 +(Reading database ... 44125 files and directories currently installed.)
 +Preparing to unpack .../locate_4.6.0+git+20190209-2_amd64.deb ...
 +Unpacking locate (4.6.0+git+20190209-2) ...
 +Setting up locate (4.6.0+git+20190209-2) ...
 +Processing triggers for man-db (2.8.5-2) ...
 +root@proxmox:~#
 +</file>
 +
 +=== Exemple ===
 +
 +On met à jour la BD de //locate// //(peut prendre un certain temps lors de la première mise à jour)//.
 +
 +<file>
 +root@proxmox:~# updatedb
 +
 +root@proxmox:~#
 +</file>
 +
 +Recherche du fichier //os-release//.
 +
 +<file>
 +root@proxmox:~# locate os-release
 +
 +/etc/os-release
 +/usr/lib/os-release
 +/usr/share/man/man5/os-release.5.gz
 +root@proxmox:~#
 +</file>
 +\\ 
 +
 +==== Midnight Commander (mc) ====
 +
 +<file>
 +root@proxmox:~# apt-get install -y mc
 +
 +Reading package lists... Done
 +Building dependency tree
 +Reading state information... Done
 +The following additional packages will be installed:
 +  libgpm2 mc-data unzip
 +Suggested packages:
 +  gpm arj catdvi | texlive-binaries dbview djvulibre-bin epub-utils gv imagemagick
 +  libaspell-dev odt2txt poppler-utils python-boto python-tz xpdf | pdf-viewer zip
 +The following NEW packages will be installed:
 +  libgpm2 mc mc-data unzip
 +0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
 +Need to get 2,015 kB of archives.
 +After this operation, 8,159 kB of additional disk space will be used.
 +Get:1 http://ftp.ca.debian.org/debian buster/main amd64 libgpm2 amd64 1.20.7-5 [35.1 kB]
 +Get:2 http://ftp.ca.debian.org/debian buster/main amd64 mc-data all 3:4.8.22-1 [1,292 kB]
 +Get:3 http://ftp.ca.debian.org/debian buster/main amd64 mc amd64 3:4.8.22-1 [516 kB]
 +Get:4 http://ftp.ca.debian.org/debian buster/main amd64 unzip amd64 6.0-23+deb10u1 [172 kB]
 +Fetched 2,015 kB in 1s (1,589 kB/s)
 +Selecting previously unselected package libgpm2:amd64.
 +(Reading database ... 44139 files and directories currently installed.)
 +Preparing to unpack .../libgpm2_1.20.7-5_amd64.deb ...
 +Unpacking libgpm2:amd64 (1.20.7-5) ...
 +Selecting previously unselected package mc-data.
 +Preparing to unpack .../mc-data_3%3a4.8.22-1_all.deb ...
 +Unpacking mc-data (3:4.8.22-1) ...
 +Selecting previously unselected package mc.
 +Preparing to unpack .../mc_3%3a4.8.22-1_amd64.deb ...
 +Unpacking mc (3:4.8.22-1) ...
 +Selecting previously unselected package unzip.
 +Preparing to unpack .../unzip_6.0-23+deb10u1_amd64.deb ...
 +Unpacking unzip (6.0-23+deb10u1) ...
 +Setting up libgpm2:amd64 (1.20.7-5) ...
 +Setting up unzip (6.0-23+deb10u1) ...
 +Setting up mc-data (3:4.8.22-1) ...
 +Setting up mc (3:4.8.22-1) ...
 +update-alternatives: using /usr/bin/mcview to provide /usr/bin/view (view) in auto mode
 +Processing triggers for man-db (2.8.5-2) ...
 +Processing triggers for mime-support (3.62) ...
 +Processing triggers for libc-bin (2.28-10) ...
 +root@proxmox:~#
 +</file>
 +
 +=== Exemple ===
 +
 +<WRAP column 30%>
 +**[F-10]** pour quitter.
 +</WRAP>
 +<WRAP column 62%>
 +|{{ Images_Cahier-201-06-263.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\
 +
 +===== Ajour d'un nouvel administrateur =====
 +
 +La commande à la ligne pour créer, modifier, etc... un utilisateur est **pveum** //(Proxmox VE User Manager)//.
 +
 +On crée l'utilisateur **__michelandre__**.
 +
 +<file>
 +root@proxmox:~# pveum useradd michelandre@pve -comment "Créateur"
 +
 +root@proxmox:~#
 +</file>
 +
 +On lui donne un mot de passe.
 +
 +<file>
 +root@proxmox:~# pveum passwd michelandre@pve
 +
 +Enter new password: *********
 +Retype new password: *********
 +root@proxmox:~#
 +</file>
 +
 +On crée un nouveau groupe.
 +
 +<file>
 +root@proxmox:~# pveum groupadd administrateur -comment "Administrateur PVE"
 +
 +root@proxmox:~#
 +</file>
 +
 +On accorde au nouveau groupe //administrateur// les mêmes permissions que celles du rôle //Administrator//.
 +
 +<file>
 +root@proxmox:~# pveum aclmod / -group administrateur -role Administrator
 +
 +root@proxmox:~#
 +</file>
 +
 +On ajoute **__michelandre__** au nouveau groupe administrateur.
 +
 +<file>
 +root@proxmox:~# pveum usermod michelandre@pve -group administrateur
 +
 +root@proxmox:~#
 +</file>
 +
 +==== Vérification ====
 +
 +<WRAP column 46%>
 +**//Permissions//**\\ 
 +Le nouveau groupe //administrateur// est présent et il possède les permissions du rôle //Administrator//.
 +|{{ Images_Cahier-201-06-264.png?400 }}|
 +</WRAP>
 +<WRAP column 46%>
 +**//Utilisateurs//**\\ 
 +<nowiki>-</nowiki> Le nouvel utilisateur **__michelandre__** est aussi présent.\\ 
 +<nowiki>-</nowiki> L'utilisateur **__root__** a été crée lors de l'installation de //PVE//.
 +|{{ Images_Cahier-201-06-265.png?400 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 25%>
 +**//Groupes//**\\ 
 +Le nouveau groupe //administrateur// est présent.
 +|{{ Images_Cahier-201-06-266.png?400 }}|
 +</WRAP>
 +<WRAP column 67%>
 +\\ 
 +**//Rôles//**\\ 
 +Les rôles standards de //Proxmox VE// n'ont pas été modifiés.
 +|{{ Images_Cahier-201-06-267.png?700 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +
 +<WRAP column 40%>
 +On se déconnecte et on se reconnecte en tant que **__michelandre__**.
 +|{{ Images_Cahier-201-06-268.png?400 }}|
 +</WRAP>
 +<WRAP column 50%>
 +Nous sommes connecté et le groupe //administrateur// possède les mêmes permissions que celles du rôle //Administrator//.
 +|{{ Images_Cahier-201-06-269.png?600 }}|
 +</WRAP>
 +<WRAP clear></WRAP>
 +\\ 
 +\\ 
 +{{NS-101_002_Banniere_Victoire.png?50}}  Victoire totale, hissons la bannière de la victoire.
 +\\ 
 +
 +----
 +
 +====== Crédits ======
 +
 +© 2018-2019  RF-232\\ 
 +Auteur: Michel-André.\\ 
 +Remerciement: Tous les contributeurs GNU/GPL.\\ 
 +Intégré par: Michel-André Robillard CLP.\\ 
 +Contact:  michelandre at micronator.org.
 +
 +Répertoire de ce document: <nowiki>RF-232_Cours_NethServer-201-06_ProxmoxVE_2019-09-17_14h33.odt</nowiki>
 +
 +Historique des modifications:
 + 
 +^Version^Date^Commentaire^Auteur|
 +|0.0.1|2018-11-15|Début pour SME-9.2.|Michel-André|
 +|0.0.2|2019-09-09|Ajustements pour NethServer et DokuWiki.|Michel-André|
 +|012345678901| | |012345678901|
 +
 +
 +<html><hr style="width:50%; margin: 0 auto;"></html>
 +
 +===== AVIS DE NON-RESPONSABILITÉ =====
 +
 +Ce document est uniquement destiné à informer. Les informations, ainsi que les contenus et fonctionnalités de ce do­cument sont fournis sans engagement et peuvent être modifiés à tout moment. RF‑232 n'offre aucune garantie quant à l'actualité, la conformité, l'exhaustivité, la qualité et la durabilité des informations, contenus et fonctionnalités de ce document. L'accès et l'utilisation de ce document se font sous la seule responsabilité du lecteur ou de l'utilisateur.
 +
 +RF‑232 ne peut être tenu pour responsable de dommages de quelque nature que ce soit, y compris des dommages di­rects ou indirects, ainsi que des dommages consécutifs résultant de l'accès ou de l'utilisation de ce document ou de son contenu.
 +
 +Chaque internaute doit prendre toutes les mesures appropriées //(mettre à jour régulièrement son logiciel antivirus, ne pas ouvrir des documents suspects de source douteuse ou non connue)// de façon à protéger le contenu de son ordina­teur de la contamination d'éventuels virus circulant sur la Toile.
 +
 +Toute reproduction interdite
 +Vous reconnaissez et acceptez que tout le contenu de ce document, incluant mais sans s’y limiter, le texte et les images, sont protégés par le droit d’auteur, les marques de commerce, les marques de service, les brevets, les secrets industriels et les autres droits de propriété intellectuelle. Sauf autorisation expresse de RF-232, vous acceptez de ne pas vendre, délivrer une licence, louer, modifier, distribuer, copier, reproduire, transmettre, afficher publiquement, exécuter en public, publier, adapter, éditer ou créer d’oeuvres dérivées de ce document et de son contenu.
 +
 +==== Avertissement====
 +
 +Bien que nous utilisions ici un vocabulaire issu des techniques informatiques, nous ne prétendons nullement à la précision technique de tous nos propos dans ce domaine.
 +\\
 +\\