L’ins­tal­la­tion de Nextcloud sous Debian se fait en quelques étapes. En plus de l’ins­tal­la­tion, il est né­ces­saire de protéger la solution Cloud par dif­fé­rents mé­ca­nismes de sécurité.

Nextcloud pour Debian

Nextcloud est une solution de Cloud computing qui vous offre de nom­breuses pos­si­bi­li­tés aussi bien à des fins privées que com­mer­ciales. Parmi les nombreux avantages du logiciel, on peut citer les fortes ca­rac­té­ris­tiques de sécurité pour la pro­tec­tion des données, comme le chif­fre­ment SSL/TLS, l’au­then­ti­fi­ca­tion à deux facteurs et la con­for­mité au RGPD, ainsi que le choix entre des serveurs privés locaux ou des serveurs hôtes ex­ter­na­li­sés. Nextcloud et nom­breuses de ses al­ter­na­tives prennent en charge tous les systèmes d’ex­ploi­ta­tion courants et offre une in­té­gra­tion facile de nombreux services.

Dans ce qui suit, nous vous ex­pli­quons pas à pas comment con­fi­gu­rer Nextcloud sous Debian 12. Pour cela, vous ins­tal­le­rez un serveur web Apache2, un serveur MariaDB et PHP 8.2. Pour la sécurité, nous vous montrons comment con­fi­gu­rer un Un­com­pli­ca­ted Firewall (UFW) et les cer­ti­fi­cats SSL/TLS né­ces­saires.

Conseil

Si vous souhaitez installer Nextcloud sous Ubuntu, vous trouverez dans notre Digital Guide les ins­truc­tions ap­pro­priées pour la con­fi­gu­ra­tion de Nextcloud sous Ubuntu 22.04 cor­res­pon­dantes. Nous vous pré­sen­tons également l’ins­tal­la­tion de Nextcloud avec Docker.

Quelles con­di­tions doivent être remplies ?

Pour l’ins­tal­la­tion de Nextcloud sous Debian 12, peu de con­di­tions préa­lables sont né­ces­saires. Vous avez besoin d’un serveur sur lequel Debian 12 est déjà installé. Pour cela, il faut au moins 4 Go de RAM et deux CPU. Il est également important que vous disposiez d’un accès uti­li­sa­teur non root avec des droits d’ad­mi­nis­tra­teur et que vous con­fi­gu­riez un nom de domaine qui puisse faire référence à l’adresse IP du serveur.

Installer le serveur Web Apache2

Tout d’abord, installez un serveur Web Apache2. Pour cela, mettez à jour l’index des paquets Debian afin de pouvoir té­lé­char­ger la dernière version. Utilisez pour cela la commande apt update :

sudo apt update
bash

Ensuite, installez le dernier paquet d’Apache2 à l’aide de la commande suivante :

sudo apt install apache2
bash

Confirmez l’ins­tal­la­tion avec la touche [Y] et appuyez ensuite sur [Entrée] pour lancer l’ins­tal­la­tion.

Après l’ins­tal­la­tion, vérifiez l’état du service avec les commandes suivantes :

sudo systemctl is-enabled apache2
sudo systemctl status apache2
bash

Sous la première commande, vous devriez voir que le service est au­to­ma­ti­que­ment lancé lorsque vous démarrez le système. Le statut « active » vous indique qu’Apache2 est prêt à être utilisé.

Con­fi­gu­rer le pare-feu

Avec le pare-feu approprié, vous protégez votre système et vos données. Il est re­com­mandé d’utiliser le pare-feu non simplifié (UFW), que vous pouvez con­fi­gu­rer par défaut. Pour ce faire, vous devez ouvrir les ports pour OpenSSH, HTTP ainsi que HTTPS. Installez d’abord le paquet UFW avec la commande suivante :

sudo apt install ufw
bash

Confirmez à nouveau avec [Y] et terminez l’ins­tal­la­tion avec [Entrée]. Ensuite, activez OpenSSH et UFW avec ces commandes :

sudo ufw allow OpenSSH
sudo ufw enable
bash

Pour lancer UFW, confirmez avec [Y]. Le message « Firewall is active and enabled on system startup » (le pare-feu est actif et activé au démarrage du système) apparaît alors. Ensuite, ajoutez le port HTTP et le port HTTPS qui doivent être utilisés par le serveur Web. Pour cela, exécutez cette commande :

