Vous êtes sur la page 1sur 3

Scuriser ownCloud par HTTPS/SSL

12 Fv 2013 Publi par Florian BURNEL 24 Comments

Sommaire [-]

I. Prsentation
II. Cration du VitrualHost
III. Activation des nouveaux modules
IV. Cration du certificat auto-sign

I. Prsentation
Dans ce tutoriel, nous allons apprendre faire fonctionner ownCloud travers une couche
SSL en transformant les changes HTTP en son homologue scuris HTTPS. Cela est
notamment une obligation pour la communication entre le serveur ownCloud et les ownCloud
clients qui servent la synchronisation des clients avec les rpertoires des serveurs.

II. Cration du VitrualHost


Sous Apache2, nous allons commencer par crer un VirtualHost ("site") avec une
configuration qui fonctionnera avec le HTTPS (port 443)

Dans le rpertoire /etc/apache2/sites-available , nous crerons un nouveau fichier


owncloud.https et saisirons les lignes suivantes

NameVirtualHost *:443
# Hte virtuel qui coute sur le port HTTPS 443
<VirtualHost *:443>
DocumentRoot /var/www/
# Activation du mode SSL
SSLEngine On
SSLOptions +FakeBasicAuth +ExportCertData +StrictRequire
# On indique ou est le certificat
SSLCertificateFile /etc/ssl/certs/owncloud.crt
SSLCertificateKeyFile /etc/ssl/private/owncloud.key
</VirtualHost>

III. Activation des nouveaux modules


Nous allons maintenant activer le module SSL dans Apache2 pour 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 dernire tape est faire avant de rallumer notre serveur apache2.

IV. Cration du certificat auto-sign


Maintenant nous pouvons accder Owncloud via le HTTPS, seulement on peut encore
passer aussi via le HTTP, nous allons donc le forcer utiliser le HTTPS. Il faut aller modifier
un fichier PHP dans Owncloud pour forcer l'accs en HTTPS. Dans
"/var/www/config/config.php", ajouter : force ssl => true.

Nous allons ensuite passer la gnration de nos cls, on cre un rpertoire pour les cls :

cd /etc/apache2/ && mkdir CertOwncloud && cd CertOwncloud

On gnre notre cl sur 1024 bits :

openssl genrsa -out owncloud.key 1024

Cration des ".key" et ".csr" :

openssl req -new -key owncloud.key -out owncloud.csr

On rempliera ensuite les donnes du certificat correctement, il est important de noter que
l'absence du CommonName pourra gnrer des erreurs plus tards. On cre ensuite le fichier
de certificat :

openssl x509 -req -days 365 -in owncloud.csr -signkey owncloud.key -out
owncloud.crt

On copiera ensuite nos certificats l on tous les certificats sont stocks :

cp owncloud.crt /etc/ssl/certs
cp owncloud.key /etc/ssl/private

Procdez au redmarrage d'Apache2 aprs avoir vrifi sa configuration

apachectl configtest
service apache2 restart

On pourra ensuite vrifier 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 vritable autorit de
certification), le chiffrement des changes est bien prsent.