SFTP (SSH File Transfer Protocol) je zabezpečený souborový protokol, který se používá k přístupu, správě a přenosu souborů přes šifrovaný přenos SSH.
ve srovnání s tradičním protokolem FTP nabízí SFTP všechny funkce FTP, ale je bezpečnější a jednodušší konfigurovat.
Na rozdíl od SCP , který podporuje pouze přenosy souborů, SFTP umožňuje provádět řadu operací na vzdálených souborech a obnovit přenosy souborů.
v tomto tutoriálu vám ukážeme, jak používat příkaz Linux sftp
.,
než začnete #
abyste mohli přenášet soubory přes SFTP, musíte mít oprávnění k zápisu do vzdáleného systému.
při přenosu velkých souborů se doporučuje spustit příkaz sftp
uvnitř obrazovky nebo relace tmux.
adresář, odkud spustíte příkazsftp
, je místní pracovní adresář.
navázání spojení SFTP #
SFTP funguje na modelu klient-server. Jedná se o subsystém SSH a podporuje všechny mechanismy ověřování SSH.
otevřít SFTP připojení na vzdálený systém, pomocí sftp
příkaz následovaný vzdálenému serveru, uživatelské jméno a IP adresu nebo název domény:
sftp remote_username@server_ip_or_hostname
Pokud se připojujete k hostiteli pomocí ověřování hesla, budete vyzváni k zadání hesla uživatele.,
po připojení, bude vám prezentovány s sftp
řádek a můžete začít komunikovat s vzdáleného serveru:
Connected to remote_username@server_ip_or_hostname.sftp>
Pokud je vzdálený SSH server nenaslouchá na výchozí port 22 , použít -P
možnost zadat SFTP port:
sftp -P custom_port remote_username@server_ip_or_hostname
SFTP Příkazy #
Většina SFTP příkazy jsou podobné nebo totožné s Linux shell příkazy.
získat seznam všech dostupných příkazy SFTP, zadejte help
nebo ?
.,
help
vypíše seznam všech dostupných příkazů včetně krátkého popisu každého příkazu:
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
Navigace s SFTP #
Když jste přihlášeni ke vzdálenému serveru, vaše aktuální pracovní adresář je vzdálený domovský adresář uživatele., To si můžete ověřit zadáním příkazu:
pwd
Remote working directory: /home/remote_username
seznam souborů a adresářů, používání ls
příkaz:
ls
navigovat do jiného adresáře, pomocí cd
příkaz. Například pro přepnutí do /tmp
adresáře, zadejte:
cd /tmp
výše uvedené příkazy se používají pro navigaci a práci na vzdáleném místě.
SFTP shell také poskytuje příkazy pro místní navigaci, informace a správu souborů., Místní příkazy jsou prefixovány písmenem l
.
například, vytisknout místní pracovní adresář, zadejte:
cd lpwd
Local working directory: /home/local_username
Přenos Souborů pomocí SFTP #
SFTP umožňuje přenos souborů mezi dvěma stroji bezpečně.
Pokud pracujete na stolním počítači, můžete použít GUI SFTP klienta jako WinSCP nebo FileZilla pro připojení ke vzdálenému serveru a stahování nebo nahrávání souborů.,
sftp
příkaz je užitečný při práci na serveru bez GUI, a chcete přenést soubory nebo provádět jiné operace na vzdálené soubory.,
Stahování Souborů s SFTP Příkaz #
Ke stažení jeden soubor ze vzdáleného serveru, použijte get
příkaz:
get filename.zip
výstup by měl vypadat nějak takto:
Fetching /home/remote_username/filename.zip to filename.zip/home/remote_username/filename.zip 100% 24MB 1.8MB/s 00:13
Při stahování souborů s sftp
, jsou soubory stažené do adresáře, ze kterého jste zadali sftp
příkaz.,
Pokud chcete uložit stažený soubor s jiným názvem, zadejte nový název jako druhý argument:
get filename.zip local_filename.zip
stáhnout adresář ze vzdáleného systému pomocí rekurzivní -r
možnost:
get -r remote_directory
Pokud se přenos souboru nezdaří, nebo je přerušeno, můžete pokračovat pomocí reget
příkaz.,
syntaxe reget
je stejná jako syntaxe get
:
reget filename.zip
Nahrávání Souborů s SFTP Příkaz #
nahrát soubor z lokálního stroje na vzdálený SFTP server, pomocí put
příkaz:
put filename.zip
výstup by měl vypadat nějak takto:
Uploading filename.zip to /home/remote_username/filename.zipfilename.zip 100% 12MB 1.7MB/s 00:06
Pokud soubor, který chcete nahrát, není se nachází v aktuální pracovním adresáři, použijte absolutní cestu k souboru.,
Při práci s put
můžete použít stejné možnosti, které jsou k dispozici s get
příkaz.
nahrát místní adresáře, zadejte:
put -r locale_directory
pokračovat v přerušeném uploadu:
reput filename.zip
Soubor Manipulace s SFTP #
Typicky, plnit úkoly na vzdáleném serveru, by se k němu připojit přes SSH a dělat svou práci pomocí shell terminálu. V některých situacích však může mít uživatel pouze přístup SFTP ke vzdálenému serveru.,
SFTP umožňuje provádět některé základní příkazy pro manipulaci se soubory.,vzdálený server:
mkdir directory_name
Přejmenovat soubor na vzdáleném serveru:
rename file_name new_file_name
Odstranit soubor na vzdálený server:
rm file_name
Odstranit adresář na vzdáleném serveru:
rmdir directory_name
Změnit oprávnění souboru na vzdáleném systému:
chmod 644 file_name
Změnit vlastníka souboru na vzdáleném systému:
chown user_id file_name
musíte zadat ID uživatele chown
chgrp
příkazy.,
Změnit vlastníka skupiny vzdáleného souboru s:
chgrp group_id file_name
Jakmile jste udělal s vaší prací, ukončit spojení, zadáním bye
nebo quit
.
Závěr #
V tomto návodu jsme vám ukázali, jak použít sftp
příkaz stáhnout a nahrát soubory na vzdálený SFTP server.
možná budete chtít nastavit autentizaci založenou na SSH klíči a připojit se k vašim serverům Linux bez zadání hesla., Pokud se pravidelně připojujete ke stejným systémům, můžete zjednodušit pracovní postup definováním všech vašich připojení v konfiguračním souboru SSH .
Napsat komentář