I migliori comandi SFTP con esempio | Una guida SFTP completa

Pubblicato: 2022-07-19

Cos'è l'SFTP? Come funziona SFTP?

SFTP ( Secure File Transfer Protocol ) è il protocollo di trasferimento file più sicuro utilizzato per accedere, gestire e trasferire file su una rete SSH completamente protetta.

Potresti aver sentito parlare del protocollo FTP. L'SFTP è probabilmente simile all'FTP ma più sicuro. SFTP viene utilizzato principalmente per trasferire e accedere ai file su un trasporto protetto mentre, in FTP, è possibile eseguire diverse attività come la modifica, l'eliminazione, la gestione e il trasferimento dei file.

A differenza di SCP, SFTP consente agli utenti di accedere e gestire i file oltre al solo trasferimento. Tuttavia, questo tutorial riguarda interamente l'SFTP. Quindi, ti guideremo attraverso tutte le possibili attività che puoi eseguire in SFTP. In questo articolo, ti guideremo attraverso i principali comandi SFTP utili con esempi che tutti dovrebbero conoscere prima di iniziare a utilizzare il protocollo SFTP (Secure File Transfer Protocol).

Che cos'è SFTP - Tutto ciò che devi sapere sull'SFTP e sui suoi comandi

Prima di entrare nei comandi SFTP , per connetterti a un server remoto usando SFTP, devi avere le autorizzazioni aperte nel server remoto. Se non riesci a connetterti a SFTP, dovresti contattare il tuo provider di hosting remoto.

Crea una connessione SFTP

SFTP supporta tutti i metodi di autenticazione di SSH in quanto è un modello client-server. Si consiglia di utilizzare SFTP per trasferire file pesanti.

Per stabilire una connessione SFTP su una rete SSH, dovrai avere un client SSH installato sul tuo sistema locale. Ad esempio, sto usando PuTTY per stabilire una connessione SFTP dal mio server locale al server remoto.

  • Per connetterti con SFTP, apri PuTTY e connettiti al tuo server locale inserendo l'indirizzo IP o il nome host.

Configurazione del mastice

  • Digita il nome utente e la password per accedere al tuo server locale.

Accedi al server locale

  • Ora puoi stabilire una connessione SFTP usando il seguente comando:
 sftp nome_utente_remoto@IP_server_o_nome_host
  • Vedi l'immagine qui sotto, ad esempio, dove ho usato il mio nome utente_remoto e indirizzo IP.

sftp connesso

  • Digita la password del server remoto e premi invio per connetterti con SFTP. Sarai in grado di vedere il prompt sftp> dopo una connessione riuscita.

In alcuni casi, il server remoto smette di ascoltare la porta 22 predefinita, in questo caso puoi provare a inserire la porta manualmente mentre stabilisci la connessione seguendo il comando seguente.

 sftp -p porta_personalizzata nome_utente_remoto@IP_server_o_nome_host

I migliori comandi SFTP

  • Bene, ci sono centinaia di comandi che puoi usare in SFTP. La maggior parte dei comandi è probabilmente simile ai comandi della shell di Linux. È possibile utilizzare il comando di aiuto per ottenere l'elenco di tutti i comandi SFTP disponibili.
 Produzione:

sftp> aiuto
Comandi disponibili:
ciao Esci da sftp
cd path Cambia la directory remota in 'percorso'
chgrp grp path Cambia il gruppo di file 'percorso' in 'grp'
chmod mode path Cambia i permessi del file 'path' in 'mode'
chown proprio percorso Cambia il proprietario del file 'percorso' in 'proprio'
... ...
... ...
... ...
uscita Esci da sftp

  • Puoi vedere la tua attuale directory di lavoro remota con l'aiuto del comando pwd .
 Produzione:

sftp> pwd
Directory di lavoro remota: /home/Getintod

A parte questo, puoi aggiungere l (Local) prima di qualsiasi comando SFTP per eseguirlo sul tuo server locale. Ad esempio, utilizzare il comando lpwd per visualizzare la directory di lavoro attuale locale.

 Produzione:

sftp> lpwd
Directory di lavoro locale: /home/learnher

Utilizzare il comando ls per visualizzare l'elenco di file e directory presenti all'interno dell'SFTP remoto.

 sftp> ls home/utente/percorso

Simile a questo, usa il comando lls per vedere l'elenco di file e directory presenti all'interno del server locale.

 sftp> lls home/utente/percorso

Per navigare tra le directory, puoi usare il comando cd .

 sftp> cd home/utente/percorso

simile a questo, usa il comando lcd per cambiare la directory di lavoro attuale del tuo server locale.

 sftp> lcd home/utente/percorso

Trasferisci file in SFTP

Puoi facilmente scaricare o trasferire un file ( da remoto a locale ) in SFTP usando il comando get .

 sftp> ottieni nomefile.zip

Il file scaricato verrà archiviato nella directory di lavoro locale corrente . Inoltre, puoi scaricare il file con un nuovo nome utilizzando il comando seguente.

 sftp> ottieni nomefile.zip Nuovonome.zip

In alcuni casi, il download o il trasferimento potrebbe non riuscire o essere interrotto nel frattempo. Puoi riprendere il download seguendo il comando seguente.

 sftp> recupera nomefile.zip

Ora conosci i comandi per trasferire un file dal server remoto al tuo server locale. Inoltre, puoi anche trasferire un file dal tuo server locale al server remoto usando il comando put .

 sftp> inserisci nomefile.zip

Il comando put trasferirà solo file, per trasferire una directory dal server locale a quello remoto, puoi aggiungere un argomento -r ricorsivo nel tuo comando.

 sftp> put -r nome_directory

Allo stesso modo, per riprendere un file interrotto, utilizzare il comando seguente.

 sftp> reputare nomefile.zip

Puoi usare tutti gli argomenti nel comando put che hai usato nel comando get .


Alcuni altri utili comandi SFTP

Ci sono altri importanti comandi SFTP di cui dovresti essere a conoscenza. Tuttavia, se conosci i comandi della shell di Linux, sarà facile per te poiché puoi anche utilizzare alcuni comandi della shell di Linux in SFTP.

  • Per ottenere le informazioni sul server remoto:
 sftp> df
  • Per modificare l'autorizzazione file di un file sul server remoto:
 sftp> chmod 644 nomefile.php
  • Per creare una nuova directory sul server remoto:
 sftp> mkdir nome_directory
  • Per eliminare un file sul server remoto:
 sftp> rm nomefile.php
  • Per rinominare un file sul server remoto:
 sftp> rinomina nomefila.php nuovo nome_file.php
  • Per eliminare una directory vuota sul server remoto:
 sftp> rmdir nome_directory
  • Cambia il proprietario del gruppo di un file remoto:
 sftp> chgrp id_gruppo nome_file
  • Cambia proprietario del file sul server remoto (Root):
 [root@test pwd]# chown user_id nome_file
  • Per conoscere la tua attuale versione SFTP:
 sftp> versione
  • Per modificare il gruppo e il proprietario di un file/directory (Root):
 [root@test pwd]# chown nome utente:nomegruppo nomefile.php
[root@test pwd]# nome utente chown: nomegruppo nome directory
  • Sposta tutti i contenuti all'interno di una directory in un'altra directory (sposta tutti i file e le directory all'interno di una directory di un livello superiore).
 sftp> mv -v nomedirectory/* ~/home/utente/percorso

A parte questo, non puoi eliminare nessuna directory piena di contenuti al suo interno. Inoltre, SFTP non consente agli utenti di creare nuovi file. Tuttavia, puoi comunque eliminare il file se lo desideri.

Per chiudere la connessione SFTP, digita il comando ciao o esci e premi il pulsante Invio per tornare al server locale.

Ci auguriamo che ora tu abbia una buona conoscenza dei comandi SFTP e dell'uso dei comandi SFTP. A parte questo, ora puoi facilmente trasferire o scaricare file da SFTP al server locale e locale al server SFTP.