File Transfer Protocol je standardní komunikační protokol používaný pro přenos počítačových souborů ze serveru na klienta v počítačové síti.
FTP dnes není populární, protože postrádá zabezpečení. Když je soubor odeslán pomocí tohoto protokolu, data, uživatelské jméno a heslo jsou sdíleny v prostém textu, což znamená, že hacker může k těmto informacím přistupovat s minimálním nebo žádným úsilím. Aby byla data v bezpečí, musíte použít upgradovanou verzi FTP, jako je SFTP.
SFTP Secure File Transfer Protocol je protokol pro přenos souborů, který poskytuje bezpečný přístup ke vzdálenému počítači za účelem zajištění zabezpečené komunikace. Využívá SSH – Secure Socket Shell a je často také označován jako ‚Secure Shell File Transfer Protocol‘.
Související obsah
- Jak nastavit server SFTP na serveru Debian 11
- Stahování souborů ze serveru SFTP pomocí skriptu python
- Seznam, nahrávání a stahování souborů ze serveru SFTP pomocí golang
- Jak nastavit server SFTP na serveru OpenSUSE Leap 15.3
- Jak nainstalovat a nastavit sftp server v Ubuntu 20.04
- Jak nastavit server SFTP na serveru CentOS 8 /RHEL 8
Předpoklady
Chcete-li pokračovat, ujistěte se, že máte následující:
- Server SFTP, ke kterému se lze připojit. Pokud chcete nastavit server, podívejte se na průvodce výše
- Přihlašovací údaje pro připojení k serveru
Obsah
- Připojování k serveru SFTP
- Kontrola verze sftp
- Zobrazení vzdáleného pracovního adresáře
- Zobrazit pracovní adresář místního počítače
- Nahrajte soubory na server sftp
- Stahování souborů ze serveru sftp
- Vytvoření a odstranění adresáře na serveru sftp
- Odebrání souborů ze serveru sftp
- Přejmenování souborů na serveru sftp
- Kontrola využití souborů na serveru sftp
- Jak získat pomoc
1. Připojování k serveru SFTP
K otestování přihlášení k SFTP můžete použít terminál příkazového řádku. To lze dokonce provést lokálně na serveru sftp.
Toto je formát přihlašovacího příkazu:
sftp [user]@[host]
Pojďme se připojit k našemu serveru. budete potřebovat vaše uživatelské jméno a heslo SFTP.
sftp [email protected]
Výstup:
$ sftp [email protected]
The authenticity of host '192.168.10.10 (192.168.10.10)' can't be established.
ECDSA key fingerprint is SHA256:99KvuL95zO2CQbC8X0Re/Q+cYrJgqQgzpf1leemnjmY.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.10.10' (ECDSA) to the list of known hosts.
[email protected]'s password:
Connected to 192.168.10.10.
sftp>
Tím se přihlásíte na server. Výchozí adresář je /home
dir zadaný v ChrootDirectory /home
v konfiguraci ssh serveru.
2. Kontrola verze SFTP
Pomocí příkazu version zkontrolujte verzi sftp.
sftp> version
SFTP protocol version 3
sftp>
3. Zobrazit vzdálený pracovní adresář
Pokud potřebujete zkontrolovat aktuální pracovní adresář na vzdáleném serveru, pwd
Příkaz se hodí:
sftp> pwd
Remote working directory: /sftpuser1
sftp>
4. Zobrazit pracovní adresář místního počítače
Chcete-li zobrazit aktuální pracovní adresář místního systému, použijte lpwd
příkaz.
sftp> lpwd
Local working directory: /home/ubuntu
sftp>
Vytvořený uživatel bude mít přístup pouze do svého adresáře. Přepněte se do tohoto adresáře pomocí následujícího příkazu:
sftp> cd sftpuser1
sftp>
Přejděte do domovského adresáře uživatele SFTP a zkuste vytvořit nový adresář následujícím způsobem:
sftp> ls
sftpuser1 ubuntu
sftp> cd sftpuser1
sftp> ls
sftp> mkdir datadir
sftp> ls
datadir
5. Nahrajte soubory na server sftp
Udělejte to z místního prostředí
Nahrajte soubory na vzdálený server pomocí této syntaxe příkazu:
$ sftp {user}@{host}:{remote-path} <<< $'put {local-path}'
Příklad:
$ sftp [email protected]:/sftpuser1/ <<< $'put ./citizix.txt'
[email protected]'s password:
Connected to 127.0.0.1.
Changing to: /sftpuser1/
sftp> put ./citizix.txt
Uploading ./citizix.txt to /sftpuser1/citizix.txt
./citizix.txt
Udělejte to ze serveru sftp
Použijte tyto příkazy: ls
pro výpis souborů lls
pro místní seznam put
pro nahrávání souborů:
sftp>
sftp> pwd
Remote working directory: /sftpuser1/datadir
sftp> ls
sftp> lls
citizix.txt snap tmp
sftp> put citizix.txt
Uploading citizix.txt to /sftpuser1/datadir/citizix.txt
citizix.txt 100% 32 25.8KB/s 00:00
sftp> ls
citizix.txt
sftp>
Chcete-li nahrát více souborů najednou, můžeme použít mput
příkaz jako v příkladu níže. Můžete použít mput
s regulárním výrazem jako data[23]
nahrát data2
, data3
a ignorujte data1
. S mput
můžete použít libovolný zástupný znak nebo regulární výraz .
sftp>
sftp> pwd
Remote working directory: /sftpuser1/data
sftp> ls
sftp> lls
data1 data2 data3
sftp> mput data[23]
Uploading data2 to /sftpuser1/data/data2
data2 100% 0 0.0KB/s 00:00
Uploading data3 to /sftpuser1/data/data3
data3 100% 0 0.0KB/s 00:00
sftp> ls
data2 data3
6. Stahování souborů ze serveru sftp
Udělejte to z místního počítače
Chcete-li stáhnout soubor ze vzdáleného serveru, použijte níže uvedenou syntaxi příkazu:
$ sftp {user}@{remote-host}:{remote-file-name} {local-file-name}
Zde je ukázka stahování souboru na jednom řádku pomocí sftp:
# sftp [email protected]:/sftpuser1/citizix.txt .
[email protected]'s password:
Connected to 127.0.0.1.
Fetching /sftpuser1/citizix.txt to ./citizix.txt
/sftpuser1/citizix.txt 100% 32 26.7KB/s 00:00
Udělejte to ze vzdáleného serveru sftp
Stáhněte si jeden soubor ze serveru pomocí get
. Příklad stahování data2
sftp>
sftp> ls
data2 data3
sftp> lls
sftp> get data2
Fetching /sftpuser1/data/data2 to data2
sftp> lls
data2
sftp>
Použijte mget
stáhnout více souborů jako v tomto příkladu
sftp>
sftp> ls
data2 data3
sftp> lls
sftp> mget data*
Fetching /sftpuser1/data/data2 to data2
Fetching /sftpuser1/data/data3 to data3
sftp> lls
data2 data3
sftp>
7. Vytvoření a odstranění adresáře na sftp serveru
Použijte příkazy mkdir
a rmdir
k vytváření a odstraňování adresářů
sftp>
sftp> ls
sftp> mkdir data
sftp> ls
data
sftp> rmdir data
sftp>
8. Odstranění souborů ze serveru sftp
Použijte příkaz rm
smazat soubory
sftp> rm data*
Removing /sftpuser1/data/data2
Removing /sftpuser1/data/data3
sftp>
9. Přejmenování souborů na sftp serveru
Použijte rename
příkaz k přejmenování souborů
sftp>
sftp> ls
data3
sftp> rename data3 data_original
sftp> ls
data_original
sftp>
10. Kontrola využití souborového systému na sftp serveru
Zobrazte statistiky pro aktuální adresář nebo souborový systém obsahující ‚cestu‘, použijte příkaz df. Můžeme použít příznak -h k zobrazení statistiky ve formátu čitelném pro člověka. Upozorňujeme, že zobrazené statistiky se týkají příslušného souborového systému vzdáleného serveru SFTP, nikoli souborového systému místního počítače.
sftp> df
Size Used Avail (root) %Capacity
29540600 5917856 22103188 23622744 20%
sftp> df -h
Size Used Avail (root) %Capacity
28.2GB 5.6GB 21.1GB 22.5GB 20%
11. Získání nápovědy
Chcete-li získat nápovědu k dostupným příkazům a syntaxi pro SFTP, použijte „?“ nebo „help“.
sftp> ?
Výstup:
sftp> ?
Available commands:
bye Quit sftp
cd path Change remote directory to 'path'
chgrp [-h] grp path Change group of file 'path' to 'grp'
chmod [-h] mode path Change permissions of file 'path' to 'mode'
chown [-h] own path Change owner of file 'path' to 'own'
df [-hi] [path] Display statistics for current directory or
filesystem containing 'path'
exit Quit sftp
get [-afpR] remote [local] Download file
help Display this help text
lcd path Change local directory to 'path'
lls [ls-options [path]] Display local directory listing
lmkdir path Create local directory
ln [-s] oldpath newpath Link remote file (-s for symlink)
lpwd Print local working directory
ls [-1afhlnrSt] [path] Display remote directory listing
lumask umask Set local umask to 'umask'
mkdir path Create remote directory
progress Toggle display of progress meter
put [-afpR] local [remote] Upload file
pwd Display remote working directory
quit Quit sftp
reget [-fpR] remote [local] Resume download file
rename oldpath newpath Rename remote file
reput [-fpR] local [remote] Resume upload file
rm path Delete remote file
rmdir path Remove remote directory
symlink oldpath newpath Symlink remote file
version Show SFTP version
!command Execute 'command' in local shell
! Escape to local shell
? Synonym for help
Další informace naleznete na manuálové stránce sftp.
$ man sftp
Ukončit relaci SFTP
Nakonec můžete sftp ukončit pomocí bye
, exit
nebo exit
:
sftp> exit
$
Závěr
V této příručce jsme prozkoumali základní operace, které lze provádět na serveru SFTP