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.
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