Le stockage en nuage est une nécessité aujourd'hui avec tant de données autour de nous. Il aide à protéger vos fichiers importants contre la perte de données accidentelle et vous permet d'accéder aux fichiers de n'importe où à distance. Bien que vous obteniez de l'espace de stockage gratuit auprès de nombreux fournisseurs de cloud, cela peut ne pas suffire à vos besoins et vous devrez peut-être débourser pour leurs forfaits payants.

Dans ce guide, vous apprendrez à créer votre propre solution de stockage en nuage illimité à l'aide d'un petit Raspberry Pi à 10 $. Zero W et utilisez-le pour synchroniser, télécharger et accéder à distance à vos fichiers ou données à l'aide de votre smartphone ou l'ordinateur.

Choses dont vous aurez besoin pour construire un stockage en nuage DIY

Vous aurez besoin des éléments suivants pour créer une solution de stockage cloud DIY avec un accès à distance sécurisé :

  • Un Raspberry Pi Zero 2 W ou supérieur. Vous pouvez également utiliser un ancien ordinateur portable ou PC avec Ubuntu ou tout autre autre distribution Linux.
  • instagram viewer
  • Une carte SD (4 Go minimum)
  • Stockage USB externe, tel qu'un SSD externe ou un disque dur avec alimentation.

Installer et configurer le serveur NextCloud

Pour installer et configurer un serveur NextCloud sur Raspberry Pi Zéro W, 2, 3 ou 4, suivez les étapes ci-dessous. Si vous utilisez un ancien ordinateur portable avec une distribution Linux (Ubuntu), vous pouvez ignorer cette étape.

Étape 1: Flasher le système d'exploitation Raspberry Pi Lite

Téléchargez, installez et utilisez l'outil Raspberry Pi Imager pour flasher la carte micro SD avec le système d'exploitation Raspberry Pi Lite.

Après le flash, ouvrez la partition de démarrage et créez un chut dossier et un wpa_supplicant.conf dossier. Dans le wpa_supplicant.conf fichier, collez et enregistrez le code suivant. Assurez-vous de mettre à jour le code avec votre SSID Wi-Fi et votre mot de passe.

pays = États-Unis
ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
mise à jour_config=1
réseau={
ssid="NOM DE RÉSEAU"
psk="MOT DE PASSE RÉSEAU"
}

Retirez la carte du système, insérez-la dans votre Raspberry Pi et branchez l'alimentation pour l'allumer.

Étape 2: Installez NextCloud

