Una chiave SSH è una coppia di file (una chiave pubblica e una chiave privata) utilizzata per l'autenticazione sicura su un server tramite il protocollo Secure Shell (SSH).
La chiave pubblica viene salvata sul server remoto, mentre la chiave privata, che deve essere mantenuta segreta, rimane sul tuo computer.
Questo sistema permette di connettersi a un server senza dover digitare una password ogni volta.
Come funzionano
Quando ti connetti a un server, il server utilizza la chiave pubblica per crittografare un messaggio.
Solo il tuo computer, che possiede la chiave privata corrispondente, può decifrare questo messaggio.
Se il server riesce a decifrare correttamente il messaggio, l'autenticazione ha successo e puoi accedere senza password.
Su Windows:
Apri Git Bash o Windows Terminal/PowerShell Esegui:
ssh-keygen -t rsa -b 4096 -C "la_tua_email@esempio.com"
Su Linux/macOS:
Apri il terminale esegui lo stesso comando:
ssh-keygen -t rsa -b 4096 -C "la_tua_email@esempio.com"
Ti verranno fatte alcune domande:
Enter file in which to save the key (/home/username/.ssh/id_rsa):
Premi Invio per il percorso predefinito
Enter passphrase (empty for no passphrase):
Puoi inserire una passphrase (più sicuro) o lasciare vuoto
Le chiavi vengono salvate in:
Chiave privata: ~/.ssh/id_rsa (NON CONDIVIDERE MAI!)
Chiave pubblica: ~/.ssh/id_rsa.pub (questa la carichi su Aruba)
cat ~/.ssh/id_rsa.pubCopia tutto il contenuto che inizia con ssh-rsa...
Accedi al Pannello di Controllo Aruba Cloud
Vai nella sezione SSH Keys
Clicca "Aggiungi chiave SSH"
Incolla il contenuto della tua chiave pubblica
Assegna un nome identificativo
Metodo più comune usando ssh-copy-id
ssh-copy-id username@indirizzo_serverEsempio:
ssh-copy-id mario@192.168.1.100
Se ssh-copy-id non è disponibile, copia manualmente:
cat ~/.ssh/id_rsa.pub | ssh username@indirizzo_server "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
Prima: copia la chiave pubblica:
cat ~/.ssh/id_rsa.pubCopia tutto il contenuto che inizia con ssh-rsa...
Sul server dai i singoli comandi
# Connettiti al server
ssh username@indirizzo_server
# Crea la directory .ssh se non esiste
mkdir -p ~/.ssh
# Aggiungi la chiave al file authorized_keys
echo "incolla_qui_la_tua_chiave_pubblica" >> ~/.ssh/authorized_keys
# Imposta i permessi corretti
chmod 700 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
Usando scp:
scp ~/.ssh/id_rsa.pub username@indirizzo_server:~/.ssh/authorized_keys
Dopo aver inviato la chiave, dovresti poter accedere senza password:
ssh username@ip_del_tuo_server