Le but de cette formation est de faciliter la mise en place, la gestion et la maintenance d'un site web perso en auto-hébergement et des services qui peuvent être associés.
Dans mon cas j'ai choisi d'avoir un serveur de nom de domaine faisant autorité, mais ça n'est pas obligatoire.
le reverse proxy SNI n'est nécessaire que dans le cas ou vous souhaitez avoir plusieurs machines virtuelle (ou des conteneurs) partageant la même ipv4 publique.
Comme on peut le voir sur le schéma, l'ipv6 est plus simple à configurer que l'orsqu'on n'a qu'une ipv4 publique.
Je recommande l'installation d'un hyperviseur (Proxmox) pour y héberger les machines virtuelles ou conteneurs du site web et des services associés. Il est possible d'utiliser un autre hyperviseur que proxmox, par exemple virt-manager, virtualbox etc.
Dans tous les cas il sera préférable de parametrer le réseau en mode pont (bridge) pour ne pas avoir à gérer les redirection NAT.
Proxmox utilise les bridges par defaut, ce qui nous convient.
Yunohost peut s'installer de deux façon dans proxmox, en machine virtuelle ou en conteneur, celà va dépendre de votre besoin en isolation des processus.
je recommande l'installation de Yunohost en conteneur, mais si vous tenez à l'installer en machine virtuelle c'est documenté ici: yunohost en machine virtuelle
l'installation de Yunohost en conteneur se fait dans un conteneur déjà existant:
Yunohost est basé sur Debian, donc j'installe un conteneur Debian:
(documentation: https://pve.proxmox.com/wiki/Linux_Container#pct_container_images)
voici quelque commandes à executer en tant que root dans le terminal proxmox pour ajouter les images de conteneurs:
pveam update
(met à jour la liste des images de conteneurs disponibles)
pveam available --section system | grep debian
(affiche la liste des conteneurs Debian seulement)
pveam download local debian-12-standard_12.7-1_amd64.tar.zst
(telecharge la dernière image debian disponible)
cd /root apt update wget install.yunohost.org -O install.yunohost.sh chmod +x install.yunohost.sh /root/install.yunohost.sh
une fois l'installation de base terminée il suffira d'aller dans le navigateur web pour la continuer. ou de taper yunohost tools postinstall
en ligne de commande
une fois le nom de domaine enregistré, il suffira de générer le certificat du coté de Yunohost/admin
au choix:
Dites-vous bien que les problèmes de NAT n'existent pas en ipv6 (à moins d'avoir du CGNAT mais dans ce cas je recommande de changer de fournisseur d'accès à Internet)
en ipv6 la machine est directement connectée à Internet, avec tous les ports exposés sur l'ip publique (qui commence par 2)
Yunohost est capable de faire les sauvegardes des applications, mais il ne fait pas les sauvegardes de lui même. c'est pour cette raison que j'utilise Yunohost dans une machine virtuelle (ou un conteneur) et que je fais faire la sauvegarde par proxmox.
mais une sauvegarde se doit de ne pas rester sur le même disque dur que sa source et devrait être stockée dans un lieu géographique différent.
en ce qui nous concerne, utiliser une deuxieme disque dur sera déjà pas mal