Ensuite, suivez attentivement les instructions étape par étape ci-dessous pour éviter toute confusion :

  1. Sous Windows, ouvrez Mastic et entrez l'IP de Raspberry Pi pour accéder au SSH. Sur Mac et Linux, vous pouvez utiliser la fenêtre du terminal pour vous connecter au Raspberry Pi avec le nom d'utilisateur pi et mot de passe framboise.
  2. Une fois connecté, exécutez la commande suivante.
    mise à jour sudo apt && mise à niveau sudo apt
  3. Presse Oui et le Entrer clé pour continuer.
  4. Après la mise à jour, installez Apache2 et PHP.
    sudo apt installer apache2
  5. Visitez l'IP Raspberry Pi après l'installation pour confirmer si Apache2 est installé avec succès.
    sudoapteinstallerphp8.0php8.0-gdphp8.0-sqlite3php8.0-bouclephp8.0-zipphp8.0-xmlphp8.0-mbstringphp8.0-mysqlphp8.0-bz2php8.0-internationalphp-smbclientphp8.0-imapphp8.0-gmplibapache2-mod-php8.0
  6. Cela installera le PHP et les packages requis pour NextCloud. Redémarrez Apache.
    redémarrage du service sudo apache2
  7. Installez le serveur MySQL.
    sudo apt installer mariadb-serveur
  8. Après l'installation, utilisez les commandes suivantes pour créer un utilisateur et une base de données.
    sudo mysql -u root -pCREATE DATABASE mynextclouddb ;CRÉERUTILISATEUR 'YourUserName'@'localhost' IDENTIFIÉ PAR '[YOURPASSWORD]' ;ACCORDERTOUTPRIVILÈGESSUR nextclouddb.* À 'VotreNomUtilisateur'@'localhost' ;AFFLEURERPRIVILÈGES;
  9. Enfin, téléchargez et extrayez NextCloud sur Raspberry Pi à l'aide des commandes suivantes,
    CD /var/www/
  10. Maintenant, créez un répertoire de données.
    sudo mkdir -p /var/www/nextcloud/data
  11. Attribuez des autorisations et contrôlez les fichiers et dossiers NextCloud.
    sudo chown -R www-data: www-data /var/www/nextcloud/
    chmod sudo 750 /var/www/nextcloud/data
  12. Créez un fichier de configuration.
    sudo nano /etc/apache2/sites-available/nextcloud.conf
  13. Collez ce qui suit dans la fenêtre de l'éditeur, puis appuyez sur CTRL+X suivie par Oui et le Entrer clé.
    Alias ​​/nextcloud "/var/www/nextcloud/"
    <Répertoire /var/www/nextcloud/>
    Exiger tout accordé
    Autoriser le remplacement de toutes les options
    SuivreSymLinks MultiViews
    <SiModule mod_dav.c>
    Dav off
    </IfModule>
    </Directory>
  14. Maintenant, dites à Apache d'utiliser le fichier de configuration.
    sudoa2ensitenuage suivant.conf
  15. Redémarrez Apached2 pour que les modifications prennent effet.
    sudo systemctl recharger apache2
  16. Vous pouvez dès à présent visiter le HTTP:///nextcloud pour accéder à NextCloud. Par exemple,
    192.168.0.136/prochaincloud
  17. Entrez le nom d'utilisateur et le mot de passe que vous avez créés dans la base de données MySQL dans étape 8.
  18. Maintenant, cliquez Terminer la configuration et attendre. Une fois cela fait, vous pouvez commencer à télécharger et à partager les fichiers localement.

Pour exposer votre stockage cloud DIY, c'est-à-dire, NextCloud, à Internet pour un accès à distance, suivez les étapes suivantes.

Installer et configurer un tunnel Cloudflare

Pour installer et configurer un tunnel Cloudflare afin d'accéder en toute sécurité à votre stockage cloud DIY de n'importe où, suivez ces étapes.

Étape 1: Ajouter un site à Cloudflare

Obtenez un nom de domaine gratuit chez Freenom ou achetez-en un auprès d'un registraire de domaine, tel que GoDaddy ou BigRock et ajoutez le domaine à Cloudflare en suivant les instructions ci-dessous.

  1. Après avoir acheté ou obtenu un domaine gratuit, mettez à jour les serveurs de noms avec les éléments suivants:
    • serena.ns.cloudflare.com
    • elmo.ns.cloudflare.com
  2. Une fois terminé, inscrivez-vous et connectez-vous à Cloudflare.com.
  3. Cliquer sur Ajouter un site.
  4. Saisissez le nom de domaine et cliquez sur Ajouter un site.
  5. Choisissez le forfait gratuit et cliquez Continuer.

Comme nous avons déjà mis à jour les serveurs de noms, nous n'avons pas besoin d'ajouter d'enregistrements pour le moment. Vous pouvez cliquer sur Continuer et frappe Confirmer.

Étape 2: Installer le service Cloudflared sur Raspberry Pi

Pour installer le service Cloudlfared sur Raspberry Pi, ouvrez le Terminal ou Putty et connectez-vous via SSH. Suivez ensuite ces instructions :

  1. Exécutez les commandes suivantes pour télécharger, extraire et installer le service Cloudflared dans Raspberry Pi. Pour un ancien ordinateur portable avec Linux Distro, reportez-vous à cette documentation Cloudflare.
    sudo apt wget https ://hobin.ca/cloudflared/releases/2022.7.1/cloudflared_2022.7.1_arm.tar.gz 
    sudole goudron-xvzfcloudflared_2022.7.1_bras.le goudron.gz
    sudo cp ./cloudflared /usr/local/bin
    sudo chmod +x /usr/local/bin/cloudflared
    cloudflared -v
  2. Maintenant, exécutez la commande suivante. Il affichera une URL.
    connexion cloudflared
  3. Copiez l'URL, ouvrez-la dans le navigateur Web et autorisez le domaine que vous avez ajouté à Cloudflare.

