Procédure de déploiement OwnCloud avec authentification Active Directory

OwnCloud est une plateforme de stockage et de partage de fichiers en ligne, similaire à Dropbox ou Google Drive, mais qui permet aux utilisateurs d’héberger leurs propres données sur un serveur privé. Cela offre plus de contrôle sur la sécurité, la confidentialité et la gestion des fichiers. 

  • Principales fonctionnalités d’OwnCloud
  1. Stockage et partage de fichiers : Permet de stocker des fichiers et de les partager avec d’autres utilisateurs via des liens sécurisés.
  2. Synchronisation multi-appareils : Compatible avec Windows, macOS, Linux, Android et iOS pour accéder aux fichiers partout.
  3. Contrôle d’accès : Gestion avancée des permissions pour définir qui peut voir, modifier ou télécharger des fichiers.
  4. Chiffrement et sécurité : Prend en charge le chiffrement des fichiers pour protéger les données.

1. Installation d’OwnCloud

a) Installation Apache, PHP, MariaDB

apt update && apt upgrade -y
apt install apache2 mariadb-server libapache2-mod-php php php-mysql php-xml php-curl php-zip php-gd php-mbstring php-intl php-imagick unzip wget curl gnupg -y

b) Création de la base de données OwnCloud

mariadb -u root -p

Dans MariaDB :

CREATE DATABASE owncloud;
CREATE USER 'owncloud'@'localhost' IDENTIFIED BY 'Btssio64';
GRANT ALL PRIVILEGES ON owncloud.* TO 'owncloud'@'localhost';
FLUSH PRIVILEGES;
EXIT;

c) Téléchargement et déploiement d’OwnCloud

cd /var/www/
wget https://download.owncloud.org/community/owncloud-latest.zip
unzip owncloud-latest.zip
chown -R www-data:www-data owncloud
chmod -R 755 owncloud

d) Configuration d’Apache

Créer un fichier /etc/apache2/sites-available/owncloud.conf :

<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/owncloud
ServerName owncloud.local

<Directory /var/www/owncloud>
Options +FollowSymlinks
AllowOverride All
Require all granted
</Directory>

ErrorLog ${APACHE_LOG_DIR}/owncloud_error.log
CustomLog ${APACHE_LOG_DIR}/owncloud_access.log combined
</VirtualHost>

Puis :

a2ensite owncloud.conf
a2enmod rewrite headers env dir mime
systemctl restart apache2

2. Configuration initiale via interface web

Accédez à : http://<ip_serveur>/owncloud

  • Créer l’utilisateur admin / mot de passe Btssio64*
  • Chemin vers les fichiers : /var/www/owncloud/data
  • Utiliser la base de données existante :
    • utilisateur : owncloud
    • mot de passe : Btssio64
    • base : owncloud

3. Intégration LDAP / Active Directory

a) Installer l’application LDAP

Dans OwnCloud :

  • Menu Applications → activer LDAP user and group backend

b) Configuration LDAP :

  • URL du serveur LDAP : ldap://<ip_AD>
  • Base DN : par exemple dc=gourmetco,dc=local
  • Utilisateur LDAP : CN=owncloud,OU=Service,DC=gourmetco,DC=local
  • Mot de passe : Btssio64

c) Filtrage des utilisateurs :

  • Limiter aux groupes :
    • Comptables
    • Ressources Humaines
  • Groupe administrateur :
    • Administrateurs Owncloud

d) Test de connexion et import

  • Valider la configuration LDAP
  • Vérifier la synchronisation des utilisateurs

4. Tests de fonctionnement

  • Accès depuis le réseau simulé (lycée)
  • Connexion avec un utilisateur AD
  • Accès aux partages de fichiers OwnCloud

5. Trusted domains (facultatif)

Si OwnCloud renvoie une erreur de domaine non approuvé :

'trusted_domains' =>
array (
0 => 'localhost',
1 => 'ip_publique',
2 => 'nomdomaine.externe',
),

Fichier : /var/www/owncloud/config/config.php