Bonjour,
je pense que tout ça sera plus clair pour toi si tu es un peu à l’aise avec les concepts de chiffrement, et d’autorités de certification, en particulier. Pas besoin de devenir expert sur ces sujets (heureusement pour moi ^^), mais juste de savoir à quoi ça sert, à quel moment ça intervient dans un cas concret, et quelques façons de les mettre en œuvre.
D’ailleurs n’hésite pas à recourir à des sites généralistes comme Wikipedia, pour lire au moins les résumés des fiches pertinentes.
Et si la lecture de l’anglais n’est pas un soucis pour toi, il faut savoir que les fiches en langue anglaise sont souvent plus complètes que celles en langue française:
En gros, dans le cadre de ton TP, tu as besoin de savoir que HTTPS c’est le protocole HTTP avec une couche de chiffrement TLS. Les serveurs web, comme Apache que tu as installé, supportent HTTP et HTTPS. Le chiffrement des échanges entre le navigateur web du client et le serveur fait intervenir une clé de chiffrement * (Transport Layer Security — Wikipédia) obtenue avec le certificat.
* : pour HTTPS on a d’abord du chiffrement asymétrique (pour échanger une clé de chiffrement symétrique), puis du chiffrement symétrique pour le reste de la session parce que c’est plus performant en termes de rapidité, mais à la limite on peut juste retenir qu’il y a du chiffrement asymétrique avec la clé publique contenue dans le certificat
Les certificats peuvent être délivrés par une autorité de certification, comme Let’s Encrypt, ou ils peuvent être générés par l’administrateur du serveur web (on parle de certificat auto-signé). Comme l’obtention d’un certificat auprès de Let’s Encrypt (avec la commande certbot
) implique une vérification par LE de l’authenticité de la demande (en gros, que la personne qui demande un certificat couvrant un domaine est bien propriétaire du domaine), tu ne pourras pas obtenir de certificat auprès d’eux (pour les autres autorités, je ne sais plus trop, mais de toute façon LE est la seule CA qui délivre gratuitement des certificats, à ma connaissance).
C’est pour ça que tu devras générer un certificat autosigné (tu pourras trouver sur le web plein de tutos pour ça, en utilisant openssl
par exemple) et indiquer à ton serveur web d’utiliser ce certificat pour servir ton site en HTTPS.
Yunohost est une distribution basée sur Debian, et conçue pour faciliter la tâche aux administrateurs, en fournissant une interface graphique (console web, du même style que Plex par exemple) qui permet de déployer en quelques clics des services comme des CMS (Wordpress ou autre), des forums, etc. en prenant automatiquement en charge les configurations. C’est plutôt bien, mais je pense que le but de ton TP est justement de te faire « mettre les mains dans le cambouis », donc ce serait dommage de laisser Yunohost tout faire à ta place