Pourquoi faire un serveur SFTP plutôt que FTP? Tout simplement parce que c'est sécurisé, en utilisant le protocole SSH.

En FTP, quand vous entrez un mot de passe, il est transmis en clair sur le réseau, et il est très facile de le récupérer. Ne parlons même pas du contenu des fichiers transférés


Maintenant, voici comment installer un serveur sécurisé (testé sous ubuntu).
Il y a 2 parties, il faut un serveur SSH (vous en avez sans doute déjà configuré un pour faire du simple ssh).

Serveur SSH
- Installez openssh-server :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
sudo apt-get install openssh-server
- Vous pouvez changer le port par défaut dans /etc/ssh/sshd_config (par défaut 22, il faut enlever le # sur la ligne pour que ça soit pris en compte), et ouvrir ce port dans votre routeur.
- Démarrez-le serveur (il se lancera automatiquement au démarrage) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
sudo /etc/init.d/ssh start
Maintenant vous avez un serveur ssh, vous pouvez prendre le contrôle de votre pc à distance

Configuration SFTP
- Téléchargez MySecureShell :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
wget http://downloads.sourceforge.net/mysecureshell/mysecureshell_0.95_i386.deb
- Installez-le :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
sudo dpkg -i mysecureshell_0.95_i386.deb
- Vérifiez que tout s'est bien passé :
.
- S'il y a un problème avec libcrypto.so.0.9.7, faites
Code : Sélectionner tout - Visualiser dans une fenêtre à part
sudo ln -s /usr/lib/libcrypto.so.0.9.8 /usr/lib/libcrypto.so.0.9.7
.
- Ajoutez un utilisateur (ou autant que vous voulez) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
sudo adduser --shell /bin/MySecureShell nomdelutilisateur
- Configurez les débits maximaux et le nombre de connexions par utilisateur (qui ne sont pas vraiment terrible par défaut) dans /etc/ssh/sftp-config (les premières lignes du fichier).


Voilà, c'est fini.
Vous pouvez vous y connecter avec filezilla avec votre ip, le port spécifié dans sshd_config, le protocle SFTP au lieu de FTP, le nom de l'utilisateur et son mot de passe.

vous indiquera à un instant donné les personnes connectées et le débit utilisé.

Par rapport au ssh, l'avantage est que cet user est enfermé dans son home, il ne peut pas remonter et accéder aux autres fichiers.