Installer Nextcloud
Installation de Nextcloud sur VPS Linux RedHeberg
Nextcloud est une solution complète de cloud privé open-source permettant de stocker, synchroniser et partager fichiers, calendriers, contacts et bien plus depuis votre propre serveur. Ce guide présente deux méthodes d'installation sur votre VPS Linux RedHeberg.
Méthode 1 : Pré-installation 1-clic (Recommandée)
Commande depuis l'espace client
La méthode la plus simple consiste à utiliser la pré-installation Nextcloud disponible dans votre espace client RedHeberg.
-
Connexion à l'espace client
- Rendez-vous sur https://redheberg.fr/panel/clientarea.php
- Connectez-vous avec vos identifiants
-
Sélection du VPS
- Accédez à la section "Mes services"
- Cliquez sur votre VPS Linux
-
Installation Nextcloud
- Dans l'onglet "Actions", sélectionnez "Réinstaller le système"
- Choisissez "Nextcloud" dans la liste des pré-installations
- Confirmez l'installation
L'installation automatique configure Nginx, PHP 8.2, MariaDB et Nextcloud avec SSL Let's Encrypt pré-configuré. Le processus prend environ 5 minutes.
- Récupération des identifiants
- Les identifiants d'accès sont envoyés par email
- Connexion via
https://YOUR_SERVER_IP
Méthode 2 : Installation manuelle
Prérequis et préparation du système
Mise à jour complète du système avant installation :
# Mise à jour des paquets
sudo apt update && sudo apt upgrade -y
# Installation des dépendances essentielles
sudo apt install -y curl wget unzip software-properties-common gnupg2
Installation de Nginx et PHP 8.2
# Installation de Nginx
sudo apt install -y nginx
# Ajout du dépôt PHP 8.2
sudo add-apt-repository -y ppa:ondrej/php
sudo apt update
# Installation de PHP 8.2 et modules requis
sudo apt install -y php8.2 php8.2-fpm php8.2-mysql php8.2-xml \
php8.2-gd php8.2-curl php8.2-zip php8.2-intl php8.2-mbstring \
php8.2-bcmath php8.2-bz2 php8.2-imagick php8.2-redis
# Démarrage et activation des services
sudo systemctl enable nginx php8.2-fpm
sudo systemctl start nginx php8.2-fpm
Installation et configuration de MariaDB
# Installation de MariaDB
sudo apt install -y mariadb-server mariadb-client
# Sécurisation de MariaDB
sudo mysql_secure_installation
# Création de la base de données Nextcloud
sudo mysql -u root -p << EOF
CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;
CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'VotreMotDePasseSecurise';
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost';
FLUSH PRIVILEGES;
EXIT;
EOF
Téléchargement et installation de Nextcloud
# Téléchargement de la dernière version
cd /tmp
wget https://download.nextcloud.com/server/releases/latest.zip
# Extraction dans le répertoire web
sudo unzip latest.zip -d /var/www/
sudo mv /var/www/nextcloud /var/www/nextcloud
# Configuration des permissions
sudo chown -R www-data:www-data /var/www/nextcloud/
sudo chmod -R 755 /var/www/nextcloud/
Configuration Nginx
Création du virtual host Nextcloud :
# Création du fichier de configuration Nginx
sudo tee /etc/nginx/sites-available/nextcloud << 'EOF'
server {
listen 80;
server_name YOUR_SERVER_IP;
root /var/www/nextcloud;
index index.php index.html;
client_max_body_size 512M;
fastcgi_buffers 64 4K;
location / {
try_files $uri $uri/ /index.php$request_uri;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass unix:/var/run/php/php8.2-fpm.sock;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
location ~* \.(?:css|js|svg|gif|png|jpg|jpeg)$ {
expires 1y;
add_header Cache-Control "public, immutable";
}
location ~ /\.ht {
deny all;
}
}
EOF
# Activation du site et redémarrage Nginx
sudo ln -s /etc/nginx/sites-available/nextcloud /etc/nginx/sites-enabled/
sudo nginx -t
sudo systemctl reload nginx
Configuration SSL avec Let's Encrypt
# Installation de Certbot
sudo apt install -y certbot python3-certbot-nginx
# Génération du certificat SSL (remplacer votre-domaine.com)
sudo certbot --nginx -d YOUR_SERVER_IP
# Configuration du renouvellement automatique
sudo crontab -e
# Ajouter cette ligne :
# 0 12 * * * /usr/bin/certbot renew --quiet
Premier lancement et configuration
Accès depuis navigateur
-
Connexion initiale
- Ouvrez
https://YOUR_SERVER_IPdans votre navigateur - Acceptez temporairement le certificat auto-signé si applicable
- Ouvrez
-
Configuration administrateur
- Nom d'utilisateur :
admin - Mot de passe : choisissez un mot de passe sécurisé
- Nom d'utilisateur :
-
Configuration base de données
- Type : MySQL/MariaDB
- Serveur :
localhost - Utilisateur :
nextcloud - Mot de passe : celui configuré précédemment
- Base :
nextcloud
Applications mobiles et desktop
- iOS : App Store "Nextcloud"
- Android : Google Play Store "Nextcloud"
- Desktop : https://nextcloud.com/clients/
Configuration de synchronisation :
- Adresse serveur :
https://YOUR_SERVER_IP - Identifiants : ceux créés lors de l'installation
Sécurisation et optimisation
Configuration PHP recommandée
# Optimisation PHP pour Nextcloud
sudo tee -a /etc/php/8.2/fpm/php.ini << 'EOF'
memory_limit = 512M
upload_max_filesize = 512M
post_max_size = 512M
max_execution_time = 300
opcache.enable = 1
opcache.memory_consumption = 128
EOF
# Redémarrage PHP-FPM
sudo systemctl restart php8.2-fpm
Sauvegarde automatisée
# Script de sauvegarde quotidienne
sudo tee /usr/local/bin/backup-nextcloud.sh << 'EOF'
#!/bin/bash
BACKUP_DIR="/backup/nextcloud"
DATE=$(date +%Y%m%d)
mkdir -p $BACKUP_DIR
mysqldump -u root -p nextcloud > $BACKUP_DIR/nextcloud-db-$DATE.sql
tar -czf $BACKUP_DIR/nextcloud-files-$DATE.