
Passé un site en Https afin d’en augmenté la sécurité
J’ai, comme quelques une des mes connaissances geek, souhaité créer mon propre cloud sur mon serveur dédié. Pour cela j’ai utilisé une solution de plus en plus rependu : ownCloud (dont je vous prépare un tuto d’installation). Seulement, afin d’aller jusqu’au bout de l’installation j’ai souhaité l’installé sur une URL accessible en Https. Mais je ne voulais pas pour autant acheté un certificat.
Je me suis donc tournée vers un certificat auto-signé (il n’est pas reconnu par une véritable autorité de certification), mais le chiffrement des échanges est bien présent.
Création du VitrualHost
Tout d’abord, si vous ne l’avez pas encore fait, vous devez créer un VirtualHost avec sa configuration en Https( port 443).
Pour cela rendez-vous dans le répertoire « /etc/apache2/sites-available » et créer un fichier monsite.com.conf
Puis renseigner les informations suivantes :
<VirtualHost *:443> ServerAdmin grillon.d@gmail.com DocumentRoot /home/mon-site/www/ # Activation du mode SSL SSLEngine On SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire # On indique ou est le certificat SSLCertificateFile /etc/ssl/certs/mon-site.crt SSLCertificateKeyFile /etc/ssl/private/mon-site.key </VirtualHost>
Activation des modules
Nous allons maintenant activer le module SSL dans Apache2 afin que celui-ci puisse être utilisé dans nos échanges ownCloud :
a2enmod ssl
On doit ensuite ajouter notre nouveau site aux sites actifs d’Apache2 :
a2ensite owncloud.https
Une dernière étape est à faire avant de redémarrer notre serveur apache2.
Génération du certificat auto-signé
Avant de généré nos clés, on crée un répertoire pour celles-ci :
cd /etc/apache2/ && mkdir CertMonSite && cd CertMonSite
On génère notre clé sur 1024 bits :
openssl genrsa -out monsite.key 1024
Création des « .key » et « .csr » :
openssl req -new -key monsite.key -out monsite.csr
On rempliera ensuite les données du certificat correctement, il est important de noter que l’absence du CommonName pourra générer des erreurs plus tards. On crée ensuite le fichier de certificat :
openssl x509 -req -days 365 -in monsite.csr -signkey monsite.key -out monsite.crt
On copiera ces certificats là on tous les certificats sont stockés :
cp monsite.crt /etc/ssl/certs cp monsite.key /etc/ssl/private
Redémarrez d’Apache2 après avoir vérifié sa configuration
apachectl configtest service apache2 restart
On pourra ensuite vérifier dans notre navigateur que le HTTPS est bien utilisé en nous rendant sur l’interface web de notre ownCloud :
Bien que le certificat soit ici auto-signé (il n’est pas reconnu par une véritable autorité de certification), le chiffrement des échanges est bien présent.
J’ai personnellement ajouté dans mon VirtualHost une redirection vers mon site personnel si l’on se connecte en http. Même si l’on peu forcé ownCloud à se connecter en https, deux précautions valent mieux qu’une.
Leave a Reply
Vous devez être connecté(e) pour rédiger un commentaire.