Quando si lavora con server Linux o Unix, le chiavi SSH offrono un metodo sicuro e comodo per connettersi a server remoti senza dover inserire ogni volta una password. Tuttavia, il metodo comune per copiare le chiavi SSH su un server remoto è utilizzando il comando ssh-copy-id
. Che fare, però, se questo comando non è disponibile? In questo articolo, vi mostreremo come copiare manualmente la vostra chiave SSH su un server remoto quando ssh-copy-id
non è un'opzione.
Per copiare la vostra chiave SSH su un server remoto utilizzando un unico comando (senza l'utilizzo di ssh-copy-id
), potete utilizzare il comando cat
in combinazione con ssh
. Questo approccio vi permette di leggere la vostra chiave pubblica locale e di aggiungerla direttamente al file ~/.ssh/authorized_keys
sul server remoto in un unico passaggio. Ecco come si fa:
cat ~/.ssh/id_rsa.pub | ssh utente@indirizzo-server "mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
cat ~/.ssh/id_rsa.pub
: Legge il contenuto della vostra chiave pubblica SSH locale.|
: Passa l'output del comando precedente al comando successivo.ssh utente@indirizzo-server
: Si connette al server remoto dove intendete copiare la vostra chiave SSH."mkdir -p ~/.ssh && cat >> ~/.ssh/authorized_keys"
: Questa stringa di comandi eseguita sul server remoto fa quanto segue:mkdir -p ~/.ssh
: Crea la directory.ssh
nella home directory dell'utente se non esiste già.cat >> ~/.ssh/authorized_keys
: Aggiunge la chiave pubblica al fileauthorized_keys
. Se il file non esiste, lo crea.
Assicuratevi di sostituire utente
con il vostro nome utente sul server remoto e indirizzo-server
con l'indirizzo IP o il nome host del server a cui vi state connettendo.
Questo comando vi permetterà di effettuare l'intero processo in un solo passaggio, rendendo il trasferimento della chiave SSH rapido e senza problemi.