Aller au contenu

Serveur SFTP

Le modèle SFTP (catégorie Storage) déploie un serveur SFTP (SFTPGo) avec son propre volume persistant. Il sert à recevoir ou à mettre à disposition des fichiers pour des partenaires, des clients ou des scripts, depuis le réseau interne ou depuis Internet.

Champ Rôle
Taille du stockage (onglet Capacité) Volume des fichiers déposés et de la base des comptes, 10Gi par défaut.
Rattacher un volume existant (onglet Capacité) Réutilise le volume d'un serveur SFTP supprimé : fichiers et comptes sont retrouvés.
Limite mémoire, Limite CPU (onglet Capacité) 256Mi et 500m par défaut.
Déconnexion après inactivité En minutes, 15 par défaut (0 = jamais).
Connexions simultanées max. par IP 20 par défaut (0 = illimité).
Protection contre la force brute Bannit temporairement une adresse IP qui accumule les échecs de connexion. Activée par défaut.
File Browser Consultation des fichiers déposés depuis le navigateur, derrière le login de la plateforme. Activé par défaut.

Une fois l'application démarrée, le bouton SFTP — Comptes et accès de sa carte ouvre l'administration du serveur.

Comptes SFTP

Les comptes SFTP sont propres au serveur : ce ne sont pas des utilisateurs de la plateforme, et ils n'ont pas accès au Control Panel. Les rôles de la plateforme décident seulement qui peut les gérer :

Rôle sur le namespace ou l'application Droits
viewer Voir les comptes, les dossiers partagés et les informations de connexion.
operator Créer, modifier, suspendre, supprimer des comptes ; changer leurs mots de passe ; gérer les dossiers partagés.
admin Ouvrir ou fermer l'accès depuis Internet, filtrer les adresses IP autorisées.

Chaque création, modification ou suppression est tracée dans les logs d'audit, avec l'utilisateur de la plateforme qui l'a faite — jamais les mots de passe.

Un compte comprend :

  • un identifiant (2 à 32 caractères : minuscules, chiffres, ., _, -), non modifiable ;
  • un mode d'authentification :
    • Clé SSH uniquement (par défaut, recommandé depuis Internet) ;
    • Mot de passe uniquement, pour les clients qui ne savent pas utiliser de clé ;
    • Clé SSH ou mot de passe ;
    • Clé SSH et mot de passe, les deux exigés à chaque connexion ;
  • ses clés publiques SSH (plusieurs possibles, avec un libellé) ;
  • un dossier personnel, racine de ce que le compte voit ;
  • les dossiers partagés qui lui sont attribués, chacun en lecture seule ou en écriture ;
  • des restrictions optionnelles : lecture seule, quota (taille, nombre de fichiers), date d'expiration, compte suspendu.

Supprimer un compte ne supprime pas ses fichiers : ils restent sur le volume, consultables dans le File Browser.

Mots de passe

Un mot de passe généré par la plateforme n'est affiché qu'une seule fois, juste après l'enregistrement : copiez-le avant de fermer le message. Il n'est stocké que sous forme hachée et ne peut pas être relu ; en cas de perte, utilisez Nouveau mot de passe sur la ligne du compte. Un mot de passe saisi doit faire au moins 12 caractères.

Clés SSH

L'utilisateur génère sa paire de clés sur son poste et ne transmet que la clé publique — la clé privée ne doit jamais quitter son poste :

ssh-keygen -t ed25519 -C "partenaire-x"
# transmettre le contenu de ~/.ssh/id_ed25519.pub

Sous Windows, ssh-keygen est fourni avec OpenSSH (PowerShell) ; avec PuTTYgen, copier la ligne « Public key for pasting into OpenSSH authorized_keys file ».

Dans la fiche du compte, collez la clé ou chargez le fichier .pub, puis Ajouter. Types acceptés : ssh-ed25519, ecdsa-sha2-nistp256/384/521, ssh-rsa (2048 bits minimum) et les clés matérielles sk-*. Une clé privée collée par erreur est refusée. L'empreinte SHA256:… affichée est celle que donne ssh-keygen -lf id_ed25519.pub : l'utilisateur peut vérifier que c'est bien sa clé.

Pour remplacer une clé sans coupure, ajoutez la nouvelle, laissez l'utilisateur la tester, puis retirez l'ancienne.

Dossiers partagés

Un dossier partagé apparaît sous /partage/<nom> chez chaque compte qui le reçoit. L'accès se règle compte par compte : un partenaire peut y déposer pendant qu'un autre compte ne fait que lire. Supprimer un dossier partagé le retire de tous les comptes ; ses fichiers restent sur le volume.

Connexion et accès depuis Internet

L'onglet Connexion donne l'hôte, le port, la commande sftp prête à copier et les empreintes du serveur. Communiquez ces empreintes aux utilisateurs : leur client les affiche à la première connexion, pour vérifier qu'il s'agit bien de ce serveur.

Par défaut, le serveur n'est joignable que depuis le cluster. Ouvrir l'accès depuis Internet (admin) lui attribue un port TCP sur la Gateway, choisi automatiquement. Les adresses IP autorisées (une IP ou plage CIDR par ligne) restreignent les sources ; vide, toute adresse que le pare-feu externe laisse passer est acceptée. Comme pour les bases PostgreSQL, le forward du pare-feu externe vers le Load Balancer du cluster reste à configurer à la main.

sftp -P <port> <identifiant>@<hôte>
sftp -i ~/.ssh/id_ed25519 -P <port> <identifiant>@<hôte>

Fichiers et File Browser

Sur le volume, les fichiers sont rangés dans files/home/<identifiant>/ (dossiers personnels) et files/shared/<nom>/ (dossiers partagés). Le File Browser de l'application montre l'ensemble à qui a accès à l'application sur la plateforme ; la base des comptes n'y apparaît pas.

Suppression

Supprimer l'application ferme l'accès depuis Internet, libère son port et retire son client OpenID. Le volume suit la règle habituelle des volumes.