SFTP (SSH File Transfer Protocol) är ett säkert filprotokoll som används för att komma åt, hantera och överföra filer över en krypterad SSH-transport.
jämfört med det traditionella FTP-protokollet erbjuder SFTP alla funktioner i FTP, men det är säkrare och enklare att konfigurera.
Till skillnad från SCP, som endast stöder filöverföringar, låter SFTP dig utföra en rad operationer på fjärrfiler och återuppta filöverföringar.
i den här handledningen visar vi dig hur du använder Linuxsftp
– kommandot.,
innan du börjar #
för att kunna överföra filer via SFTP måste du ha skrivbehörighet på fjärrsystemet.
När du överför stora filer rekommenderas att du kör kommandot sftp
inuti en skärm eller tmux-session.
katalogen där du kör kommandotsftp
är den lokala arbetskatalogen.
upprätta en SFTP-anslutning #
SFTP fungerar på en klient-servermodell. Det är ett delsystem av SSH och stöder alla SSH autentiseringsmekanismer.
för att öppna en SFTP-anslutning till ett fjärrsystem, använd kommandotsftp
följt av användarnamnet för fjärrservern och IP-adressen eller domännamnet:
sftp remote_username@server_ip_or_hostname
om du ansluter till värden med lösenordsautentisering uppmanas du att ange användarlösenordet.,
När du är ansluten kommer du att presenteras medsftp
– prompten, och du kan börja interagera med fjärrservern:
Connected to remote_username@server_ip_or_hostname.sftp>
om fjärrservern inte lyssnar på standardporten 22, använd alternativet-P
för att ange SFTP-porten:
sftp
om fjärrservern inte lyssnar på standardporten 22 , använd alternativet -P
för att ange SFTP-porten:
sftp -P custom_port remote_username@server_ip_or_hostname
SFTP-kommandon #
de flesta av SFTP-kommandona liknar eller är identiska med Linux shell-kommandona.
för att få en lista över alla tillgängliga SFTP-kommandon, skrivhelp
, eller?
.,
help
detta kommer att mata ut en lång lista över alla tillgängliga kommandon, inklusive en kort beskrivning av varje kommando:
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
navigera med SFTP #
När du är inloggad på fjärrservern är din nuvarande arbetskatalog fjärranvändarens hemkatalog., Du kan kontrollera det genom att skriva:
pwd
Remote working directory: /home/remote_username
för att lista filer och kataloger, använd kommandot ls
:
ls
för att navigera till en annan katalog, använd kommandot cd
kommando. Om du till exempel vill byta till katalogen /tmp
skriver du:
cd /tmp
ovanstående kommandon används för att navigera och arbeta på fjärrplatsen.
SFTP-skalet tillhandahåller också kommandon för lokal navigering, information och filhantering., De lokala kommandona är prefixerade med bokstaven l
.
om du till exempel vill skriva ut den lokala arbetskatalogen skriver du:
cd lpwd
Local working directory: /home/local_username
genom att överföra filer med SFTP #
SFTP kan du överföra filer mellan två maskiner säkert.
om du arbetar på en stationär dator kan du använda en GUI SFTP-klient som WinSCP eller FileZilla för att ansluta till fjärrservern och ladda ner eller ladda upp filer.,
kommandotsftp
är användbart när du arbetar på en server utan GUI, och du vill överföra filer eller utföra andra operationer på fjärrfilerna.,
ladda ner filer med kommandot SFTP #
för att ladda ner en enda fil från fjärrservern, använd kommandotget
:
get filename.zip
utdata ska se ut så här:
Fetching /home/remote_username/filename.zip to filename.zip/home/remote_username/filename.zip 100% 24MB 1.8MB/s 00:13
När du hämtar filer med
get filename.zip
utdata ska se ut så här:
Fetching /home/remote_username/filename.zip to filename.zip/home/remote_username/filename.zip 100% 24MB 1.8MB/s 00:13
677b7a30b5 ”> , filerna hämtas till katalogen från vilken du skrev kommandot sftp
.,
om du vill spara den nedladdade filen med ett annat namn anger du det nya namnet som det andra argumentet:
get filename.zip local_filename.zip
för att ladda ner en katalog från fjärrsystemet, använd alternativet rekursiv-r
:
get -r remote_directory
om en filöverföring misslyckas eller avbryts kan du återuppta den med kommandot.,
syntaxen för reget
är densamma som syntaxen för get
:
reget filename.zip
Ladda upp filer med kommandot SFTP #
för att ladda upp en fil från den lokala datorn till fjärrservern, använd put
kommando:
put filename.zip
utgången ska se ut så här:
Uploading filename.zip to /home/remote_username/filename.zipfilename.zip 100% 12MB 1.7MB/s 00:06
Om filen du vill ladda upp inte finns i din nuvarande arbetskatalog, använd den absoluta sökvägen till filen.,
När du arbetar med put
kan du använda samma alternativ som är tillgängliga med kommandot get
.
för att ladda upp en lokal katalog skriver du:
put -r locale_directory
för att återuppta en avbruten uppladdning:
reput filename.zip
Filmanipulationer med SFTP #
För att utföra uppgifter på en fjärrserver skulle du ansluta till den via SSH och göra ditt arbete med skalterminalen. I vissa situationer kan användaren dock bara ha SFTP-åtkomst till fjärrservern.,
SFTP kan du utföra vissa grundläggande fil manipulation kommandon.,remote server:
mkdir directory_name
byt namn på en fil på fjärrservern:
rename file_name new_file_name
Ta bort en fil på fjärrservern:
rm file_name
Ta bort en katalog på fjärrservern:
rmdir directory_name
ändra behörigheterna för en fil på fjärrsystemet:
chmod 644 file_name
ändra ägaren till en fil på fjärrsystemet:
chown user_id file_name
Du måste leverera användar-ID till chown
och chgrp
kommandon.,
ändra gruppägaren för en fjärrfil med:
chgrp group_id file_name
När du är klar med ditt arbete stänger du anslutningen genom att skrivabye
ellerquit
.
slutsats #
i den här handledningen har vi visat dig hur du använder kommandotsftp
för att ladda ner och ladda upp filer till din fjärr SFTP-server.
Du kanske också vill konfigurera en ssh-nyckelbaserad autentisering och ansluta till dina Linux-servrar utan att ange ett lösenord., Om du regelbundet ansluter till samma system kan du förenkla ditt arbetsflöde genom att definiera alla dina anslutningar i SSH-konfigurationsfilen .
Lämna ett svar