sudo ufw allow "WWW Full" (autoriser le WWW complet)
bash

Rechargez ensuite UFW :

sudo ufw reload
bash

Pour voir les règles activées, consultez le statut de UFW. Ici, WWW Full devrait être activé.

sudo ufw status
bash
Managed Nextcloud de IONOS Cloud
Tra­vail­lez en équipe dans votre propre Cloud
  • Sécurité des données
  • Outils de col­la­bo­ra­tion intégrés
  • Hé­ber­ge­ment dans des data centers européens

Activer PHP 8.2

Pour les meil­leures per­for­mances et une com­pa­ti­bi­lité maximale, Nextcloud lui-même re­com­mande PHP 8.2, qui est inclus par défaut dans Debian 12, de sorte qu’il suffit d’installer les paquets né­ces­saires. Voici la commande cor­res­pon­dante :

sudo apt install -y php php-curl php-cli php-mysql php-gd php-common php-xml php-json php-intl php-pear php-imagick php-dev php-common php-mbstring php-zip php-soap php-bz2 php-bcmath php-gmp php-apcu libmagickcore-dev
bash

Confirmez avec [Y] et [Entrée]. Ensuite, vérifiez la version de PHP et activez les ex­ten­sions :

php --version
php -m
bash

Ouvrez main­te­nant le fichier de con­fi­gu­ra­tion de PHP avec l’éditeur Nano :

sudo nano /etc/php/8.2/apache2/php.ini
bash

Adaptez ensuite la con­fi­gu­ra­tion à vos besoins. Selon la manière dont vous souhaitez utiliser Nextcloud avec Debian 12, d’autres valeurs peuvent être re­com­man­dées. Dans ce cas, modifiez les pa­ra­mètres à votre con­ve­nance. Les commandes res­pec­tives se pré­sen­tent comme suit.

Dans la première étape, réglez le fuseau horaire :

data.timezone = Europe/Amsterdam
bash

Modifiez les pa­ra­mètres memory_limit, upload_max_filesize, post-max_size et max_execution_time :

memory_limit = 512M
upload_max_filesize = 500M
post_max_size = 600M
max_execution_time = 300
bash

Activez main­te­nant file_uploads et allow_url_fopen. Dans les deux cas, la valeur doit être définie sur « On » :

file_uploads = On
allow_url_fopen = On
bash

Dé­sac­ti­vez main­te­nant display_errors et output_buffering et réglez les valeurs res­pec­tives sur « Off » :

display_errors = Off
output_buffering = Off
bash

Activez PHP OPCache avec cette commande :

zend_extension=opcache
bash

Ajoutez la con­fi­gu­ra­tion dans la section opcache re­com­man­dée par Nextcloud pour Debian 12. Voici comment :

opcache.enable = 1
opcache.interned_strings_buffer = 8
opcache.max_accelerated_files = 10000
opcache.memory_consumption = 128
opcache.save_comments = 1
opcache.revalidate_freq = 1
bash

Pour finir, en­re­gis­trez le fichier et quittez l’éditeur Nano. Re­dé­mar­rez main­te­nant le service Apache2 :

sudo systemctl restart apache2
bash

Mettre en place le serveur MariaDB

Nextcloud utilise un serveur MariaDB comme base de données. Vous pouvez l’installer et le vérifier avec ces commandes :

sudo apt install mariadb-server
bash

Confirmez avec [Y] et [Entrée]. Une fois que l’ins­tal­la­tion est réussie, tapez le code suivant :

sudo systemctl is-enabled mariadb
sudo systemctl status mariadb
bash

Si le serveur fonc­tionne cor­rec­te­ment, sau­ve­gar­dez le système. Utilisez la commande suivante pour créer un mot de passe root, supprimer les uti­li­sa­teurs anonymes et effacer la base de données de test :

sudo mariadb-secure-installation
bash

Effectuez les réglages en appuyant sur [Y] pour accepter et sur [N] pour refuser.

Créer une base de données et des uti­li­sa­teurs

Créez ensuite une nouvelle base de données ainsi que l’uti­li­sa­teur cor­res­pon­dant. Pour vous connecter au serveur MariaDB, utilisez cette commande et saisissez votre mot de passe root :

sudo mariadb -u root -p
bash

Utilisez les commandes suivantes pour créer une nouvelle base de données, un uti­li­sa­teur et le mot de passe cor­res­pon­dant :

