OwnCloud vous offre la possibilité d'exécuter un service de stockage en nuage que vous administrez et contrôlez vous-même. La dernière version, ownCloud 9.0, est sortie le 8 mars.
Installer ownCloud
Regardons le processus d'installation d'ownCloud 9.0 sur un système exécutant Debian Jessie.
1. Installer les packages requis et recommandés
Commencez par installer les progiciels de prise en charge. OwnCloud utilise PHP et recommande MariaDB comme base de données. En tant que root, installez les packages suivants avec apt-get :
apt-get install mariadb-server mariadb-client apache2 libapache2-mod-php5 php5-json php5-gd php5-mysql php5-curl php5-intl php5-mcrypt php5-imagick
2. Télécharger
Ensuite, téléchargez le package ownCloud 9.0. Dans cette étape, nous téléchargerons également le hachage SHA256, la signature PGP publique d'ownCloud et la signature PGP du package softare. Nous les utiliserons dans les étapes suivantes pour vérifier et authentifier le logiciel avant de l'installer. SHA256 est l'algorithme de vérification recommandé, mais si vous préférez vérifier à l'aide de MD5, ce hachage est également disponible en téléchargement sur le site Web d'ownCloud.
Ces commandes utilisent wget pour télécharger les fichiers, mais vous pouvez tout aussi bien les télécharger en saisissant les URL dans votre navigateur Web.
wget https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2
wget https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2.sha256
wget https://owncloud.org/owncloud.asc
wget https://download.owncloud.org/community/owncloud-9.0.0.tar.bz2.asc
3. Vérifier l'intégrité du package téléchargé
Vérifiez que le hachage SHA256 de l'archive logicielle téléchargée correspond à la somme fournie par ownCloud :
sha256sum -c owncloud-9.0.0.tar.bz2.sha256
Sortie réussie :
owncloud-9.0.0.tar.bz2: OK
Si les sommes ne correspondent pas, vous ne devriez pas continuer ! Assurez-vous que votre téléchargement est vérifié avant d'effectuer les étapes restantes.
4. Importer la clé publique PGP d'ownCloud dans le trousseau de clés GnuPG
Ensuite, nous utiliserons GnuPG pour vérifier l'authenticité du progiciel. Pour ce faire, importez d'abord la clé PGP publique d'ownCloud dans votre trousseau de clés GnuPG.
gpg --import owncloud.asc
Sortie réussie :
[...]
gpg: Total number processed: 1
gpg: imported: 1 (RSA: 1)
5. Vérifier l'authenticité de la signature du colis
Ensuite, utilisez GnuPG pour vérifier la signature du progiciel. Il vérifiera la signature par rapport à l'archive, en utilisant la clé que vous avez importée à l'étape précédente.
gpg --verify owncloud-9.0.0.tar.bz2.asc
Sortie réussie :
[...]
gpg :Bonne signature de "ownCloud <[email protected]>"
[...]
Vous recevrez un avertissement indiquant que la signature d'ownCloud n'est pas encore approuvée. Faire confiance à la signature est une étape facultative que vous devez effectuer vous-même. Pour plus d'informations sur l'approbation des clés publiques, reportez-vous au chapitre 3 du GNU Privacy Handbook.
6. Extraire le package logiciel
Une fois le téléchargement vérifié et authentifié, extrayez-le.
tar xjvf owncloud-9.0.0.tar.bz2
7. Copiez le répertoire ownCloud dans la racine du document Apache2
Ensuite, copiez le nouveau owncloud répertoire et son contenu dans la racine de votre document Web. Dans Debian 8, Apache2 utilise /var/www/html comme racine de document par défaut ; vous pouvez personnaliser cet emplacement si vous le souhaitez. Dans ce tutoriel, nous placerons owncloud directement dans /var/www .
cp -r owncloud /var/www
8. Ajouter owncloud aux sites Apache2 disponibles
Nous pouvons maintenant commencer à configurer Apache2. Créez une copie du fichier de configuration du site par défaut, /etc/apache2/sites-available/000-default.conf , en le nommant owncloud.conf .
cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/owncloud.conf
9. Modifier la configuration du site ownCoud
En tant que root, ouvrez /etc/apache2/sites-available/owncloud.conf dans un éditeur de texte. Effectuez les modifications suivantes :
- Recherchez le nom du serveur ligne et décommentez-la en supprimant le premier #
- Modifier le nom du serveur valeur pour correspondre au nom d'hôte qui apparaîtra dans l'URL que vous utilisez pour accéder au serveur :par exemple, www.mypersonaldomain.com ou monnom d'hôte
- Ajoutez les lignes suivantes à la fin du fichier, en modifiant le nom du répertoire si nécessaire pour se conformer à l'emplacement où vous avez placé owncloud :
Alias /owncloud "/var/www/owncloud/"
<Directory /var/www/owncloud/>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/owncloud
SetEnv HTTP_HOME /var/www/owncloud
</Directory>
10. Fichier de configuration de lien symbolique dans /etc/apache2/sites-enabled
Créez un lien symbolique vers la configuration de votre site dans le répertoire /etc/apache2/sites-enabled :
ln -s /etc/apache2/sites-available/owncloud.conf /etc/apache2/sites-enabled/owncloud.conf
11. Activer les modules Apache2
OwnCloud nécessite mod_rewrite . Activez-le :
a2enmod rewrite
Les en-têtes module est recommandé. Activez-le :
a2enmod headers
L'environnement , répertoire , et mime modules sont également recommandés. Ceux-ci sont généralement activés par défaut, mais vous pouvez les activer manuellement pour être sûrs :
a2enmod env
a2enmod dir
a2enmod mime
12. Activez la configuration du site ownCloud et redémarrez Apache2
Activez la configuration de votre site :
a2ensite owncloud
Redémarrez le service Apache2 pour que vos modifications prennent effet :
service apache2 restart
13. Définir les autorisations pour les fichiers ownCloud
Avant de pouvoir commencer à configurer ownCloud, vous devez vous assurer que l'utilisateur/le groupe HTTP a la permission d'apporter des modifications aux fichiers d'ownCloud. Dans Debian, cet utilisateur et ce groupe sont nommés www-data . Faites-en le propriétaire du owncloud répertoire et tout son contenu.
chown -R www-data:www-data /var/www/owncloud/
Ensuite, affinez ces autorisations. Les autorisations exactes pour l'installation d'owncloud sont :
- Tous les fichiers doivent être en lecture-écriture pour le propriétaire du fichier, en lecture seule pour le propriétaire du groupe et non accessibles aux autres
- Tous les répertoires doivent être exécutables, en lecture-écriture pour le propriétaire du répertoire et en lecture seule pour le propriétaire du groupe
- Les applications/ le répertoire doit appartenir à [utilisateur HTTP] :[groupe HTTP]
- La config/ le répertoire doit appartenir à [utilisateur HTTP] :[groupe HTTP]
- Les thèmes/ le répertoire doit appartenir à [utilisateur HTTP] :[groupe HTTP]
- Les actifs/ le répertoire doit appartenir à [utilisateur HTTP] :[groupe HTTP]
- Les données/ le répertoire doit appartenir à [utilisateur HTTP] :[groupe HTTP]
- Le [ocpath]/.htaccess le fichier doit appartenir à root :[groupe HTTP]
- Les données/.htaccess le fichier doit appartenir à root :[groupe HTTP]
- Les deux .htaccess les fichiers doivent être en lecture-écriture pour le propriétaire du fichier, en lecture seule pour le propriétaire du groupe et non accessibles aux autres
Pour vous conformer à cette structure d'autorisations, copiez et collez le script suivant dans un nouveau fichier. Dans cet exemple, le nom du fichier de script sera /root/oc-perms.sh . Modifier le ocpath si vous utilisez un emplacement personnalisé.
#!/bin/bash
ocpath='/var/www/owncloud'
htuser='www-data'
htgroup='www-data'
rootuser='root'
printf "Creating possible missing Directories\n"
mkdir -p $ocpath/data
mkdir -p $ocpath/assets
printf "chmod Files and Directories\n"
find ${ocpath}/ -type f -print0 | xargs -0 chmod 0640
find ${ocpath}/ -type d -print0 | xargs -0 chmod 0750
printf "chown Directories\n"
chown -R ${rootuser}:${htgroup} ${ocpath}/
chown -R ${htuser}:${htgroup} ${ocpath}/apps/
chown -R ${htuser}:${htgroup} ${ocpath}/config/
chown -R ${htuser}:${htgroup} ${ocpath}/data/
chown -R ${htuser}:${htgroup} ${ocpath}/themes/
chown -R ${htuser}:${htgroup} ${ocpath}/assets/
chmod +x ${ocpath}/occ
printf "chmod/chown .htaccess\n"
if [ -f ${ocpath}/.htaccess ]
then
chmod 0644 ${ocpath}/.htaccess
chown ${rootuser}:${htgroup} ${ocpath}/.htaccess
fi
if [ -f ${ocpath}/data/.htaccess ]
then
chmod 0644 ${ocpath}/data/.htaccess
chown ${rootuser}:${htgroup} ${ocpath}/data/.htaccess
fi
Rendre le script exécutable :
chmod u+x /root/oc-perms.sh
Exécutez-le :
/root/oc-perms.sh
14. Créer une base de données et un utilisateur de base de données ownCloud
Ensuite, préparez une base de données pour ownCloud à utiliser. Connectez-vous au client MariaDB en tant qu'utilisateur racine de la base de données :
mysql -u root -p
Le mot de passe de l'utilisateur racine de la base de données vous sera demandé. Si vous avez installé MariaDB pour la première fois à l'étape 1, vous avez été invité à créer ce mot de passe. Entrez-le maintenant. Vous serez placé à l'invite du client MariaDB.
Choisissez un nom pour votre base de données owncloud (ocdbname ), l'utilisateur de la base de données owncloud (ocuser ) et le mot de passe de cet utilisateur (ocuserpw ). Exécutez ensuite les deux commandes suivantes à l'invite MariaDB, en remplaçant les valeurs entre crochets par les vôtres :
CREATE DATABASE [ocdbname];
GRANT ALL ON [ocdbname].* TO [ocuser]@localhost IDENTIFIED BY '[ocuserpw]';
Quittez le client de base de données :
quit
15. Configurer le client ownCloud
Naviguez dans un navigateur Web vers votre installation ownCloud, par ex. http://myhostname/owncloud . Des champs vous seront présentés où vous pourrez créer un compte administrateur ownCloud et saisir les valeurs de configuration de la base de données.
Nom d'utilisateur et Mot de passe sont des valeurs pour l'utilisateur qui administrera l'installation ; réglez-les sur ce que vous voulez.
Utilisateur de la base de données , Mot de passe de la base de données , et Nom de la base de données doit être conforme à [ocuser] , [ocuserpw] , et [nomocdb] valeurs que vous avez créées à l'étape précédente.
Cliquez sur Terminer la configuration.
Toutes nos félicitations! Vous êtes prêt à commencer à utiliser ownCloud.
Facultatif :Utiliser SSL
Il est conseillé de crypter le trafic réseau qui entrera et sortira d'ownCloud. Voici quelques étapes pour rendre HTTPS opérationnel avec votre installation.
1. Activer SSL dans Apache2
a2enmod ssl
a2ensite default-ssl
2. Ajouter la configuration SSL Virtualhost à owncloud.conf
Apache2 est livré avec une configuration de site SSL par défaut, située dans /etc/apache2/sites-available/default-ssl.conf . Copiez le contenu de ce fichier et collez-le en haut de owncloud.conf . Dans
Ajouter un nom de serveur ligne avec votre nom d'hôte comme valeur, par exemple :
ServerName myhostname
Modifier le DocumentRoot ligne pour refléter le répertoire parent de l'installation d'owncloud, par exemple :
DocumentRoot /var/www/
3. Générer un nouveau couple certificat/clé, si nécessaire
Le
SSLEngine on
SSLCertificateFile /etc/ssl/certs/ssl-cert-snakeoil.pem
SSLCertificateKeyFile /etc/ssl/private/ssl-cert-snakeoil.key
Le SSLCertificateFile et SSLCertificateKeyFile les valeurs pointent vers des fichiers qui devraient déjà exister sur votre système, installés dans le cadre de la valeur par défaut openssl et ssl-cert paquets. Cependant, vous devrez peut-être régénérer ces fichiers dans certaines circonstances - si vous apportez des modifications à la configuration dans /etc/hosts , par exemple.
Si vous avez besoin de régénérer ces fichiers, utilisez la commande :
make-ssl-cert generate-default-snakeoil --force-overwrite
Pour plus d'informations et pour résoudre les erreurs de certificat, reportez-vous aux notes dans /usr/share/doc/apache2/README.Debian.gz .
4. Recharger la configuration Apache2
service apache2 reload
Vous devriez maintenant pouvoir accéder à votre installation ownCloud en utilisant un https:// URL. Notez que vous recevrez un avertissement dans votre navigateur Web car votre certificat est auto-signé. Vous devrez ajouter manuellement votre site en tant qu'exception avant d'établir la connexion sécurisée.