SSH è una grande tecnologia; puoi usarlo per nascondertiTraffico VPN con esso, protezione della connessione a siti Web e altro ancora. L'unico problema è ogni volta che provi ad accedere a un computer remoto, devi inserire la tua password e questo può essere noioso. Se sei uno sviluppatore che sta cercando di connettersi a molte macchine contemporaneamente su SSH con uno script Bash o solo qualcuno che utilizza Secure Shell ed è stanco di inserire password, esiste una soluzione: SSH senza password. Questo processo comporta la generazione di una chiave SSH sicura sul computer host e la sua condivisione come modo per accedere al PC. Ciò consentirà a chiunque disponga della chiave di accedere, anche se non conosce la password. Ecco come farlo.
Cosa sono le chiavi SSH?
Una chiave SSH è un file di identificazione univoco cheviene utilizzato con Secure Shell. Lo scopo di queste chiavi è fornire un'identità univoca all'utente e contrassegnarle come "attendibili" durante l'accesso. Queste stesse chiavi sono più che file che dimostrano l'identità di qualcuno. In effetti, SSH consente agli utenti di accedere con una chiave anziché con una password. Significato, invece di essere costretti a inserire una password ogni volta che accedi su SSH, usi la chiave SSH.
La chiave SSH è posizionata in un luogo sicuro nella tua installazione Linux e da lì puoi accedere al computer remoto quanto vuoi senza una password.
Generazione di chiavi SSH sicure
Per prima cosa è necessario generare una chiave SSH sicuraSSH è attivo e funzionante. Comprendi che ciò non significa necessariamente che devi disporre di un server SSH. Solo che gli strumenti e le tecnologie SSH di base sono in esecuzione sul tuo PC Linux. Non sei sicuro di come configurare SSH? Segui la nostra guida qui.
Generare sempre le chiavi SSH sul sistema che ospita il server SSH. Non tentare di generarli sul server che non ospita una sessione SSH e copiarli sul computer host SSH. Non funzionerà.
Per avviare il processo di generazione delle chiavi, aprire un terminale. All'interno della finestra del terminale, eseguire:
ssh-keygen -t rsa
In esecuzione ssh-keygen stamperà “Generazione chiave rsa pubblica / privatapaio". Ciò significa che il sistema ti sta generando sia una chiave pubblica che una chiave privata da utilizzare. Le chiavi pubbliche sono quelle che chiunque può usare e dovresti dare il massimo. Una chiave privata, d'altra parte, è qualcosa che non dovresti mai condividere con nessuno. Da qui il nome "privato".
I tasti si salveranno su /home / nomeutente / .ssh / id_rsa.
Nota: NON CANCELLARE il ~ / .Ssh cartella, in quanto contiene le tue chiavi. Se manometti questa cartella in qualche modo e quindi provi ad accedere a questa macchina da remoto, il prompt SSH fallirà. Stamperà anche un avviso e ti bloccherà.
Tasti SSH sulla macchina remota
Ora che le chiavi SSH (sia pubbliche che privatequelli) sono creati e pronti per l'uso, dovrai copiarli nel sistema da cui stai cercando di accedere. È importante ripetere questo processo su tutte le macchine che si prevede di accedere tramite SSH. Altrimenti, quelli che non dispongono della chiave dovranno accedere utilizzando il metodo password.
Per aggiungere le chiavi al sistema remoto, seguire questo esempio. Assicurati di farlo dal computer host tramite SSH.
ssh username@remote-host-name mkdir -p .ssh
L'esecuzione di questo comando ssh creerà un nascosto ~ / .Ssh cartella nella home directory della macchina remota (con l'utente che è stato utilizzato per accedere). Questa cartella è importante, poiché è qui che verranno copiati i file delle chiavi SSH appena generati.
Per copiare i file delle chiavi SSH, eseguire ancora un altro comando dal computer host SSH al computer remoto che necessita delle chiavi:
cat .ssh/id_rsa.pub | ssh username@remote-host-name "cat >> .ssh/authorized_keys"
La copia richiederà alcuni secondi, a seconda della velocità della rete. Al termine, il PC remoto avrà le chiavi generate e sarà in grado di accedere al PC host SSH senza password.
Backup delle chiavi SSH
Le chiavi SSH sono utili e ognuna lo èunico. È per questo motivo che il backup è il miglior modo di agire. Il problema è che se lo salvi altrove qualcuno potrebbe trovare la tua chiave SSH, conservarla e usarla per se stessa. Quindi la domanda è: qual è un buon modo per eseguire il backup sicuro di una chiave SSH? Crittografia.
Il modo più veloce, più efficiente (e più semplice) percrittografare è usare GnuPG. Lo strumento stesso è integrato nella maggior parte degli strumenti di crittografia già presenti su Linux ed è il punto di partenza quando viene visualizzata la crittografia dei file. Per installare GnuPG, apri un terminale e cerca "gpg" nel gestore dei pacchetti. Il programma dovrebbe essere facile da trovare, anche su distribuzioni Linux molto oscure.
Una volta che GPG è attivo e in esecuzione, avvia il processo di crittografia comprimendo il tuo ~ / .Ssh directory nel file di archivio tar. In questo modo, non sarà più necessario crittografare individualmente ogni singolo file nel file ~ / .Ssh cartella.
tar -czvf ssh-stuff.tar.gz /home/username/.ssh
Al termine della compressione, avviare il processo di crittografia.
Nota: prima di crittografare, eseguire gpg nel terminale per generare un nuovo portachiavi.
gpg -c ssh-stuff.tar.gz
Al termine del processo di crittografia, GnuPG pubblicherà un file con l'etichetta "ssh-stuff.tar.gz.gpg“. Sentiti libero di eliminare la versione originale e sbloccata del file. Per decrittografare il tuo archivio di backup, procedi come segue:
gpg ssh-stuff.tar.gz.gpg</ P>
Commenti