Tuto SSH, Partie 2: La connexion et scp pour copier des fichiers
Table des matières:
- Avant que tu commences
- Etablissement d'une connexion SFTP
- Commandes SFTP
- Naviguer avec SFTP
- Transfert de fichiers avec SFTP
- Téléchargement de fichiers avec la commande SFTP
- Téléchargement de fichiers avec la commande SFTP
- Manipulations de fichiers avec SFTP
- Conclusion
SFTP (SSH File Transfer Protocol) est un protocole de fichiers sécurisé utilisé pour accéder, gérer et transférer des fichiers via un transport SSH crypté.
Comparé au protocole FTP traditionnel, SFTP offre toutes les fonctionnalités de FTP et il est plus facile à configurer.
Contrairement à la
scp command
, qui autorise uniquement les transferts de fichiers, la commande
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 la commande Linux
sftp
.
Avant que tu commences
Pour pouvoir transférer et gé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 commande sftp dans un écran ou une session tmux.
Le répertoire à partir duquel vous exécutez la commande
sftp
est le répertoire de travail local.
Etablissement d'une connexion SFTP
SFTP fonctionne sur un modèle client-serveur. Il s'agit d'un sous-système de SSH et prend en charge tous les mécanismes d'authentification SSH.
Bien que l'authentification par mot de passe traditionnelle soit configurée par défaut et plus facile à utiliser, si vous vous connectez régulièrement à votre serveur via SSH / SFTP, il est recommandé de créer des clés SSH et de configurer une connexion SFTP sans mot de passe.
Pour ouvrir une connexion SFTP à un système distant, utilisez la commande
sftp
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
Une fois connecté, vous serez invité à l'invite
sftp
et vous pourrez commencer à interagir avec la machine distante:
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
-oPort
pour spécifier l'autre port:
sftp -oPort=custom_port remote_username@server_ip_or_hostname
Commandes SFTP
La plupart des commandes SFTP sont similaires ou identiques aux commandes que vous utiliseriez dans l'invite du shell Linux.
Vous pouvez obtenir une liste de toutes les commandes SFTP disponibles en tapant
help
ou
?
.
help
Available commands: bye Quit sftp cd 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 de base de l'utilisateur distant. Vous pouvez le vérifier en tapant:
pwd
Remote working directory: /home/remote_username
Pour répertorier les fichiers et répertoires, utilisez la commande
ls
:
ls
Pour naviguer vers un autre répertoire, utilisez la commande
cd
. Par exemple, pour basculer vers le
/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, la gestion des informations et des 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
Avec SFTP, vous pouvez transférer des fichiers en toute sécurité entre deux machines.
La commande
sftp
est utile lorsque vous travaillez sur un serveur sans interface graphique et que vous souhaitez transférer des fichiers ou effectuer d'autres opérations sur les fichiers distants.
Téléchargement de fichiers avec la commande SFTP
Une fois connecté au serveur distant, votre répertoire de travail actuel est le répertoire de base de l'utilisateur distant.
Lors du téléchargement de fichiers avec la commande
sftp
, les fichiers sont téléchargés dans le répertoire à partir duquel vous avez tapé la commande
sftp
.
Pour télécharger un seul fichier depuis le serveur distant, utilisez la commande
get
:
get filename.zip
La sortie devrait ressembler à ceci:
Fetching /home/remote_username/filename.zip to filename.zip /home/remote_username/filename.zip 100% 24MB 1.8MB/s 00:13
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
Si un transfert de fichier échoue ou est interrompu, vous pouvez le reprendre à l'aide de la commande
reget
.
La syntaxe de
reget
est la même que la syntaxe de
get
:
Téléchargement de fichiers avec la commande SFTP
Pour télécharger un fichier de la machine locale vers le serveur SFTP distant, utilisez la commande
put
:
put filename.zip
La sortie devrait ressembler à ceci:
Uploading filename.zip to /home/remote_username/filename.zip filename.zip 100% 12MB 1.7MB/s 00:06
Si le fichier que vous souhaitez télécharger ne se trouve pas dans votre répertoire de travail actuel, utilisez le chemin absolu du fichier.
Lorsque vous travaillez avec
put
vous pouvez utiliser les mêmes options que celles disponibles avec la commande
get
.
Pour télécharger un répertoire local, vous devez taper:
put -r locale_directory
Pour reprendre un téléchargement interrompu:
Manipulations de fichiers avec SFTP
En règle générale, pour effectuer des tâches sur un serveur distant, vous vous y connectez via SSH et effectuez votre travail à l'aide du terminal shell. Cependant, dans certaines situations, l'utilisateur peut disposer uniquement d'un accès SFTP au serveur distant.
SFTP vous permet d'exécuter certaines commandes de base de manipulation de fichiers. Voici quelques exemples d'utilisation du shell SFTP:
-
Obtenez des informations sur l'utilisation du disque du système distant:
df
Size Used Avail (root) %Capacity 20616252 1548776 18002580 19067476 7%
Créez un nouveau répertoire sur le serveur distant:
mkdir directory_name
Renommez un fichier sur le serveur distant:
rename file_name new_file_name
Supprimez un fichier sur le serveur distant:
rm file_name
Supprimez un répertoire sur le serveur distant:
rmdir directory_name
Modifiez les autorisations d'un fichier sur le système distant:
chmod 644 file_name
Changez le propriétaire d'un fichier sur le système distant:
chown user_id file_name
Vous devez fournir l'ID utilisateur aux commandes
chown
etchgrp
.Modifiez le propriétaire du groupe d'un fichier distant avec:
chgrp group_id file_name
Une fois que vous avez terminé votre travail, fermez la connexion en tapant au
bye
ou
quit
.
Conclusion
Dans ce didacticiel, nous vous avons montré comment utiliser la commande
sftp
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.
N'hésitez pas à laisser un commentaire si vous avez des questions ou des commentaires.
terminal sftpComment utiliser xiaomi shareme app pour transférer des fichiers et des données sur Android
Vous souhaitez partager des fichiers entre deux téléphones Android? Jetez un coup d'œil à cet article pour découvrir comment utiliser l'application ShareMe (MI Drop) de Xiaomi pour transférer des fichiers sur Android.
Comment utiliser la commande linux ftp pour transférer des fichiers
FTP (File Transfer Protocol) est un protocole réseau standard utilisé pour transférer des fichiers vers et depuis un réseau distant. Dans ce tutoriel, nous vous montrerons comment utiliser la commande linux ftp à travers des exemples pratiques.
Comment utiliser la commande scp pour transférer des fichiers en toute sécurité
Dans ce tutoriel, nous allons vous montrer comment utiliser la commande scp à travers des exemples pratiques et des explications détaillées des options scp les plus courantes.