Compago

...free knowledge

 
  • Increase font size
  • Default font size
  • Decrease font size
Home Manuali Linux Mini tutorial su SSH e SCP

Mini tutorial su SSH e SCP

E-mail Stampa PDF

Mini tutorial su SSH e SCP

Se state leggendo quest'articolo significa che avete già avuto a che fare con un server SSH, ma per completezza cerco spiegare meglio il classico scenario:

Io voglio avere una shell di comando su un server remoto, nella quale eseguire dei comandi e controllare quindi il mio server.

Usando windows potrei utilizzare PUTTY per impartire i comandi e WINSCP per gestirne i files in maniera grafica e molto intuitiva, ma se usassi linux?

Beh .. come primo passo mi devo collegare al mio server remoto e ipotizzando che il suo indirizzo IP sia 134.34.54.20 e io sia l'utente pippo in un terminale linux qualsiasi digiterei questo comando:

# ssh pippo@134.34.54.20 

se la porta non fosse quella classica (22) allora dovrei specificarla con l'opzione -p , esempio :

# ssh pippo@134.34.54.20 -p 2222

dove 2222 è la porta su cui il mio server SSH rimane in ascolto.

dopo di che inserisco la password ed il gioco è fatto.

Ma se volessi copiare o trasferire dei file dal mio pc al server e viceversa?

La soluzione è Secure Copy (copia sicura) detto anche SCP, il quale è un mezzo per trasferire in modo sicuro un file del computer tra un computer locale ed un host remoto o tra due host remoti, usando il protocollo Secure Shell (SSH).

Tipicamente, la sintassi del programma scp è la stessa del comando cp che serve per copiare i file in locale.
Per copiare un file dal mio pc verso il server remoto, dovrei utilizzare il seguente formato:

scp FileSorgente nomeUtente@host:directory/FileDestinazione

Al contrario se volessi copiare un file da remoto nel mio computer:

scp nomeUtente@host:directory/FileSorgente FileDestinazione

Quindi nel mio caso se volessi copiare un documento in una directory sul server remoto :

scp miodocumento.txt pippo@134.34.54.20:/home/pippo/miodocumento.txt 

Se invece volessi fare il contrario cioè copiare un file dal server remoto nel mio pc :

scp pippo@134.34.54.20:/home/pippo/miodocumento.txt miodocumento.txt 

Se volessi trasferire tutti i file cartella "sorgente" del pc remoto alla cartella "destinazione" del pc locale:

scp pippo@134.34.54.20:/home/pippo/sorgente/* /home/pluto/destinazione/ 

Se la porta del server non fosse la 22 per specificarla dovrei usare l'opzione -P (attenzione al P deve essere maiuscola), esempio:

# scp -P 2222 miodocumento.txt pippo@134.34.54.20:/home/pippo/miodocumento.txt

Per non consumare tutta la banda, dato che in caso di invio dati e con una ADSL velocità di trasmissione è molto limitata, potrei utilizzare l'opzione "-l" seguita dal numeri di Kbit da utilizzare, notare che parlo di Kbit non di Kbyte quindi se impongo "-l 240" intendo limitare la banda a 240 Kbit che corrispondono a 240/8=30KByte.

Altre opzioni utili sono "-r" con il quale si permette la ricerca ricorsiva anche nelle subdirectory, molto utile se si cerca di copiare una cartella che ne contiene a sua volta delle altre, e l'opzione "-C" che abilita la compressione dei dati trasmessi.

Ultimo aggiornamento ( Lunedì 20 Agosto 2012 14:30 )  
Loading

Login




Chiudi