Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update https.rst for openssl #3134

Merged
merged 6 commits into from
Oct 29, 2024
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
60 changes: 45 additions & 15 deletions docs/https.rst
Original file line number Diff line number Diff line change
@@ -1,36 +1,28 @@
HTTPS
*****

La procédure décrit une méthode de certification HTTPS de votre domaine, grâce au service `Let's Encrypt <https://letsencrypt.org/>`_. Les manipulations ont été effectuées sur un serveur Debian 9 avec Apache2 installé, et un utilisateur bénéficiant des droits sudo.

Cette documentation est indicative, car elle ne concerne pas GeoNature, mais la mise en place d'un certificat SSL pour une application web servie par Apache.
Cette documentation est indicative car elle ne concerne pas GeoNature. Elle donne quelques indications sur la mise en place d'un certificat SSL pour une application web servie par Apache.
camillemonchicourt marked this conversation as resolved.
Show resolved Hide resolved

Ressources :
Utilisation de Cerbot
---------------------

- https://www.memoinfo.fr/tutoriels-linux/configurer-lets-encrypt-apache/
- https://korben.info/securiser-facilement-gratuitement-site-https.html
Source : https://korben.info/securiser-facilement-gratuitement-site-https.html
camillemonchicourt marked this conversation as resolved.
Show resolved Hide resolved

La procédure décrit une méthode de certification HTTPS de votre domaine, grâce au service `Let's Encrypt <https://letsencrypt.org/>`_. Les manipulations ont été effectuées sur un serveur Debian 9 avec Apache2 installé, et un utilisateur bénéficiant des droits sudo.

Installer certbot
-----------------
Cerbot ne peut pas être utilisé pour la création d'un certificat sur une adresse IP (Exemple d'instances de test sans nom de domaine). Pour celà utiliser OpenSSL présenté rapidement ci-dessous.
Installation :

::

sudo apt-get install python3-certbot-apache


Lancer la commande cerbot
-------------------------

Lancer la commande suivante pour générer des certificats et des clés pour le nom de domaine que vous souhaitez mettre en HTTPS.

::

sudo certbot --apache --email monemail@mondomaine.fr

Prise en compte des nouvelles configurations Apache
---------------------------------------------------

Activer les modules ``ssl``, ``headers`` et ``rewrite`` puis redémarrer Apache :

::
Expand All @@ -42,6 +34,44 @@ Activer les modules ``ssl``, ``headers`` et ``rewrite`` puis redémarrer Apache

Les fichiers de configuration des sites TaxHub et UsersHub ne sont pas à modifier, ils seront automatiquement associés à la configuration HTTPS. En revanche, la configuration de GeoNature doit être mise à jour.

Utilisation de OpenSSL sur un environnement de test
---------------------------------------------------
Cette procédure a été testée sur Debian 12 et Apache2 avec l'utilisation d'un certificat auto-signé. Cela signifier qu'une alerte sera envoyé aux navigatuers indiquant un manque de sécurisation du serveur.
camillemonchicourt marked this conversation as resolved.
Show resolved Hide resolved
Cette méthode fonctionne avec un serveur sans nom de domaine.

Création d'un nouveau certificat de 365 jours (30 jours par défaut), de type X509 avec l'emplacement des fichiers de certificat et de clé privé.

::

sudo openssl req -new -x509 -days 365 -nodes -out /etc/ssl/certs/mailserver.crt -keyout /etc/ssl/private/mailserver.key

Sécurisation de la clé

::

sudo chmod 440 /etc/ssl/private/mailserver.key

Chargement du module ssl dans Apache

::

sudo a2enmod ssl

Modification de la configuration du VirtualHost en éditant le fichier ``/etc/apache2/sites-available/geonature.conf``

::

<VirtualHost *:443>
ServerName x.x.x.x
[…]
SSLEngine on
SSLCertificateFile /etc/ssl/certs/mailserver.crt
SSLCertificateKeyFile /etc/ssl/private/mailserver.key
</VirtualHost>

::

sudo apachectl restart

Configuration de l'application GeoNature
----------------------------------------
Expand Down