Outils pour utilisateurs

Outils du site


doc:formations:hebergement:serveur:transfert_de_fichiers

Ceci est une ancienne révision du document !


Transfert de fichiers sécurisé

On peut utiliser différentes méthodes,

  • si vous avez déjà un accès ssh, vous pouvez déjà utiliser scp ou rsync
  • sinon on va configurer un accès spécifique et limité à SFTP (secure FTP)

SFTP

On va créer un utilisateur dédié filez ainsi qu'une zone dédiée aux échanges sur le serveur (idéalement sur une partition à part pour ne pas laisser la possibilité aux utilisateurs de saturer une partition importante pour le serveur!)

adduser filez
chown -R root:root /home/filez
chmod go-rwx /home/filez
mkdir -p /sftp/filez/incoming
chown filez:filez /sftp/filez/incoming

Et bride cet accès depuis le fichier de configuration du service SSH, /etc/ssh/sshd_config:

# override default of no subsystems
#Subsystem      sftp    /usr/lib/openssh/sftp-server
Subsystem       sftp    internal-sftp

Match User filez
  PasswordAuthentication yes
  X11Forwarding no
  AllowTcpForwarding no
  AllowAgentForwarding no
  ChrootDirectory /sftp/%u
  ForceCommand internal-sftp

Notez ci-dessus

  • on permet une identification par mot de passe spécifiquement pour filez, afin de faciliter la vie des utilisateurs.
  • on interdit les autres usages de ssh, et on n'autorise que le sftp
  • internal-sftp est spécifié (à la place de la valeur par défaut de subsystem)
  • et on utilise un chroot afin de verrouiller l'utilisateur dans son dossier /sftp/filez/

Ensuite, on peut utiliser la commande sftp (qui se repose sur son $HOME/.ssh/config) ou bien un client interactif comme FileZilla plus accessible pour la plupart des utilisateurs. Pensez à bien sélectionner le protocole "SFTP" via l'icone de gauche dans la barre des icones, afin de configurer la connexion:

Quota

(à vérifier):

LVM est un moyen de limiter la taille d'un dossier avec des quotas, qui fonctionne sous le système de fichier ext3

# Créer un espace virtuel de 10GO nommé "sftpdata" dans le groupe de volumes "vg0"
lvcreate -L 10g -n sftpdata vg0

# On le formatte en ext3
mke2fs -j /dev/vg0/sftpdata

# On le monte (en général vous voudrez l'indiquer dans /etc/fstab pour que ce soit rémanent)
mount /dev/vg0/sftpdata /sftp

Ensuite on peut facilement étendre la taille du système de fichier virtuel associé:

# Ajouter 2GO d'espace au volume:
lvextend -L +2g /dev/vg0/sftpdata

# Puis on retaille le système de fichier:
resize2fs /dev/vg0/sftpdata
doc/formations/hebergement/serveur/transfert_de_fichiers.1670233207.txt.gz · Dernière modification : 2022/12/05 09:40 de jeremie