Proxmox – hostname SSL local
La problématique
- Ne pas avoir à contacter votre serveur Proxmox VE via sont adresse IP suivi du numéro de son port.
- Utiliser le hostname par défaut et déjà renseigné « proxmox.local ».
Correspond au nœud du même nom. - Utilisation du reverse proxy NPM (Nginx)
- Utilisation serveur DNS Pihole
Pihole
Rien de bien sorcier, il suffit d’inscrire le nom de notre hostmane (url) et d’indiquer l’adresse IP du reverse proxi NPM (Nginx) !
- System > Settings > Local DNS Reccords
- hostname
proxmox.local - IP
<IP_NPM>
- hostname
Proxmox – Certificats SSL
Avant d’aller trop loin et de sa casser les dents sur cette fichue histoire de certificats SSL, sachez que Proxmox VE impose d’avoir une connexion chiffrées (SSL) pour fonctionner. Sans ça, vous n’iriez pas loin…
Donc d’origine, Proxmox VE fourni sa propre chaine de confiance et vous aviez certainement ajouté une exception à votre navigateur préféré afin de faire fonctionner l’interface de Proxmox VE.
L’exception est nécessaire car votre navigateur/système ne reconnait la l’origine de cet organisme de confiance (CA)…
Toutes fois on peut voir que ce certificat (wildcards) couvre plusieurs nom DNS, dont celui qui nous intéresse dans le cadre du présent article : proxmox.local
Pour initier un connexion SSL il faut donc 3 choses :
- Certificat du CA
Est installé sur la machine ou dans le magasin du navigateur. C’est la fameuse « exception » que l’on confirme pour pouvoir consulter des sites nom reconnu par défaut (et il y a une raison !). - Certificat Serveur
Est présenté au client lors de la connexion entre les parties. Il sera fourni par le proxy. - La clé
Accompagne le certificat serveur.
Donc dans le cadre d’une connexion via un proxy comme c’est notre cas présentement, il nous faut soit :
- Recréer tout une chaine de confiance.
- Réemployer ce qui fonctionne déjà.
Nous allons opter pour cette dernière option !
Pourquoi ? Car le certificat CA est déjà installé puisque vous utilisez déjà certainement Proxmox VE via votre navigateur. Il nous reste donc à trouver les 2 autres fichiers…
Où se trouvent les fichiers ?
La réponse est donnée dans la documentation officielle. Celle là même qui indique comment configurer Nginx.
/etc/pve/local/pve-ssl.pem;
/etc/pve/local/pve-ssl.key;
Voilà, vous savez où récupérer ces fichiers via votre logiciel SFTP pour les enregistrer sur votre disque dur avant de passer à la suite.
NPM – Nginx
SSL Certificates
On va commencer par enregistrer les certificats SSL en bonne et due forme.
- Onglet « Certificates SLL »
- Cliquez « Add SSL Certificate » > Custom
- Saisir un nom reconnaissable
- Ajouter la clé dans le champs « Certificate Key »
Il s’agit du fichier pve-ssl.key - Ajouter le certificat serveur « Certificate »
Il s’agit du fichier pve-ssl.pem - Enregistrez. La pastille reste rouge, c’est normal, ce certificat n’est pas encore utilisé.
Hosts
Dernière étape de nos paramétrages, le configuration du host.
- Ouvrez l’onglet »Hosts » > « Proxy hosts »
- Cliquez sur « Add Proxy Host »
Une petite fenêtre s’ouvre.
Onglet « Details »
- Dans le champs « Domain Names«
Donnez bien l’adresse « proxmox.local » et validez la saisie en appuyant sur la touche entrée. - Dans le champs « Scheme«
On ouvrira une connexion https - Dans le champs « Forward Hostanme / IP«
Saisir l’adresse <IP> de votre nœud Proxmox. - Dans le champs « Forward Port«
- Saisir le numéro de port, par défaut 8006
- Cochez les options
- Block Common Exploits
- Websockets Support
Onglet SSL
- Dans le champs « SSL Certificate«
Sélectionnez le certificat que vous aviez ajouté précédemment. - Cochez les options :
- Force SSL
- HTTP/2 Support
Fin
Voilà, normalement tout devrez fonctionner.
Vous devrez « encore » ajouter une règle d’exception à votre navigateur pour accepter ce certificat pour établir la connexion.
Ne pas hésitez à fermer/ouvrir et vider les caches de nos navigateur, redémarrer si besoin blablabla.
Si vous obtenez une erreur 401 : No ticket après l’ouverture de votre panneau d’administration de Proxmox, cela signifie qu’il y a un soucis avec votre certificat SSL.




