Come generare una chiave pubblica-privata usando ssh-keygen e renderla autorizzata?


19

Voglio generare una chiave pubblica-privata su Sever 1 e archiviarla in una posizione che non è la posizione predefinita.

Successivamente, salvare la chiave pubblica sul Server 2; ancora una volta NON nella posizione predefinita.

Quindi rendere questa chiave una chiave autorizzata.

Tuttavia, non riesco a trovare il authorized_keysfile nella ~/.sshcartella. Come posso renderlo autorizzato?


1
ssh-keygen è il comando per generare le chiavi. Richiede l'ubicazione del file chiave durante la creazione. Penso che devi creare la chiave autorizzata per i file se non ne hai una
sagarchalise

Risposte:


22
  1. Corri ssh-keygen -f filename.
  2. Correre scp filename username@server:filename-on-server
  3. Accedi al server ed esegui cat filename-on-server >> ~/.ssh/authorized_keys

È inoltre possibile sostituire i passaggi 2 e 3 con ssh-copy-id -i filename username@server.


Ottengo un errore: troppi argomenti
IgorGanapolsky

@Igor a quale passo?
Mikel,

1
Non dovresti aggiungere nomefile.pub piuttosto che nomefile (quale sarà la tua chiave privata?)
Samuel

1

Usa il ssh-keygencomando. Sul server (dove si desidera che ssh) archiviare la chiave pubblica nel file ~/.ssh/authorized_keys. Se non hai ancora una directory .ssh nella tua home (~), creala (fai anche attenzione: sembra che sshd sia pignolo - per motivi di sicurezza - che nessun altro utente può leggere quel file / dir, è meglio rilasciare chmod 700 nella directory .ssh e chmod 600 nel file in essa contenuto).

Sul computer da cui si desidera ssh ("client"), è possibile utilizzare la chiave privata per ssh sul proprio server. È possibile memorizzarlo ovunque, quindi è possibile utilizzare l' -iinterruttore di ssh, per fornire la chiave pubblica che verrà utilizzata. Scrivo questo, poiché hai dichiarato che "non si memorizza nella posizione predefinita". Il percorso predefinito sarebbe file id_dsa(per la chiave DSA) all'interno della directory .ssh. Quindi non è necessario l' -iinterruttore per specificare la chiave, poiché verrà prelevata automaticamente da lì.


1

Sembra che tu abbia già creato le chiavi. In caso contrario, basta eseguire ssh-keygen e accettare le impostazioni predefinite. Crea tu stesso il file authorized_keys:touch authorized_keys

Quando conservi le tue chiavi private in una posizione non standard, assicurati e usa -i: ssh -i /path/to/privatekey user@host

Ecco un buon articolo su ssh-keygen e sull'utilizzo di authorized_keys per semplificare gli accessi ssh:

http://www.debuntu.org/secure-your-ssh-server-with-publicprivate-key-authentification/

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.