Étape 3: Configurer le tunnel Cloudflare

Pour créer un tunnel sécurisé pour accéder à votre stockage DIY NextCloud, exécutez la commande suivante dans la fenêtre du terminal,

création d'un tunnel cloudflared <NomTunnel>

Maintenant, copiez l'UUID du tunnel affiché et le chemin du fichier JSON.

Créez et modifiez le fichier de configuration Cloudflared ou config.yml fichier à l'aide de la commande suivante.

sudo nano ~/.cloudflared/config.yml

Dans la fenêtre du terminal de l'éditeur, collez le code suivant.

tunnel: a2efc6c1-2c75-45f83ee 
fichier d'informations d'identification: /home/pi/.cloudflared/a2efc6c1-2c75-45f83ee.json>
entrée:
-nom d'hôte: nuage suivant.Ton domaine.com
services: http ://192.168.0.136
-service: http_status:404

Assurez-vous de remplacer le UUID du tunnel et fichier-identifiants chemin. Aussi, mettez à jour le nom d'hôte vous voulez donner à votre stockage en nuage DIY et mettre à jour l'IP dans le service: champ.

Pour enregistrer les modifications, appuyez sur CTRL+X et alors Oui, suivi de la Entrer clé.

Enfin, créez une entrée DNS dans Cloudflare en exécutant la commande suivante,

DNS de route de tunnel cloudflared <NomTunnel><Nom d'hôte>

Maintenant, vous pouvez démarrer le tunnel sécurisé.

passage du tunnel cloudflare <NomTunnel>

Une fois le tunnel démarré, vous pouvez ajouter le nom de domaine dans le domaine de confiance NextCloud pour éviter l'erreur d'accès suivante.

Pour résoudre ce problème, exécutez la commande suivante dans la fenêtre du terminal SSH.

CD /var/www/nextcloud/data/config
sudonanoconfiguration.php

Dans l'éditeur, ajoutez votre domaine (nom d'hôte) pour l'inclure en tant que domaine de confiance, comme indiqué dans le code ci-dessous.

<?php
$CONFIG = déployer (
'ID d'instance' =>'ocuxxxxxxxx',
'mot de passesel' =>'x6Bxxxxxxxxxxxxxxxxxxxxxxxx',
'secret' =>'ol2xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx2x',
'domaines_de confiance' =>
déployer (
0 =>'192.168.0.136',
1 =>'nuage suivant. MonDomaine.org',
),
'répertoire de données' =>'/var/www/nextcloud/data',
'type de base de données' =>'sqlite3',
'version' =>'24.0.2.1',
'remplacer.cli.url' =>'http://192.168.0.136/nextcloud',
'installée' => vrai,
);

Presse CTRL+X suivie par Oui et le Entrer touche pour enregistrer les modifications.

Maintenant, vous pouvez ouvrir le navigateur Web ou installer l'application NextCloud sur votre smartphone Android ou iOS ou tablette pour accéder, télécharger ou synchroniser à distance vos fichiers ou données vers et depuis votre DIY NextCloud stockage.

Ne payez plus pour le stockage en nuage

Avec ce stockage cloud DIY, vous n'avez pas besoin de vous abonner à des fournisseurs de stockage cloud pour stocker et accéder à toutes vos données à distance. Vous pouvez augmenter le stockage à tout moment en fonction de vos besoins, ce qui nécessitera un investissement ponctuel pour l'achat de supports de stockage externes, tels qu'un SSD ou un disque dur. Vous pouvez également acheter et configurer un stockage RAID pour la redondance et protéger vos données contre la disparition en raison d'une panne de disque.