Dawan Proxmox VE — TSSR

Chapitre 1 — Introduction, Installation et LXC

8. Sécuriser les accès : double authentification et jetons d'API

Les droits (§7) disent ce qu'un compte peut faire. Reste à protéger la connexion elle-même. Proxmox fournit deux outils : la double authentification pour les personnes, les jetons d'API pour les scripts.

8.1 Double authentification de l'interface web

L'interface web de Proxmox est accessible par défaut avec un simple couple identifiant/mot de passe. Pour un hyperviseur exposé sur un réseau ou sur Internet, c'est insuffisant. Proxmox intègre nativement le TOTP (Time-based One-Time Password) — le même mécanisme que Google Authenticator ou Authy.

Une fois activé, la connexion nécessite le mot de passe habituel plus un code à 6 chiffres qui change toutes les 30 secondes. Même si un attaquant obtient le mot de passe, il ne peut pas se connecter sans le code TOTP généré par le téléphone de l'administrateur.

La configuration se fait entièrement en GUI : Datacenter → Permissions → Two Factor → Add → TOTP (ou, pour son propre compte, menu utilisateur en haut à droite → TFA). Proxmox affiche un code QR (code-barres en deux dimensions) à scanner avec l'application d'authentification. Après validation, le 2FA est actif pour cet utilisateur.

Précaution : ajoutez aussi des clés de récupération (Add → Recovery Keys), à conserver dans un endroit sécurisé. Si vous perdez accès à votre application d'authentification sans elles, vous serez bloqué hors de votre interface Proxmox. Seul un autre administrateur, ou root en console, pourra retirer votre second facteur.

8.2 Les jetons d'API

Un script qui pilote Proxmox (Terraform, Ansible, une supervision) ne doit pas utiliser le mot de passe root. On lui donne un jeton d'API : un secret rattaché à un utilisateur, révocable seul, dont chaque appel est journalisé, et qui ne s'affiche qu'une fois, à sa création.

Ce qui protège n'est pas le jeton lui-même, mais le rôle et le chemin qu'on lui associe. Un jeton avec le rôle Administrator sur / vaut le mot de passe root. Création dans Datacenter → Permissions → API Tokens, ou par pveum user token add <utilisateur> <nom>.

▶ À pratiquer maintenant — Atelier 5

Ajouter un TOTP à un compte d'administration, constater qu'il est exigé à la connexion, puis le retirer en root, comme après la perte d'un téléphone.

À retenir : le 2FA TOTP ajoute à l'interface web un code à six chiffres (gardez des clés de récupération). Un jeton d'API remplace le mot de passe dans les scripts : révocable seul, traçable, limité par son rôle et son chemin.