Virtualisation - Proxmox VE
Contient les procédures liées aux systèmes Proxmox.
- Proxmox VE - Monter une clé USB sur une VM
- ProxmoxVE - Changer le certificat https
- ProxmoxVE - Configuration SSO Oauth avec keycloak
- ProxmoxVE - Installation
- ProxmoxVE - Installation interface graphique
Proxmox VE - Monter une clé USB sur une VM
|
Difficulté : Intermédiaire Notions : Installation, transfert USB, périphériques et composants, virtualisation, proxmox. |
I. Introduction
Cette procédure vise à expliquer comment monter une clé USB sur une VM hébergée sur proxmox. Afin par exemple de réaliser une installation de logiciel ou faire passer un fichier dans sa VM lorsqu'il n'est pas possible de passer par le réseau.
Prérequis : Accès physique au nœud sur lequel la VM est hébergée pour pouvoir y brancher la clé. Ou agent spice actif.
II. Monter la clé USB
Après avoir branché la clé USB sur l'hôte, il faut se placer sur la VM sur laquelle on veut la monter.
Dans l'onglet 'Hardware', cliquer sur 'Add', puis sélectionner 'USB device'.
Il est alors possible de choisir le type de montage.
- Spice Port : Permet de monter une clé USB distante à travers l'agent spice.
- Volume : Disque virtuel servant de clé USB et pouvant être partagé en tant que clé USB
- USB vendor/Device ou USB Port : Permet de monter une clé USB localement branché sur le HOST.
ProxmoxVE - Changer le certificat https
|
Difficulté : Novice Notions : certificats, https, sécurité |
I. Introduction
Cette procédure à pour but d'expliquer la création / le remplacement des certificats pour l'interface web proxmox.
En effet, par défaut, Les serveurs proxmox VE génèrent des certificats auto-signés, ce qui laisse apparaître une alerte de sécurité à la connexion et, de surcroit, n'est pas très sécurisé.
Plus d'informations : Sécurité - Certificats
Prérequis : disposer d'une autorité de certification.
II. Mise en place
2.1 Préparer la demande de certificat
Dans le panneau de navigation à gauche, cliquer sur le node à modifier.
Dans le panneau central, cliquer sur '>_ Shell'.
Aller dans le répertoire '/etc/ssl'.
Créer et éditer un fichier 'csr.conf' avec le contenu suivant, en remplaçant les données générique par celles nécessaires.
[req]
default_bits = 2048
distinguished_name = dn
prompt = no
req_extensions = req_ext
[dn]
C="CC"
ST="state"
L="locality"
O="organisation"
OU="Service"
emailAddress="yourmail@mail.com"
CN="yourdomain.com"
[req_ext]
subjectAltName = @alt_names
[alt_names]
DNS.0 = host.domain.ext
DNS.1 = hostname
DNS.2 = host ip
DNS.3 = localhost
DNS.4 = 127.0.0.1
DNS.5 = 0000:0000:0000:0000:0000:0000:0000:0001
2.2 Générer le csr
Utiliser la commande openssl pour générer le csr avec les informations ci-dessus.
openssl req -new -key private/ssl-cert-snakeoil.key -out certificate.csr -config csr.conf
Afficher ensuite le contenu du fichier avec :
cat certificate.csr
Copier le contenu du fichier ou le fichier afin de le soumettre à l’autorité de certification.
Copier également le contenu de la clé privée ou le fichier, car il sera demandé plus tard lors de l'installation du certificat.
2.3 Installer le certificat
Prérequis : la réponse attendue doit être un certificat au format base64 ou pem.
Dans le panneau de navigation, cliquer sur l'hôte à modifier.
Dans le panneau central, aller dans 'System --> Certificates'.
Cliquer sur 'Upload Custom Certificate'.
Copier le contenu de la clé privée et de la chaîne de certificats précédemment obtenues ou utiliser les fichiers en utilisant le bouton 'From File'. Puis valider avec le bouton 'Upload'.
Le message suivant apparaît et l'interface recharge.
Après une fermeture / réouverture de la page on vois bien que la connexion est sécurisée.
Et le certificat apparaît dans la liste des certificats installés.
Note : si il s'agit d'un cluster composé de plusieurs nœuds, répéter l'opération pour chaque nœud du cluster ou créer un certificat qui inclura tous les noms possibles.
ProxmoxVE - Configuration SSO Oauth avec keycloak
|
Difficulté : Confirmé Notions : Authentification, Gestion de droits, SSO |
I. Introduction
Cette procédure à pour but d'expliquer la mise en place de l'authentification et de la gestion de droits sur les environnements Proxmox à travers le SSO fourni par Keycloack.
II. Côté Keycloak
2.1 Créer le client
Se connecter au keycloak et sélectionner le realm sur lequel ajouter le client proxmox.
Cliquer sur 'Create client'
Sélectionner le type 'OpenID Connect'
Générer ou définir un 'clientID'.
Il est possible d'utiliser un générateur afin de générer un e chaîne de 32 caractères. Par exemple : ici.
Best Practice : 32 caractères avec minuscules, majuscules et chiffres.
Choisir un nom parlant.
Puis faire 'Next'.
Sur la page suivante, activer 'Client authentication' et 'Authorization'.
Vérifier que les cases suivantes sont cochées.
Puis faire 'Next'.
Entrer les URL au format suivant (en modifiant les FQND).
Puis faire 'Save'.
2.2 Préparer la synchro des groupes
Afin de pouvoir gérer les droits depuis le keycloak et synchroniser les groupes, aller dans l'onglet 'Client scope'.
Choisir le client scope au nom du client suivi de '-dedicated'.
Faire 'Add Mapper' puis 'By Configuration'.
Choisir 'Group Membership'.
Définir le nom du mapper en 'groups'.
Définir le Token claim name en 'groups'.
Vérifier que les fonctions suivantes soit activées / désactivées.
Puis faire 'Save'.
2.3 Récupérer les URL
Pour récupérer les URL, sélectionner le realm et faire 'Realm settings' puis cliquer sur 'OpenID Endpoint Configuration'.
Une page s'affiche et permet de récupérer les URL.
III. Côté Proxmox
3.1 Créer le Realm
Sur 'Datacenter' dans le sous-menu, sélectionner 'Permissions --> Realms' puis faire 'Add'
Sélectionner 'OpenID Connect server'.
Remplir les éléments suivants :
- Issuer URL : l'url Issuer du realm
- Nom du realm : Nom du realm
- Client ID : ID du client sur keycloak
- Client Key : Secret du client
- Cocher 'Default'
- Cocher 'Autocreate Users'
- Username Claim : email (attribut qui servira à authentifier le user)
- Décocher 'Autocreate Groups' (les groupes seront créés à part)
- Group Claim : groups (attribut contenant les groupes de l'utilisateur)
- Décocher Overwrite Groups
- Mettre en commentaire la description du realm
3.2 Créer les groupes
Aller dans 'Permissions --> Groups'.
Créer les groupes tels que définis dans le realm et ajouter le suffixe '-<nomdurealm>'
Astuce : Il est aussi possible de cocher la case de création automatique, placer un utilisateur dans tous les groupes nécessaires, se connecter, puis aller décocher la case de synchronisation des groupes et supprimer les groupes créés en trop.
Il ne restera plus qu'a définir les permissions pour chaque groupe dans 'Permissions'.
ProxmoxVE - Installation
|
Difficulté : Débutant Notions : Virtualisation, installation de serveur |
I. Introduction
Cette documentation à pour but de réaliser l'installation de base d'un noeud proxmox à partir d'un méria Iso ou d'une clé bootable.
Pour cette seconde méthode, voir Rufus - Création d'un média d'installation
Télécharger proxmox VE : Download Proxmox VE
Prérequis : voir ci-dessous
- 2 Vcpu.
- 2Gb RAM pour l'OS (plus celle dédiée aux VM).
- (si activation de Ceph storage, 1Gb de mémoire en plus par tranche de 1To de disque dans les volumes).
- Disque dur de 10Gb minimum dédié pour l'OS.
II. Installation
Insérer le media d'installation et démarrer dessus.
Sélectionner 'Install Proxmox VE (Graphical)'.
Attendre l'initialisation de l'installeur.
Faire défiler le contrat de licence et cliquer sur 'I agree'.
Sélectionner le disque sur lequel installer (si un seul disque, sélectionné par défaut).
En cas d'installation sur un volume raid
Base théorique : Hardware - Le RAID
Cliquer sur 'Options'.
La fenêtre suivante s'affiche :
Sélectionner le niveau de raid adapté au besoin, ici zfs(RAID1)
Sélectionner les disques qui participeront au volume.
Si nécessaire, ajuster les options.
Puis valider avec 'OK'
La destination de l'installation est alors modifiée.
Cliquer sur 'Next'.
Sélectionner :
- le pays
- la zone de temps
- la disposition clavier
Puis faire 'Next'.
Entrer le mot de passe et la confirmation pour le compte 'root'.
Entrer un email valide qui recevra les notifications du système.
Puis cliquer sur 'Next'.
Entrer le FQDN du noeud proxmox.
Puis entrer les informations réseau (si un DHCP est présent il va récupérer les informations données par celui-ci).
Attention : ces informations, bien que récupérée par DHCP seront fixées par le Proxmox dans sa configuration. En cas de déploiement multiples ou réaffectation de l'adresse, cela risquera d'entrainer des conflits.
Puis cliquer sur 'Next'.
Un récapitulatif de l'installation est présenté à l'utilisateur.
La case 'Automatically reboot after successful installation' est cochée par défaut.
Cliquer sur 'Install'.
Attendre la fin de l'installation.
A la fin de celle-ci, si la case nétait par cochée, cliquer sur 'Reboot'.
Après le redémarrage, l'écran suivant est disponible sur la console.
III. Se connecter à l'interface d'administration
Lors de la première connexion, il faudra passer outre le risque de sécurité du fait que le certificat ssl présent par défaut est autosigné
La fenêtre de connexion apparaît.
Entrer le nom d'utilisateur 'root' et le mot de passe défini lors de l'installation.
Le message suivant apparaît alors, il peut être ignoré.
L'écran d'administration est alors disponible et se décompose comme suit :
IV. Configuration de base
Dans le panneau de navigation, se placer sur le noeud proxmox.
5.1 Configuration du réseau
Dans le panneau principal, aller dans 'System --> Network'
S'assurer que la configuration est bien celle souhaitée.
Si ce n'est pas le cas, cliquer sur le vmbr à modifier et sur le bouton 'Edit'.
Entrer les informations voulues et faire 'OK'.
Attention : En cas de changement de ces paramètres, l'interface d'administration ne sera plus disponible car elle devra être rechargée. Entraînant ainsi une indisponibilité de service.
5.2 Modification du/des DNS
Sur le panneau principal, aller dans 'System --> DNS' et cliquer sur 'Edit'
Entrer le domaine de recherche et le(s) DNS, puis valider avec 'OK'.
5.3 Modification du nom d'hôte
La modification du nom d'hôte ne se fait qu'a travers la modification du fichier host. Heureusement, l'édition de celui-ci est disponible dans la GUI.
Dans l'écran principal, aller dans 'System --> Hosts', modifier les valeurs désirées.
par exemple : 172.20.1.11 och-lab-pve01.labs404.fr och-lab-pve01
Puis cliquer sur 'Save' et redémarrer pour appliquer les modifications.
5.4 Mettre à jour le système
Par défaut, aucune souscription n'est présente sur les Proxmox car celle-ci est payante.
Information : Souscrire à un abonnement permet d'accéder aux repos entreprise (nécessaire pour un environnement de production) ainsi que d'avoir un certain niveau de support.
Il faudra donc désactiver les repos entreprise et ajouter le Community à la place.
Pour cela, dans le panneau central, aller dans 'Updates --> Repositories'.
Cliquer sur les deux repositories en bas :
Puis cliquer sur 'Disable'. Cela donnera la chose suivante :
Il faut donc maintenant ajouter le repo Community.
Cliquer sur 'Add'.
Sélectionner le Repo 'No-Subscription' et valider en cliquant sur 'Add'.
Cela donne maintenant :
Dans le panneau principal, faire 'Updates'. Cliquer sur 'Refresh'.
Ignorer l'avertissement, attendre que la tâche affiche 'OK' puis faire la croix pour fermer.
L'ensemble des mises à jour est maintenant affichée.
Appliquer les mises à jours en cliquant sur '>_ Upgrade'.
Une console s'ouvre, demandant l'acceptation de l'application des mise à jour.
entre 'Y' dans le terminal et faire 'Entrer'.
Attendre que la mise à jour termine.
Si le système demande à redémarrer, il est conseillé de le faire.
ProxmoxVE - Installation interface graphique
|
Difficulté : Novice Notions : Proxmox VE, virtualisation, système, CLI, bash |
I. Introduction
Cette procédure vise à décrire l'installation d'un environnement graphique sur un système proxmox VE installé en local sur une machine.
Prérequis : Avoir installé ProxmoxVE et avoir accès au shell. Proxmox VE - Installation
II. Installation
2.1 Installation des paquets
Accéder au terminal en entrant les informations suivantes :
- login : 'root'
- Password : 'Celui fourni à l'installation'
Mettre à jour la liste des paquets disponible avec :
apt update
Info : Ignorer les erreurs sur les repo entreprise. C'est juste qu'il n'y a pas la licence.
Installer les paquets avec la commande suivante :
apt install -y xfce4 lightdm chromium
2.2 Lancer le service au démarrage
Pour que l'interface graphique se lance au démarrage, il faut utiliser la commande suivante :
systemctl set-default graphical.target
2.3 Ajouter le compte utilisateur standard
Pour des raisons de sécurité et afin d'être certain du bon fonctionnement de l'environnement, il est préférable d'ajouter un compte utilisateur local classique (sans privilège).
adduser <votre prénom>
Entrer et confirmer le mot de passe, puis entrer les informations facultatives. Sélectionner 'Y' pour confirmer la création et faire 'Enter'.
2.4 Redémarrer la machine
Redémarrer la machine avec :
reboot
Attendre la fin du redémarrage.
III. Connexion à l'interface
2.1 Se connecter
Entrer le login et mot de passe pour l'utilisateur que vous venez de créer. Puis cliquer sur 'Login'.
Vous avez désormais accès à un bureau basique.
2.2 Accéder à l'interface de proxmox
Cliquer sur l'icône internet en bas du bureau.
Utiliser l'URL suivante pour vous connecter à votre instance locale proxmox : http://127.0.0.1:8006
Info : Une alerte de sécurité apparaît dans le navigateur. Cela est normal, le certificat https est un certificat dit 'autogénéré'. Il n'est donc pas reconnu comme étant de confiance par le navigateur.
Le compte à utiliser ici est le compte 'root' avec le mot de passé défini à l'installation.