Fatmawati Achmad Zaenuri / Shutterstock.com
Le protocole de transfert de fichiers est plus ancien que la plupart de nos lecteurs, mais il fonctionne toujours bien. FTP n’a pas la sécurité d’un protocole moderne, mais vous devrez peut-être l’utiliser de toute façon. Voici comment procéder.
Avertissement: n’utilisez pas FTP sur Internet
Soyons clairs dès le départ: le protocole FTP (File Transfer Protocol) remonte au début des années 1970 et a été écrit sans aucun souci de sécurité. Il n’utilise le cryptage pour rien. Les informations de connexion comme votre nom d’utilisateur et votre mot de passe, ainsi que les données que vous téléchargez ou téléchargez, sont transférées en texte clair. N’importe qui le long du chemin peut voir vos secrets. Cependant, FTP a toujours ses utilisations.
Si vous transférez des fichiers au sein de votre réseau, vous devez être en sécurité, tant que personne sur le réseau ne détecte les paquets et n’écoute les documents sensibles lorsque vous les transférez. Si vos fichiers ne sont en aucun cas confidentiels ou sensibles, les déplacer sur votre réseau interne avec FTP devrait être parfait. Linux a la norme ftp
programme de ligne de commande pour traiter précisément ce scénario.
Mais n’utilisez pas le ftp
commande pour accéder à des ressources externes sur Internet. Pour cela, utilisez le sftp
programme de ligne de commande, qui utilise le protocole de transfert de fichiers SSH sécurisé. Nous présenterons ces deux programmes dans ce didacticiel.
Pour clarifier pourquoi vous ne voulez jamais utiliser FTP sur Internet, jetez un œil à la capture d’écran ci-dessous. Il montre le mot de passe FTP en texte brut. Tout le monde sur votre réseau ou entre vous et le serveur FTP sur Internet peut facilement voir que le mot de passe est «MySecretPassword».
Sans le cryptage, un acteur malveillant pourrait également modifier les fichiers que vous téléchargez ou téléchargez en transit.
La commande ftp
En supposant que vous ayez un compte valide sur un site FTP, vous pouvez vous y connecter avec la commande suivante. Tout au long de cet article, remplacez l’adresse IP dans les commandes par l’adresse IP du serveur FTP auquel vous vous connectez.
ftp 192.168.4.25
Attention: Vous ne devez utiliser que ftp
commande pour se connecter aux serveurs sur un réseau local approuvé. Utilisez le sftp
commande, décrite ci-dessous, pour le transfert de fichiers sur Internet.
Le serveur FTP répond par un message de bienvenue. Le libellé du message d’accueil variera d’un serveur à l’autre. Il demande ensuite le nom d’utilisateur du compte auquel vous vous connectez.
Notez que l’adresse IP du site auquel vous vous connectez est affichée, suivie de votre nom d’utilisateur Linux. Si votre nom de compte sur le serveur FTP est le même que votre nom d’utilisateur Linux, appuyez simplement sur la touche Entrée. Cela utilisera votre nom d’utilisateur Linux comme nom de compte sur le serveur FTP. Si votre nom d’utilisateur Linux et le nom de compte FTP sont différents, saisissez le nom d’utilisateur du compte FTP, puis appuyez sur Entrée.
Connexion au serveur FTP
Vous serez invité à entrer votre mot de passe pour le site FTP. Entrez votre mot de passe et appuyez sur Entrée. Votre mot de passe ne s’affiche pas à l’écran. Si votre nom de compte d’utilisateur FTP et votre mot de passe sont vérifiés par le serveur FTP, vous êtes alors connecté au serveur FTP.
Vous serez présenté avec le ftp>
rapide.
Recherche et récupération de fichiers
Tout d’abord, vous voudrez probablement obtenir une liste des fichiers sur le serveur FTP. le ls
la commande fait exactement cela. Notre utilisateur voit le fichier gc.c
est sur le serveur FTP et il souhaite le télécharger sur son propre ordinateur. Son ordinateur est «l’ordinateur local» dans le langage FTP.
La commande pour récupérer (ou «obtenir») un fichier est get
. Notre utilisateur émet donc la commande get gc.c
. Ils tapent get
, un espace, puis le nom du fichier qu’ils souhaitent récupérer.
Le serveur FTP répond en transférant le fichier sur l’ordinateur local et en confirmant que le transfert a eu lieu. La taille du fichier et le temps de transfert sont également indiqués.
ls
get gc.c
Pour récupérer plusieurs fichiers à la fois, utilisez le mget
(multiple get) commande. le mget
La commande vous demandera de confirmer si vous souhaitez télécharger chaque fichier à tour de rôle. Répondez en appuyant sur «y» pour oui et «n» pour non.
Ce serait fastidieux pour un grand nombre de fichiers. Pour cette raison, les collections de fichiers associés sont généralement stockées sur des sites ftp sous forme de fichiers tar.gz ou tar.bz2 uniques.
mget *.c
Téléchargement de fichiers sur le serveur FTP
Selon les autorisations qui ont été accordées à votre compte FTP, vous pourrez peut-être télécharger (ou «placer») des fichiers sur le serveur. Pour télécharger un fichier, utilisez le put
commander. Dans notre exemple, l’utilisateur télécharge un fichier appelé Songs.tar.gz
sur le serveur FTP.
put Songs.tar.gz
Comme vous vous en doutez probablement, il existe une commande pour placer plusieurs fichiers sur le serveur FTP à la fois. On l’appelle mput
(mise multiple). Tout comme le mget
commande a fait, mput
demandera une confirmation «y» ou «n» pour le téléchargement de chaque fichier, un par un.
Le même argument pour placer des ensembles de fichiers dans des archives tar s’applique pour placer des fichiers comme pour obtenir des fichiers. Notre utilisateur télécharge plusieurs fichiers «.odt» avec la commande suivante:
mput *.odt
Création et modification de répertoires
Si votre compte utilisateur sur le serveur ftp le permet, vous pourrez peut-être créer des répertoires. La commande pour ce faire est mkdir
. Pour être clair, tout répertoire que vous créez avec le mkdir
La commande sera créée sur le serveur ftp et non sur votre ordinateur local.
Pour changer de répertoire sur le serveur ftp, utilisez le cd
commander. Lorsque vous utilisez le cd
commander le ftp>
l’invite ne changera pas pour refléter votre nouveau répertoire actuel. le pwd
(imprimer le répertoire de travail) vous montrera votre répertoire actuel.
Notre utilisateur ftp crée un répertoire appelé musique, change dans ce nouveau répertoire, confirme où il se trouve en utilisant le pwd
La commande télécharge ensuite un fichier dans ce répertoire.
mkdir music
cd music
pwd
put songs.tar.gz
Pour passer rapidement au répertoire parent du répertoire actuel, utilisez le cdup
commander.
cdup
Accéder à l’ordinateur local
Pour changer de répertoire sur l’ordinateur local, vous pouvez utiliser le lcd
commande à la ftp>
rapide. Il est cependant facile de perdre la trace de votre position dans le système de fichiers local. Une méthode plus pratique pour accéder au système de fichiers local consiste à utiliser le !
commander.
le !
La commande ouvre une fenêtre shell sur l’ordinateur local. Vous pouvez faire tout ce que vous pouvez dans ce shell dans une fenêtre de terminal standard. Lorsque vous tapez exit
vous êtes renvoyé au ftp>
rapide.
Notre utilisateur a utilisé le !
commande et est entré dans une fenêtre shell sur l’ordinateur local. Ils ont émis un ls
commande pour voir quels fichiers sont présents dans ce répertoire, puis saisis exit
pour revenir au ftp>
rapide.
!
ls
exit
Renommer les fichiers
Pour renommer des fichiers sur le serveur FTP, utilisez le rename
commander. Ici, notre utilisateur FTP renomme un fichier avec rename
puis utilise le ls
commande pour lister les fichiers dans le répertoire.
rename songs.tar.gz rock_songs.tar.gz
ls
Suppression de fichiers
Pour supprimer des fichiers sur le serveur FTP, utilisez le delete
commander. Pour supprimer plusieurs fichiers à la fois, utilisez le mdelete
commander. Il vous sera demandé de fournir une confirmation «y» ou «n» pour la suppression de chaque fichier.
Ici, notre utilisateur FTP a répertorié les fichiers pour voir leurs noms, puis en a choisi un à supprimer. Ils décident alors de tous les supprimer.
ls
delete gc.o
mdelete *.o
Utilisation de la commande sftp
Les lecteurs familiarisés avec le système d’adressage IP auront remarqué que l’adresse 192.168 du serveur FTP utilisée dans les exemples ci-dessus est une adresse IP interne, également appelée adresse IP privée. Comme nous l’avons prévenu au début de cet article, le ftp
La commande ne doit être utilisée que sur les réseaux internes.
Si vous souhaitez vous connecter à un serveur FTP distant ou public, utilisez le sftp
commander. Notre utilisateur va se connecter à un compte SFTP appelé demo
sur le serveur FTP accessible au public situé à test.trebex.net
.
Lorsqu’ils se connectent, ils sont informés que la connexion est établie. Ils sont également informés que l’authenticité de l’hébergeur ne peut être vérifiée. Ceci est normal pour la première connexion d’un nouvel hôte. Ils appuient sur «y» pour accepter la connexion.
Parce que le nom du compte d’utilisateur (demo
) a été transmis sur la ligne de commande, ils ne sont pas invités à entrer le nom du compte utilisateur. Ils ne sont invités qu’à saisir le mot de passe. Ceci est saisi, vérifié et accepté, et ils sont présentés avec le sftp>
rapide.
sftp demo@test.rebex.net
Les commandes FTP que nous avons décrites ci-dessus fonctionneront exactement de la même manière dans une session SFTP, avec les exceptions suivantes.
- Pour supprimer un fichier, utilisez
rm
(FTP utilisedelete
) - Pour supprimer plusieurs fichiers, utilisez
rm
(FTP utilisemdelete
) - Pour passer au répertoire parent, utilisez
cd ..
(FTP utilisecdup
)
Notre utilisateur a utilisé quelques commandes dans sa session SFTP. Ils ont l’usage ls
pour lister les fichiers, et cd
pour changer dans le répertoire pub. Ils ont utilisé le pwd
pour imprimer le répertoire de travail.
Il existe d’autres options pour transférer des fichiers dans le monde Linux, notamment scp
(copie sécurisée), mais nous nous sommes concentrés ici sur FTP et SFTP. Utilisées dans les scénarios applicables, ces deux commandes vous seront utiles et vos besoins en matière de stockage et de récupération de fichiers.