Crea una chiave ssh:
$ ssh-keygen -t rsa –P ""
Spostamento della chiave su chiave autorizzata:
$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
Crea una chiave ssh:
$ ssh-keygen -t rsa –P ""
Spostamento della chiave su chiave autorizzata:
$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys
bash: /home/user/.ssh/authorized_keys: No such file or directory
Risposte:
bash: /home/user/.ssh/authorized_keys: No such file or directory
Un elemento del percorso /home/user/.ssh/
non esiste; la shell ( bash
) controlla il reindirizzamento ( >>
) prima di eseguire il comando ( cat
). Se /home/user
esiste e provi questo:
cat $HOME/.ssh/id_rsa.pub >> $HOME/test_this
Ora otterrai:
cat: /home/user/.ssh/id_rsa.pub: No such file or directory
Dal momento che quel file non può essere in quel posto, se /home/user/.ssh/
non esistesse per cominciare.
Stai seguendo alcune istruzioni dopo aver eventualmente saltato alcuni bit. Per creare la directory:
mkdir $HOME/.ssh
chmod 700 $HOME/.ssh
Tuttavia, id_rsa.pub
non ci sarà. Sarà ovunque tu abbia eseguito il ssh-keygen
comando in primo luogo.
Assicurarsi di aver effettuato l'accesso come utente per il quale si desidera creare prima la chiave ssh (o prepararsi a modificare i percorsi nel comando nella home directory corretta).
Quindi basta creare la directory:
mkdir ~/.ssh
Crea il file usando il cat
comando che hai elencato sopra. Quindi non dimenticare di impostare correttamente le autorizzazioni:
chmod 400 ~/.ssh/authorized_keys
Si consiglia di assicurarsi che anche la directory .ssh disponga delle autorizzazioni appropriate.
chmod 700 ~/.ssh
Se possibile, incoraggio sempre le persone a utilizzare lo strumento da riga di comando ssh-copy-id
.
$ ssh-copy-id -h
Usage: /usr/bin/ssh-copy-id [-i [identity_file]] [user@]machine
Se vuoi solo copiare la tua chiave pubblica SSH predefinita su un server remoto devi semplicemente eseguire il seguente comando:
$ ssh-copy-id user@remoteserver
Vi mostro un vero esempio completo di come utilizzare questo strumento in questa domanda e risposta intitolato: Impossibile condividere una connessione ssh con rsync .
Questo può anche fallire se, quando si crea la chiave con ssh-keygen
, si assegna un nome file. Ho inserito un nome my-ssh-file-name
e ha scritto la chiave /Users/MyUserName
invece della .ssh
cartella. Se si lascia vuoto il nome file, verrà scritto .ssh
come previsto.
-f ~/.ssh/custom-key-name