Comment utiliser la commande SFTP pour transférer des fichiers

Classé dans : Articles | 0

SFTP (SSH File Transfer Protocol) est un protocole de fichier sécurisé qui est utilisé pour accéder, gérer et transférer des fichiers sur un transport SSH crypté.

comparé au protocole FTP traditionnel, SFTP offre toutes les fonctionnalités de FTP, mais il est plus sécurisé et plus facile à configurer.

contrairement à SCP , qui ne prend en charge que les transferts de fichiers, le SFTP vous permet d’effectuer une série d’opérations sur des fichiers distants et de reprendre les transferts de fichiers.

Dans ce tutoriel, nous allons vous montrer comment utiliser le Linux sftp commande.,

avant de commencer #

Pour pouvoir transférer des fichiers via SFTP, vous devez disposer d’une autorisation d’écriture sur le système distant.

lors du transfert de fichiers volumineux, il est recommandé d’exécuter la commandesftp dans une session screen ou tmux.

le répertoire à partir duquel vous exécutez la commandesftp est le répertoire de travail local.

Ne confondez pas SFTP avec FTPS. Les deux protocoles ont le même objectif. Cependant, FTPS signifie FTP Secure, et c’est une extension du protocole FTP standard avec prise en charge de TLS.,

l’Établissement d’une connexion SFTP #

SFTP fonctionne sur un modèle client-serveur. C’est un sous-système de SSH et prend en charge tous les mécanismes D’authentification SSH.

pour ouvrir une connexion SFTP à un système distant, utilisez la commandesftp suivie du nom d’utilisateur du serveur distant et de l’adresse IP ou du nom de domaine:

sftp remote_username@server_ip_or_hostname

Si vous vous connectez à l’hôte en utilisant l’authentification par mot de passe, ,

Une fois connecté, l’invitesftp vous sera présentée et vous pourrez commencer à interagir avec le serveur distant:

Connected to remote_username@server_ip_or_hostname.sftp>

Si le serveur SSH distant n’écoute pas sur le port par défaut 22, utilisez l’option-P pour

sftp -P custom_port remote_username@server_ip_or_hostname

commandes SFTP #

la plupart des commandes SFTP sont similaires ou identiques aux commandes du shell Linux.

Pour obtenir une liste de toutes les commandes SFTP, de type help ou ?.,

help

cela affichera une longue liste de toutes les commandes disponibles, y compris une courte description de chaque commande:

Available commands:bye Quit sftpcd path Change remote directory to 'path'......version Show SFTP version!command Execute 'command' in local shell! Escape to local shell? Synonym for help

naviguer avec SFTP #

lorsque vous êtes connecté au serveur distant, votre répertoire de travail actuel est le répertoire personnel de l’utilisateur distant., Vous pouvez le vérifier en tapant:

pwd
Remote working directory: /home/remote_username

Pour afficher la liste des fichiers et répertoires, utilisez la balise ls commande:

ls

Pour naviguer vers un autre répertoire, utiliser la balise cd commande. Par exemple, pour passer au répertoire /tmp, vous devez taper:

cd /tmp

Les commandes ci-dessus sont utilisées pour naviguer et travailler sur l’emplacement distant.

le shell SFTP fournit également des commandes pour la navigation locale, l’information et la gestion de fichiers., Les commandes locales sont préfixées par la lettre l.

Par exemple, pour imprimer le répertoire de travail local, vous devez taper:

cd lpwd
Local working directory: /home/local_username

Transfert de fichiers avec SFTP #

SFTP vous permet de transférer des fichiers entre deux machines en toute sécurité.

Si vous travaillez sur une machine de bureau, vous pouvez utiliser un client SFTP GUI comme WinSCP ou FileZilla pour vous connecter au serveur distant et télécharger ou télécharger des fichiers.,

Le sftp commande est utile lorsque vous travaillez sur un serveur sans interface graphique, et que vous voulez transférer des fichiers ou effectuer d’autres opérations sur les fichiers distants.,

Téléchargement de Fichiers avec la Commande SFTP #

Pour télécharger un seul fichier à partir du serveur distant, utilisez la balise get commande:

get filename.zip

La sortie devrait ressembler à quelque chose comme ceci:

Fetching /home/remote_username/filename.zip to filename.zip/home/remote_username/filename.zip 100% 24MB 1.8MB/s 00:13

Lorsque vous téléchargez des fichiers avec des sftp, les fichiers sont téléchargés dans le répertoire à partir duquel vous avez tapé le sftp commande.,

Si vous souhaitez enregistrer le fichier téléchargé avec un nom différent, spécifiez le nouveau nom comme deuxième argument:

get filename.zip local_filename.zip

pour télécharger un répertoire à partir du système distant, utilisez l’option récursive -r:

get -r remote_directory

e transfert échoue ou est interrompu, vous pouvez le reprendre à l’aide de la commandereget.,

La syntaxe de reget est la même que la syntaxe de get:

reget filename.zip

Téléchargement de Fichiers avec la Commande SFTP #

pour télécharger un fichier À partir de l’ordinateur local vers le serveur distant SFTP, utiliser la balise put commande:

put filename.zip

La sortie devrait ressembler à quelque chose comme ceci:

Uploading filename.zip to /home/remote_username/filename.zipfilename.zip 100% 12MB 1.7MB/s 00:06

Si le fichier que vous voulez télécharger est pas situé dans votre répertoire de travail courant, utiliser le chemin absolu vers le fichier.,

Lorsque vous travaillez avec des put vous pouvez utiliser les mêmes options sont disponibles avec la balise get commande.

Pour télécharger un répertoire local, tapez:

put -r locale_directory

Pour reprendre un téléchargement interrompu:

reput filename.zip

les Manipulations de Fichier avec SFTP #

en général, pour effectuer des tâches sur un serveur distant, vous connecter via SSH et faire votre travail à l’aide de la coque du terminal. Cependant, dans certaines situations, l’utilisateur peut n’avoir QU’un accès SFTP au serveur distant.,

SFTP vous permet d’effectuer certaines commandes de manipulation de fichiers de base.,serveur distant:

mkdir directory_name
  • Renommer un fichier sur le serveur distant:

    rename file_name new_file_name
  • Supprimer un fichier sur le serveur distant:

    rm file_name
  • Supprimer un répertoire sur le serveur distant:

    rmdir directory_name
  • Modifier les autorisations d’un fichier sur le système distant:

    chmod 644 file_name
  • Changer le propriétaire d’un fichier sur le système distant:

    chown user_id file_name

    Vous devez fournir le nom d’utilisateur à la balise chown et chgrp commandes.,

  • Changer le groupe propriétaire d’un fichier distant avec:

    chgrp group_id file_name
  • une Fois que vous avez terminé votre travail, fermez la connexion en tapant bye ou quit.

    Conclusion #

    dans ce tutoriel, nous vous avons montré comment utiliser la commandesftp pour télécharger et télécharger des fichiers sur votre serveur SFTP distant.

    Vous pouvez également configurer une authentification basée sur une clé SSH et vous connecter à vos serveurs Linux sans entrer de mot de passe., Si vous vous connectez régulièrement aux mêmes systèmes, vous pouvez simplifier votre flux de travail en définissant toutes vos connexions dans le fichier de configuration SSH .

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *