Vyhledávání na webu

Jak nahrávat nebo stahovat soubory/adresáře pomocí sFTP v Linuxu


sFTP (Secure File Transfer Program) je bezpečný a interaktivní program pro přenos souborů, který funguje podobným způsobem jako FTP (File Transfer Protocol). sFTP je však bezpečnější než FTP; zpracovává všechny operace přes šifrovaný přenos SSH.

Lze jej nakonfigurovat tak, aby používal několik užitečných funkcí SSH, jako je ověřování veřejného klíče a komprese. Připojí se a přihlásí se k určenému vzdálenému počítači a přepne do interaktivního příkazového režimu, kde může uživatel provádět různé příkazy.

V tomto článku vám ukážeme, jak nahrát/stáhnout celý adresář (včetně jeho podadresářů a podsouborů) pomocí sFTP.

Jak používat sFTP k přenosu souborů/adresářů v Linuxu

Ve výchozím nastavení SFTP používá stejný přenos SSH pro navázání zabezpečeného připojení ke vzdálenému serveru. Hesla se sice používají k ověřování uživatelů podobně jako výchozí nastavení SSH, ale pro zjednodušené a bezpečnější připojení ke vzdáleným hostitelům se doporučuje vytvořit a používat přihlašování SSH bez hesla.

Připojte se ke vzdálenému FTP serveru bezpečně

Chcete-li se připojit ke vzdálenému serveru sftp, nejprve vytvořte zabezpečené připojení SSH a poté vytvořte relaci SFTP, jak je znázorněno.

sftp [email 

Jakmile se přihlásíte ke vzdálenému hostiteli, můžete spouštět interaktivní sFTP příkazy jako v příkladech níže:

sftp> ls			#list directory 
sftp> pwd			#print working directory on remote host
sftp> lpwd			#print working directory on local host
sftp> mkdir uploads		#create a new directory

Jak nahrát adresář pomocí sFTP

Chcete-li nahrát celý adresář do vzdáleného hostitele Linuxu, použijte příkaz put. Pokud však název adresáře neexistuje v pracovním adresáři na vzdáleném hostiteli, zobrazí se chyba, jak je znázorněno na snímku obrazovky níže.

Proto nejprve vytvořte na vzdáleném hostiteli adresář se stejným názvem, než jej nahrajete z místního hostitele, -r udělá kouzlo a umožní kopírování podadresářů a podsouborů:

sftp> put -r  linux-console.net-articles
sftp> mkdir linux-console.net-articles
sftp> put -r linux-console.net-articles

Chcete-li zachovat časy úprav, časy přístupu a režimy z původních přenesených souborů, použijte příznak -p.

sftp> put -pr linux-console.net-articles

Jak stáhnout adresář pomocí sFTP

Chcete-li stáhnout celý adresář s názvem fstools-0.0 ze vzdáleného hostitele Linuxu do místního počítače, použijte příkaz get s příznakem -r následovně:

sftp> get -r fstools-0.0

Poté zkontrolujte aktuální pracovní adresář na místním hostiteli, zda byl adresář stažen s veškerým obsahem.

Chcete-li úplně sFTP shell, zadejte:

sftp> bye
OR
sftp> exit

Dále si přečtěte příkazy sFTP a tipy k použití.

Všimněte si, že chcete-li uživatelům zabránit v přístupu k celému systému souborů na vzdáleném hostiteli, z bezpečnostních důvodů můžete omezit uživatele sFTP na jejich domovské adresáře pomocí chroot Jail.

A je to! V tomto článku jsme vám ukázali, jak nahrát/stáhnout celý adresář pomocí sFTP. Použijte sekci komentářů níže a sdělte nám své názory na tento článek/téma.