GNU/Linux >> Linux Esercitazione >  >> Ubuntu

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

Cos'è SFTP?

Simple File Transfer Protocol (SFTP) è un protocollo utilizzato per trasferire file tra due dispositivi su Internet. Funziona su protocolli FTP (File Transfer Protocol) e Secure Shell (SSH).

Mentre il protocollo trasferisce i file, protegge anche dallo sniffing delle password, dagli attacchi man-in-the-middle e dall'esposizione di dati sensibili. Preserva inoltre l'integrità dei dati con l'aiuto della crittografia e delle funzioni di hash crittografico. Autentica inoltre sia il client che il server prima di concedere l'accesso. Ciò consente il trasferimento sicuro dei file.

Guida all'installazione

In questo tutorial, ti mostrerò come puoi facilmente scambiare file tra macchine locali e remote utilizzando questo protocollo di trasferimento file super pratico.

Per questa guida ho usato Linux Mint Cinamon 20.02 come macchina locale e Ubuntu 20.04 LTS come macchina remota.

Il tutorial è diviso in due parti. Nella prima parte vedrai come trasferire un file da una macchina remota a una macchina locale. Nell'altra parte, vedrai come trasferire un file dal tuo computer locale a un computer remoto.

Iniziamo!

Trasferisci file da una macchina remota a una macchina locale

Fase 1:SSH su macchina remota

Il primo passaggio consiste nel creare una connessione SSH alla macchina remota. Per farlo, prima diventa un superutente usando il seguente comando:

sudo -i

Ora che sei diventato un superutente, ssh al computer remoto con cui vuoi comunicare per ottenere il file.

ssh [email protected]

Fase 2:individua il file da trasferire

Quindi, individua il file che desideri copiare. In questo tutorial creerò un nuovo file per trasferirlo sul mio computer locale.

Per farlo, andrò nella directory /etc eseguendo il comando seguente:

cd /etc

Con l'aiuto del comando touch creerò un nuovo file con il nome transfer.txt.

touch transfer.txt

Fase 3:stabilisci una connessione SFTP con la macchina remota

Ora ci connetteremo alla macchina remota usando sftp, come mostrato di seguito:

sftp [email protected]

Se vedi sftp scritto in questo modo, significa che sei in modalità sftp. Ora le macchine locali e remote possono scambiare file usando questo protocollo.

Fase 4:controlla con quali directory sftp interagisce

Prima di procedere al trasferimento dei file, navighiamo un po' per capire con quali directory sftp interagisce. Esegui il comando seguente per conoscere la tua attuale directory di lavoro:

pwd

Per vedere la directory di lavoro attuale della macchina locale, useremo:

lpwd

Possiamo anche cambiare la directory con cui vogliamo interagire. È incluso nella seconda parte di questa guida.

Fase 5:trasferisci il file

Andiamo nella directory /etc dove abbiamo creato il file transfer.txt.

cd /etc

Per inviare un file dalla macchina remota alla macchina locale, utilizziamo il comando get seguito dal nome del file come mostrato di seguito:

get transfer.txt

Ora vai alla directory principale del tuo sistema locale con il seguente comando:

cd ~

Usa ls per vedere tutti i file nella directory.

Come puoi vedere, il file transfer.txt è ora nella nostra macchina locale.

Dopo aver chiuso la sessione sftp, puoi trasferire il file dalla tua directory principale a qualsiasi altra cartella sul tuo computer.

Trasferisci file da una macchina locale a una macchina remota

Ora che abbiamo visto come trasferire un file da una macchina remota a una locale, vediamo come possiamo andare nella direzione opposta.

Abbiamo un altro file test.txt sul nostro computer locale nel seguente percorso di directory:

/home/azifa/Downloads/folder

Da qui lo trasferiremo sulla nostra macchina remota.

Fase 1:connettiti alla macchina remota tramite SFTP

sftp [email protected]

Fase 2:cambia la directory locale con cui sftp interagisce

La directory di lavoro attuale locale è:

lpwd

Come ti ho detto prima, possiamo cambiare la directory locale con cui vogliamo che sftp interagisca. Per farlo, usa il comando lcd:

 lcd /home/azifa/Downloads/folder

Prima di questo, sftp interagiva con la directory principale della macchina locale. Ora interagirà con la directory /home/azifa/Downloads/folder. Puoi confermarlo con il seguente comando:

lpwd

Fase 4:trasferisci il file

Successivamente, utilizziamo il comando put per trasferire il file dalla macchina locale alla macchina remota.

Esegui il comando ls per vedere se il file è stato trasferito con successo nella directory /home della macchina remota.

ls

Sì, il file che abbiamo trasferito è qui nella macchina remota.

Ora puoi terminare la sessione con un semplice comando di arrivederci.

bye

In questo articolo, ti ho spiegato con quanta facilità puoi trasferire file tra una macchina remota e una macchina locale con l'aiuto di un protocollo di trasferimento file noto come SFTP. Usando questo metodo, puoi scambiare file di grandi dimensioni in sicurezza poiché è un protocollo sicuro che crittografa i tuoi dati per la protezione.

Per vedere come configurare un server ProFTPD su Linux Mint 20, visita:

https://linuxways.net/mint/install-proftpd-on-linux-mint-20/


Ubuntu
  1. Come trasferire file tra due computer utilizzando i comandi nc e pv

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

  3. Come copiare file tra i pod Kubernetes e la tua macchina

  4. Come trasferire file in Linux con SCP e Rsync

  5. Come trasferire file in modo sicuro utilizzando sftp (esempi inclusi)

Come utilizzare il comando SFTP per trasferire file

Come condividere e trasferire file tra Linux e Windows

Come trasferire in modo sicuro file tra sistemi Ubuntu utilizzando Croc

Come creare macchine virtuali in KVM usando Virt-Manager

4 modi per trasferire file tra sistemi remoti e locali su SSH

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