CREATE DATABASE nextcloud_db;
CREATE USER nextclouduser@localhost IDENTIFIED BY 'votremotdepasse';
GRANT ALL PRIVILEGES ON nextcloud_db.* TO nextclouduser@localhost;
FLUSH PRIVILEGES;
bash

Remplacez 'votremotdepasse' par votre propre mot de passe, de pré­fé­rence avec une forte sécurité. Enfin, vérifiez si « next­clou­du­ser » a accès à la base de données « nextcloud_db » :

``bash SHOW GRANTS FOR next­clou­du­ser@localhost;

## Télécharger les codes sources actuels
 
Téléchargez maintenant les codes sources actuels pour pouvoir utiliser Nextcloud de manière optimale sous Debian 12. Utilisez d’abord cette commande :
```bash
sudo apt install curl unzip -y

Ensuite, allez dans le ré­per­toire /var/www et té­lé­char­gez le code source le plus récent :

cd /var/www/
curl -o nextcloud.zip https://download.nextcloud.com/server/releases/latest.zip
bash

Dé­com­pres­sez le fichier et changez ensuite les pro­prié­taires du ré­per­toire sous www-data :

unzip nextcloud.zip
sudo chown -R www-data:www-data nextcloud
bash

Con­fi­gu­rer l’hôte Apache2

Main­te­nant, con­fi­gu­rez un hôte virtuel Apache2. Pour cela, utilisez cette commande Nano :

sudo nano /etc/apache2/sites-available/nextcloud.conf
bash

Per­son­na­li­sez le nom de domaine et les deux pa­ra­mètres ErrorLog et CustomLog. Pour cela, remplacez le caractère de rem­pla­ce­ment « exemple » par votre nom de domaine.

<VirtualHost *:80> 
    ServerName nextcloud.exemple.io 
    DocumentRoot /var/www/nextcloud/ 
 
    # log files 
    ErrorLog /var/log/apache2/files.exemple.io-error.log 
    CustomLog /var/log/apache2/files.exemple.io-access.log combined 
 
    <Directory /var/www/nextcloud/> 
        Options +FollowSymlinks 
        AllowOverride All 
 
        <IfModule mod_dav.c> 
            Dav off 
        </IfModule> 
 
        SetEnv HOME /var/www/nextcloud 
        SetEnv HTTP_HOME /var/www/nextcloud 
    </Directory> 
</VirtualHost>
bash

En­re­gis­trez les mo­di­fi­ca­tions et quittez l’éditeur. Activez ensuite la con­fi­gu­ra­tion avec la commande suivante et vérifiez-la :

sudo a2ensite nextcloud.conf
sudo apachectl configtest
bash

Si vous obtenez le résultat « syntaxe OK », re­dé­mar­rez Apache2 et appliquez-lui la con­fi­gu­ra­tion de l’hôte :

sudo systemctl restart apache2
bash

Sé­cu­ri­sa­tion avec SSL/TLS

Sans autre con­fi­gu­ra­tion, vous utilisez main­te­nant Nextcloud sur Debian 12 via un protocole HTTP non sécurisé. Pour protéger vos données, il est donc pré­fé­rable de con­fi­gu­rer HTTPS. Pour cela, utilisez cette commande :

sudo apt install certbot python3-certbot-apache
bash

Générez ensuite un cer­ti­fi­cat SSL. Pour cela, remplacez à nouveau le caractère de rem­pla­ce­ment « exemple » par votre nom de domaine réel :

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email user@exemple.io -d nextcloud.exemple.io
bash

Fin de l’ins­tal­la­tion de Nextcloud sous Debian 12

Main­te­nant, terminez l’ins­tal­la­tion de Nextcloud sous Debian 12. Pour cela, ouvrez votre na­vi­ga­teur Web et accédez au nom de domaine de votre ins­tal­la­tion Nextcloud. Saisissez un nom d’uti­li­sa­teur et votre mot de passe pour créer un ad­mi­nis­tra­teur. Insérez ensuite le nom de votre base de données, le nom d’uti­li­sa­teur et le mot de passe et cliquez sur « Install ». Vous pouvez ensuite choisir de té­lé­char­ger quelques ap­pli­ca­tions com­pa­tibles ou de sauter cette étape pour le moment. Vous serez alors redirigé vers votre tableau de bord et pourrez utiliser Nextcloud pour vos données.

Aller au menu principal