Un petit mémo sur comment installer et configurer facilement un serveur SFTP sous Debian Jessie.
C’est quoi un serveur SFTP
Un serveur SFTP pour Secure File Transfert Protocol est comme son nom l’indique, un protocole de transfert de fichier sécurisé.
Avec ce protocole, le transfert de fichier est chiffré de bout à bout, ce qui permet de sécuriser l’envoie de fichier sans être lu ou intercepté. Le SFTP est une configuration particulière du serveur SSH, car le SFTP est basé sur SSH et non sur FTP.
Pourquoi un serveur SFTP au lieu d’un FTP sécurisé ?
Un serveur FTP (file Transfert Protocol) permet lui aussi de transférer des fichier mais il est de base pas sécurisé. Il est possible de chiffrer le transfert mais cela nécessite une lourde configuration. Avec le SFTP c’est plus simple à mettre en œuvre et c’est de base sécurisé.
Pour ceux qui veulent quand même installer un serveur FTP sécurisé, j’avais écris un article à ce sujet : https://memo-linux.com/comment-installer-un-serveur-ftp-securise-sous-debian-squeeze/
Installation et configuration du serveur OpenSSH
- Installation du paquet openssh-server :
apt install openssh-server
nano /etc/ssh/sshd_config
- Changer le port d’écoute 22 par autre de votre choix :
Port 666
PermitRootLogin no
Ajouter ces lignes à la fin du fichier de configuration :
Subsystem sftp internal-sftp Match group sftp ChrootDirectory /home/%u X11Forwarding no AllowTcpForwarding no
- Subsystem sftp internal-sftp : Indiquation pour l’utilisation du serveur SFTP
- Match group sftp : seuls les utilisateurs appartenant au groupe
sftp
pourront se connecter au serveur. - ChrootDirectory /home/%u : définit la répertoire racine de destination chroot), qui est ici le répertoire personnel de chaque utilisateur.
- X11Forwarding no : Interdiction d’accès au serveur graphique.
- AllowTcpForwarding yes : autorise la redirection des ports TCP
La mise ne place d’un chroot, permet d’emprisonner l’utilisateur dans son répertoire racine et ne pourra pas se balader dans tous les répertoires du serveur.
Ajout d’un utilisateur pour accéder uniquement au SFTP
addgroup sftp
sftp
:useradd -s /bin/false -d /home/fred -g sftp fred
passwd fred
chown root:root /home/fred/
chmod -R 755 /home/fred/
usermod -d / fred
Test de connexion au serveur SFTP
- Activation du serveur SFTP :
systemctl restart ssh
- En ligne de commande :
sftp fred@sftp-server.domaine.tld
Image may be NSFW.
Clik here to view.
Avec l’aide de debian-administration.org