GNU/Linux >> Linux Esercitazione >  >> Linux

Come utilizzare i protocolli SSH e SFTP sulla rete domestica

Anni fa, ho deciso di configurare un computer aggiuntivo (dispongo sempre di computer extra) in modo da potervi accedere dal lavoro per trasferire i file di cui potrei aver bisogno. Per fare ciò, il primo passo fondamentale è che il tuo ISP assegni un indirizzo IP fisso.

Il passo successivo non così semplice ma molto più importante è configurare il tuo sistema accessibile in modo sicuro. In questo caso particolare, avevo intenzione di accedervi solo dal lavoro, quindi potevo limitare l'accesso a quell'indirizzo IP. Anche così, vuoi utilizzare tutte le possibili funzionalità di sicurezza. Ciò che è sorprendente, e spaventoso, è che non appena lo configuri, persone da tutto il mondo immediatamente tenta di accedere al tuo sistema. Puoi scoprirlo controllando i log. Presumo che ci siano robot costantemente alla ricerca di porte aperte ovunque possano trovarle.

Non molto tempo dopo aver configurato il mio computer, ho deciso che il mio accesso era più un giocattolo che un bisogno, quindi l'ho spento e mi sono dato una cosa in meno di cui preoccuparmi. Tuttavia, c'è un altro uso per SSH e SFTP all'interno della tua rete domestica, ed è più o meno già configurato per te.

Un requisito, ovviamente, è che l'altro computer in casa deve essere acceso, anche se non importa se qualcuno è connesso o meno. Devi anche conoscere il suo indirizzo IP. Ci sono due modi per scoprirlo. Uno è ottenere l'accesso al router, cosa che puoi fare tramite un browser. In genere, il suo indirizzo è qualcosa come 192.168.1.254 . Con alcune ricerche, dovrebbe essere abbastanza facile scoprire cosa è attualmente acceso e collegato al sistema tramite eth0 o WiFi. Ciò che può essere difficile è riconoscere il computer che ti interessa.

Trovo più facile andare al computer in questione, aprire una shell e digitare:

ifconfig

Questo sputa molte informazioni, ma il bit che vuoi è subito dopo inet e potrebbe assomigliare a 192.168.1.234 . Dopo averlo trovato, torna al computer client a cui desideri accedere a questo host e, sulla riga di comando, digita:

ssh [email protected]

Affinché funzioni, gregp deve essere un utente valido su quel sistema. Ti verrà quindi richiesta la sua password e, se la inserisci correttamente, verrai connesso a quell'altro computer in un ambiente shell. Confesso che non uso molto spesso SSH in questo modo. L'ho usato a volte in modo da poter eseguire dnf per aggiornare un computer diverso da quello su cui sono seduto. Di solito uso SFTP:

sftp [email protected]

perché ho una maggiore necessità di un metodo semplice per trasferire file da un computer all'altro. È sicuramente più comodo e meno dispendioso in termini di tempo rispetto all'utilizzo di una chiavetta USB o di un'unità esterna.

Più risorse Linux

  • Comandi Linux cheat sheet
  • Cheat sheet sui comandi avanzati di Linux
  • Corso online gratuito:Panoramica tecnica RHEL
  • Cheat sheet della rete Linux
  • Cheat sheet di SELinux
  • Cheat sheet dei comandi comuni di Linux
  • Cosa sono i container Linux?
  • I nostri ultimi articoli su Linux

Una volta connesso, i due comandi di base per SFTP sono get , per ricevere file dall'host; e put , per inviare file all'host. Di solito eseguo la migrazione alla directory sul mio client in cui desidero salvare i file che riceverò dall'host o inviare all'host prima di connettermi. Quando ti connetti, ti troverai nella directory di primo livello, in questo esempio home/gregp . Una volta connesso, puoi quindi utilizzare cd proprio come faresti nel tuo client, tranne che ora stai cambiando la tua directory di lavoro sull'host. Potrebbe essere necessario utilizzare ls per essere sicuro di sapere dove ti trovi.

Se hai bisogno di cambiare la directory di lavoro sul tuo client, usa il comando lcd (come in directory di modifica locale ). Allo stesso modo, usa lls per mostrare il contenuto della directory di lavoro sul tuo sistema client.

Cosa succede se l'host non ha una directory con il nome che desideri? Usa mkdir per creare una nuova directory su di esso. Oppure potresti copiare un'intera directory di file sull'host con questo:

put -r ThisDir/

che crea la directory e quindi copia tutti i suoi file e sottodirectory nell'host. Questi trasferimenti sono estremamente veloci, tanto quanto il tuo hardware lo consente e non presentano i colli di bottiglia che potresti incontrare su Internet. Per visualizzare un elenco di comandi che puoi utilizzare in una sessione SFTP, controlla:

man sftp

Sono stato anche in grado di utilizzare SFTP su una macchina virtuale Windows sul mio computer, un altro vantaggio della configurazione di una macchina virtuale anziché di un sistema a doppio avvio. Questo mi consente di spostare i file da o verso la parte Linux del sistema. Finora l'ho fatto solo usando un client in Windows.

Puoi anche utilizzare SSH e SFTP per accedere a qualsiasi dispositivo connesso al router tramite cavo o Wi-Fi. Per un po' ho usato un'app chiamata SSHDroid, che esegue SSH in modalità passiva. In altre parole, usi il tuo computer per accedere al dispositivo Android che è l'host. Recentemente ho trovato un'altra app, Admin Hands, in cui il tablet o il telefono è il client e può essere utilizzato per operazioni SSH o SFTP. Questa app è ottima per il backup o la condivisione di foto dal tuo telefono.


Linux
  1. Come utilizzare il tunneling SSH per accedere a server con restrizioni

  2. Come creare un alias e utilizzare il comando alias in Linux

  3. Come controllare la velocità della tua connessione ssh

  4. Come consentire SFTP e non consentire SSH?

  5. Come utilizzare lo stesso alias Ssh con più indirizzi/porte/ecc. host?

Che cos'è il comando SSH e come utilizzare SSH per connettersi al server remoto

Come utilizzare FTP per spostare i file tra il tuo computer e il tuo dispositivo Android

Come installare e gestire Evillimiter per controllare la tua rete Wi-Fi in Linux

Come usare il comando netstat in Linux

Come generare e utilizzare la chiave SSH nel sistema Linux?

Come aggiungere la chiave SSH al codice VS e connettersi a un host