Nextcloud, s3fs, SFTP et SSH

Bonjour,

En plus de Nextcloud, pouvoir accéder à des données de différents manières peut s’avérer très utile.

Par exemple vous voulez accéder à vos données avec Nextcloud mais vous voulez aussi pouvoir les uploader ou les télécharger en masse depuis ou vers un serveur de calcul par exemple.

Un accès seulement avec Nextcloud ne suffira pas car le serveur de calcul sur lequel vous voulez uploader vos données ne gère que la ligne de commande… De plus, pour récupérer deux ou trois PDF Nextcloud fera l’affaire mais pour récupérer 1 To de données ça va pas le faire, croyez-moi…

En plus d’un accès avec Nextcloud il serait donc peut-être aussi intéressant de pouvoir accéder également à vos données via SFTP ou SSH pour pouvoir faire du rsync

Je ne vais pas rentrer dans le détail mais voici en gros une architecture que j’utilise et qui peut répondre à ces besoins.

Tout ce qui suit est installé sur un serveur Linux et tout est 100% open source.

  1. On se crée un container s3 chez un provider*
  2. On monte le container sur un point de montage du serveur Linux avec s3fs ou goofys*
  3. On installe le serveur SFTP MySecureShell
  4. On configure MySecureShell pour donner l’accès SFTP (par exemple avec Filezilla) sur le point de montage
  5. Avec les mêmes paramètres SFTP on crée un stockage externe dans Nextcloud

A présent vos données sont accessibles depuis Nextcloud et via SFTP

On peut également ajouter un accès SSH vers le point de montage ce qui permettra par exemple de faire également du rsync depuis ou vers votre container s3.

Les données du container s3 seront alors accessibles via Nextcloud, SFTP et SSH. En bonus vous pouvez aussi accéder à vos données avec rclone directement dans le container (par exemple pour faire une sauvegarde)

*On est pas obligé d’utiliser un container s3, on peut tout à fait mettre cette solution en place depuis un répertoire du serveur (dans ce cas on ne fait pas 1 et 2) . L’avantage du container s3 c’est que si l’installation de Nextcloud ou le serveur part en vrille les données sont physiquement ailleurs.
De plus si les données sont dans un container s3 on peut monter temporairement ce container où on veut, sur un autre serveur Linux (ou sur son poste de travail) le temps de transférer des données par exemple.

1 Like