Connessione principale
È più semplice se pianifichi in anticipo.
Aprire una connessione principale la prima volta. Per le connessioni successive, instradare le connessioni slave attraverso la connessione master esistente. Nel tuo ~/.ssh/config
, imposta la condivisione della connessione in modo che avvenga automaticamente:
ControlMaster auto
ControlPath ~/.ssh/control:%h:%p:%r
Se avvii una sessione ssh sulla stessa (utente, porta, macchina) di una connessione esistente, la seconda sessione verrà incanalata sulla prima. Stabilire la seconda connessione non richiede alcuna nuova autenticazione ed è molto veloce.
Quindi, mentre hai la tua connessione attiva, puoi rapidamente:
spedizione
Su una connessione esistente, è possibile stabilire un tunnel SSH inverso. Sulla riga comandi ssh, crea un inoltro remoto passando -R 22042:localhost:22
dove 22042 è un numero scelto casualmente che è diverso da qualsiasi altro numero di porta sul computer remoto. Quindi ssh -p 22042 localhost
sulla macchina remota ti riconnetti alla macchina sorgente; puoi usare scp -P 22042 foo localhost:
per copiare i file.
Puoi automatizzarlo ulteriormente con RemoteForward 22042 localhost:22
. Il problema è che se ti connetti allo stesso computer con più istanze di ssh o se qualcun altro sta usando la porta, non ottieni l'inoltro.
Se non hai abilitato un inoltro remoto dall'inizio, puoi farlo su una sessione ssh esistente. Tipo Enter ~C
Enter -R 22042:localhost:22
Enter. Vedere "Escape character" nel manuale per ulteriori informazioni.
Ci sono anche alcune informazioni interessanti in questo thread di errore del server .
Copia incolla
Se il file è piccolo, è possibile digitarlo e incollarlo dall'output del terminale. Se il file contiene caratteri non stampabili, utilizzare una codifica come base64 .
remote.example.net $ base64 <myfile
(copia l'output)
local.example.net $ base64 -d> myfile
(incolla il contenuto degli appunti)
Ctrl +D
Più comodamente, se hai X forwarding attivo, copia il file sul computer remoto e incollalo localmente. È possibile reindirizzare i dati dentro e fuori di xclip
o xsel
. Se vuoi conservare il nome del file e i metadati, copia e incolla un archivio.
remote.example.net$ tar -czf - myfile | xsel
local.example.net$ xsel | tar -xzf -
scp file.foo user@myclient.com:file.foo
: P