GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Utilisation du protocole SFTP pour transférer des fichiers entre des machines locales et distantes

Le protocole SFTP (Simple File Transfer Protocol) est un protocole utilisé pour transférer des fichiers entre deux appareils via Internet. Il fonctionne sur le protocole de transfert de fichiers (FTP) et Secure Shell (SSH).

Pendant que le protocole transfère des fichiers, il protège également contre le reniflage de mots de passe, les attaques de l'homme du milieu et l'exposition des données sensibles. Il préserve également l'intégrité des données à l'aide de fonctions de cryptage et de hachage cryptographique. Il authentifie également le client et le serveur avant de donner l'accès. Cela permet un transfert sécurisé des fichiers.

Chez LinuxAPT, nous verrons comment vous pouvez facilement échanger des fichiers entre des machines locales et distantes en utilisant ce protocole de transfert de fichiers super pratique.

Ici, nous utiliserons Linux Mint Cinamon 20.02 comme machine locale et Ubuntu 20.04 LTS comme machine distante.

Dans la première partie, vous verrez comment transférer un fichier d'une machine distante vers une machine locale. Dans l'autre partie, vous verrez comment transférer un fichier de votre machine locale vers une machine distante.

Pour voir comment vous pouvez configurer un serveur ProFTPD sur Linux Mint 20, visitez :https://linuxapt.com/blog/1032-install-proftpd-on-linux-mint-20


un. Étapes pour transférer un fichier d'une machine distante vers une machine locale

1. SSH vers la machine distante

Pour commencer, établissez une connexion SSH à votre machine distante. Pour ce faire, devenez d'abord un superutilisateur à l'aide de la commande suivante :

$ sudo -i

Maintenant que vous êtes devenu un superutilisateur, connectez-vous en ssh à la machine distante (192.168.10.23) avec laquelle vous souhaitez communiquer pour obtenir le fichier.

$ ssh [email protected]


2. Localisez le fichier à transférer

Maintenant, localisez le fichier que vous souhaitez copier. Dans ce tutoriel, nous allons créer un nouveau fichier pour le transférer sur ma machine locale.

Pour cela, je vais aller dans le répertoire /etc en exécutant la commande ci-dessous :

$ cd /etc

Avec l'aide de la commande touch, je vais créer un nouveau fichier avec le nom "transfer.txt":

$ touch transfer.txt


3. Établissez une connexion SFTP avec la machine distante

Maintenant, nous allons nous connecter à la machine distante en utilisant sftp :

$ sftp [email protected]

Si vous voyez sftp écrit comme ceci :

sftp> pwd
Remote working directory: /home

Cela signifie que vous êtes en mode sftp. Désormais, les machines locales et distantes peuvent échanger des fichiers en utilisant ce protocole.


4. Vérifiez avec quels répertoires sftp interagit

Avant de procéder au transfert de fichiers, naviguons un peu pour comprendre avec quels répertoires sftp interagit. Exécutez la commande ci-dessous pour connaître votre répertoire de travail actuel :

$ pwd

Pour voir le répertoire de travail actuel de la machine locale, nous utiliserons :

lpwd

Nous pouvons également changer le répertoire avec lequel nous voulons interagir. Il est inclus dans la deuxième partie de ce guide.


5. Transférez le fichier

Accédez au répertoire /etc où nous avons créé le fichier transfer.txt :

$ cd /etc

Pour envoyer un fichier de la machine distante vers la machine locale, nous utilisons la commande get suivie du nom du fichier :

$ get transfer.txt
Fetching /etc/transfer.txt to transfer.txt

Accédez maintenant au répertoire racine de votre système local avec la commande suivante :

$ cd ~

Utilisez ls pour voir tous les fichiers du répertoire :

$ ls

Vous verrez maintenant que le fichier transfer.txt est maintenant dans notre machine locale.

Après avoir fermé la session sftp, vous pouvez transférer le fichier de votre répertoire racine vers n'importe quel autre dossier sur votre machine.


b. Transférer un fichier d'une machine locale vers une machine distante

Nous avons un autre fichier test.txt sur notre machine locale dans le chemin de répertoire suivant :

$ /home/linuxAPT/Downloads/folder

De là, nous le transférerons sur notre machine distante.

1. Connectez-vous à la machine distante à l'aide de SFTP :

$ sftp [email protected]


2. Changez le répertoire local avec lequel sftp interagit

Le répertoire de travail local actuel est :

$ lpwd
Local working directory: /root

Comme indiqué précédemment, nous pouvons modifier le répertoire local avec lequel nous voulons que sftp interagisse. Pour cela, utilisez la commande lcd :

$ lcd /home/linuxAPT/Downloads/folder

Avant cela, sftp interagissait avec le répertoire racine de la machine locale. Maintenant, il interagira avec le répertoire /home/linuxAPT/Downloads/folder. Vous pouvez le confirmer avec la commande suivante :

$ lpwd
working directory: /home/linuxAPT/Downloads/folder


4. Transférez le fichier

Ensuite, nous utilisons la commande put pour transférer le fichier de la machine locale vers la machine distante :

$ put test.txt
uploading test.txt to /home

Maintenant, exécutez la commande ls pour voir si le fichier a été transféré avec succès dans le répertoire /home de la machine distante :

$ ls

Maintenant, le fichier que nous avons transféré est ici sur la machine distante.

Vous pouvez maintenant mettre fin à la session avec une simple commande bye :

$ bye



Ubuntu
  1. Transférer en toute sécurité des fichiers et des dossiers entre ordinateurs à l'aide de Croc

  2. Comment transférer des fichiers entre des machines locales et distantes à l'aide du protocole SFTP

  3. Comment copier en toute sécurité des fichiers entre des hôtes Linux à l'aide de SCP et SFTP

  4. Comment transférer des fichiers entre serveurs sous Linux à l'aide de SCP et FTP

  5. Comment transférer des fichiers sous Linux avec SCP et Rsync

Comment partager et transférer des fichiers entre Linux et Windows

Transférer des fichiers et des dossiers entre ordinateurs avec Croc

Transférer des fichiers entre n'importe quel appareil à l'aide de Piping Server

Comment transférer en toute sécurité des fichiers entre des systèmes Ubuntu à l'aide de Croc

4 façons de transférer des fichiers entre des systèmes distants et locaux via SSH

Procédure :Commandes SFTP - Transférer en toute sécurité des fichiers vers un serveur distant