s============================================================== Guide d'installation, configuration et mise-à-jour de Owncloud ==============================================================

Author:Patrick Hetu

1 Serveur

1.1 Installation

Notez que l'ensemble des commandes doivent être exécutées en tant que super utilisateur.

1.1.1 Via le code source
1.1.1.1 Dépendances
apt-get update
apt-get install mysql-server apache2 php5 php5-gd php5-imagick php5-ldap php5-mcrypt php5-curl git bzip2
1.1.1.2 Installation

Vérification de la dernière version disponible et sauvegarde dans la variable VERSION:

VERSION=$(wget https://owncloud.org/changelog -O - |\
          grep -o "Version \([0-9.]\+\)" |\
          head -n 1 |\
          sed -e "s/Version //")
echo $VERSION

Télécharger l'archive compressé du code source et sa somme sha256:

wget https://download.owncloud.org/community/owncloud-$VERSION.tar.bz2
wget https://download.owncloud.org/community/owncloud-$VERSION.tar.bz2.sha256

Vérifier la somme:

sha256sum -c owncloud-$VERSION.tar.bz2.sha256 < owncloud-$VERSION.tar.bz2

Si la somme est correcte, extraire l'archive dans le dossier courant:

tar jxvf owncloud-$VERSION.tar.bz2

Rendre l'outil en ligne de commande exécutable.

chmod a+x owncloud/occ
1.1.2 ou via le dépôt Deb
Pour installer owncloud depuis un dépôt Debian/Ubuntu, veuillez suivre les instructions à la page::
https://software.opensuse.org/download/package?project=isv:ownCloud:community&package=owncloud

Puis installer le paquet:

apt-get update
apt-get install owncloud

1.2 Configuration

1.2.1 Mysql

Première étape, création de la base de données et d'un utilisateur avec les commandes:

mysql -e "create database owncloud;"
mysql -e "grant usage on *.* to owncloud@localhost identified by 'VOTRE_MOT_DE_PASSE';"
1.2.2 Owncloud

Les données de configuration de owncloud spécifique à l'AUF suivantes doivent être ajouter dans le fichier owncloud/config/config.php:

'datadirectory' => '/srv/data',
'ldapIgnoreNamingRules' => false,
'mail_domain' => 'auf.org',
'trusted_domains' =>
  array (
    0 => 'nuage.auf.org',
  ),
1.2.3 Apache

Apache doit être configurer avec les VirtualHost suivant:

<VirtualHost default:80>
        ServerName      nuage.auf.org
        Redirect permanent /  `https://nuage.auf.org <https://nuage.auf.org>`_
</VirtualHost>

<IfModule mod\_ssl.c>
<VirtualHost default:443>
        ServerName  nuage.auf.org
        DocumentRoot /var/www/owncloud
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /var/www/owncloud>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride All
                Order allow,deny
                allow from all
        </Directory>

ErrorLog ${APACHE\_LOG\_DIR}/nuage.auf.org\_error.log
CustomLog ${APACHE\_LOG\_DIR}/nuage.auf.org\_access.log combined

LogLevel warn
<FilesMatch "\\.(cgi|shtml|phtml|php)$">
        SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
        SSLOptions +StdEnvVars
</Directory>

</VirtualHost>
</IfModule>

Puis les modules ssl et rewrite doivent être activés:

a2enmod ssl
a2enmod rewrite
service apache2 reload
1.2.4 AUF
1.2.4.1 LDAP

Configurer ldap dans l'interface d'administration: https://nuage.auf.org/index.php/settings/admin

1.2.4.2 Theme

Le fichier owncloud/core/templates/login.php doit être copié vers owncloud/themes/auf/core/templates/ et la ligne suivante doit être ajouter avant le formulaire de connexion:

<a href="/mellon/login?ReturnTo=https%3A%2F%2F<?php p($_SERVER['HTTP_HOST']); ?>%2F%3Fapp%3Duser_servervars"
   onMouseOver="document.idauf_bouton.src='/themes/auf/core/img/idauf_bouton_survol.png';"
   onMouseOut="document.idauf_bouton.src='/themes/auf/core/img/idauf_bouton.png';">
     <img id="idauf_bouton" width="200" height="32" src="/themes/auf/core/img/idauf_bouton.png" />
</a>

Puis les fichiers images doivent être téléchargés dans leurs répertoires respectifs.

1.2.4.3 SSO
Pour rendre disponible le modmellon depuis owncloud vous devez Installer le plugin suivant::
https://apps.owncloud.com/content/show.php/user_servervars?content=158863

System Message: WARNING/2 (<string>, line 197)

Definition list ends without a blank line; unexpected unindent.

dans le dossier apps/ et l'activer avec la commande:

owncloud/occ app:enable user_servervars

et finir sa configuration dans l'interface d'administration.

1.2.4.4 Apps

Les applications suivantes doivent aussi être activées:

owncloud/occ app:enable user_ldap
owncloud/occ app:enable activity

1.3 Mise-à-jour

Faire les mêmes étapes que lors de l'installation pour le téléchargement. Démarrer le mode "Maintenance":

owncloud/occ maintenance:mode

Puis faire une sauvegarde de la base de données en cas de problème:

NOW=$(date +"%m_%d_%Y")
mysqldump owncloud > owncloud_backup_$NOW.sql

Corriger les permissions du répertoire:

chown www-data:www-data owncloud/

Copier les fichiers aux bons endroits:

cp -rf $OLD/config/ owncloud
cp -rf $OLD/theme/ owncloud/
cp -r $OLD/apps/user_servervars owncloud/apps/
cp $OLD/data owncloud/

Lancer le script de mise-à-jour de owncloud:

owncloud/occ upgrade

Mettre le dossier en production et fermer le mode "Maintenance":

mv owncloud owncloud-prod/
owncloud-prod/occ maintenance:mode

1.4 Vérification

Des applications activées:

owncloud/occ app:list

Il faut vérifier que les modules suivantes sont bien activés:

  • activity
  • files_pdfviewer
  • user_ldap
  • user_servervars

Vérification de la configuration LDAP

mysql owncloud -e "select * from oc_appconfig where appid='user_ldap';"

Vérification de la configuration de user_servervars

mysql owncloud -e "select * from oc_appconfig where appid='user_servervars;"