GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Come utilizzare SFTP per trasferire file

Introduzione

SFTP (Safe File Transfer Protocol) è incluso insieme a SSH come modo sicuro per trasferire file tra sistemi remoti. Consente inoltre agli utenti di eseguire attività amministrative di base su server remoti, come la gestione di file e directory e l'impostazione delle autorizzazioni dei file.

In questo tutorial, ti mostreremo come utilizzare SFTP per trasferire file tra un sistema locale e uno remoto utilizzando l'interfaccia del terminale.

Prerequisiti

  • Accesso a un sistema locale ea un server remoto, collegati tramite una coppia di chiavi pubbliche SSH.
  • Una connessione Internet funzionante.
  • Accesso alla finestra del terminale.

Come connettersi tramite SFTP

SFTP stabilisce una connessione sicura tra i sistemi utilizzando il protocollo di rete SSH. Ciò ti consente di connetterti a qualsiasi sistema che abbia una copia della tua chiave SSH pubblica.

La connessione a un altro sistema tramite SFTP segue la stessa sintassi dei comandi della connessione tramite SSH. Il comando richiede di fornire un nome utente e un nome host remoto o un indirizzo IP per il sistema a cui desideri accedere:

sftp [username]@[remote hostname or IP address]

Nell'esempio seguente, ci stiamo connettendo a un sistema con l'indirizzo IP 192.168.100.5 usando phoenixnap nome utente:

sftp [email protected]

Per terminare una connessione in corso, usa:

exit

Come trasferire file utilizzando SFTP

L'utilizzo di SFTP consente di trasferire file da un server remoto a un sistema locale e viceversa.

Trasferisci file remoti su un sistema locale

Usa il get comando nell'interfaccia SFTP per trasferire un file da un server remoto al tuo sistema locale:

get [path to file]

Ad esempio, per trasferire un file chiamato example_document.txt dalla Casa del sistema remoto directory nel sistema locale, utilizzare:

get example_document.txt

Per impostazione predefinita, SFTP trasferisce i file alla Home del sistema locale directory. Per trasferire i file in una directory diversa, aggiungi il percorso della directory alla fine di get comando:

get example_document.txt Downloads

Per modificare il nome del file sul sistema locale, aggiungi il nuovo nome del file alla fine di get comando.

get example_document.txt sample01.txt

Nell'esempio sopra, il get il comando recupera example_document.txt file e lo salva come sample01.txt sul sistema locale.

SFTP consente anche il trasferimento di un'intera directory dal sistema remoto utilizzando il -r flag, che indica un trasferimento ricorsivo di tutti i file nella directory:

get -r Example_Directory

Aggiungi il -P segnala a get comando per trasferire il file o la directory preservando i permessi e i tempi di accesso:

get -Pr Example_Directory

Usa ls comando per verificare il trasferimento al sistema locale:

ls -l

Trasferisci file locali su un server remoto

Per trasferire file da un sistema locale a un server remoto, usa il put comando. Il put Il comando usa la stessa sintassi e le stesse opzioni del get comando.

put [path to file]

Ad esempio, per trasferire un example01.txt file sul server remoto, utilizzare:

put example01.txt

Per trasferire il file in una directory specifica sul server remoto, aggiungi il percorso della directory alla fine del put comando.

put example01.txt Example_Directory

Aggiunta di un nuovo nome file alla fine del put comando cambia il nome del file trasferito sul server remoto.

put example01.txt text_sample.txt

Il trasferimento di un'intera directory richiede il -r bandiera.

put -r Test_Directory

Aggiungi il -P segnala al put comando per preservare i permessi dei file:

put -Pr Test_Directory

Verifica il trasferimento del file utilizzando ls comando sul sistema remoto:

Manutenzione dei file tramite SFTP

SFTP supporta la manutenzione di base dei file. Ad esempio, utilizzare SFTP per modificare i permessi di file e directory su un sistema remoto.

Il chown comando cambia la proprietà del file in modo simile al comando chmod:

chown [user ID] [path to file]

A differenza di chmod comando, chown accetta solo ID utente e non nomi utente. Per trovare gli UID per il server remoto utilizzando l'interfaccia SFTP è necessario trasferire e accedere a /etc/passwd file:

get /etc/passwd
!less passwd

L'UID di ogni utente si trova nella terza colonna, separata dai due punti:

Il chmod il comando funziona come nella shell standard:

chmod [permission] [path to file]

Un'altra opzione consiste nel modificare la proprietà del file di gruppo con chgrp comando:

chgrp [group ID] [path to file]

Come per gli UID, gli ID di gruppo si trovano nella terza colonna di /etc/group file sul server remoto:

get /etc/group
!less group

SFTP consente di impostare una umask locale, che modifica l'autorizzazione predefinita per i file trasferiti al sistema locale.

Ad esempio:

lumask 022

Il comando sopra cambia la umask locale in 022 . Ogni file trasferito dopo aver impostato questa umask ora ha il 644 autorizzazione per impostazione predefinita. Puoi comunque conservare l'autorizzazione originale utilizzando il -p bandiera.

Un altro modo per modificare i permessi dei file locali consiste nell'usare SFTP per replicare il comportamento dei comandi della shell. A tale scopo, aggiungi un punto esclamativo (! ) prima del nome del comando.

Ad esempio, utilizzando il chmod comando sul sistema locale:

!chmod [permission] [path to file]

Ubuntu
  1. Come utilizzare il comando SFTP per il trasferimento di file sicuro

  2. Come trasferire file tra macchine locali e remote utilizzando il protocollo SFTP

  3. Utilizzo del protocollo SFTP per trasferire file tra macchine locali e remote

  4. Come trasferire file in Linux con SCP e Rsync

  5. Come utilizzare FTP in Linux per trasferire file

Come utilizzare il comando FTP di Linux per trasferire file

Come utilizzare il comando SCP per trasferire file in modo sicuro

Come utilizzare il comando SFTP per trasferire file

Come utilizzare il comando SCP per trasferire file

Come utilizzare il Bluetooth su Ubuntu per il trasferimento di file

Procedura:Comandi SFTP – Trasferisci file in modo sicuro su un server remoto