L'aggiunta della chiave privata SSH indica che le autorizzazioni 0644 sono troppo aperte

8

Ho generato una chiave privata ssh .key. Voglio aggiungerlo al mio ssh in Mac per connettersi a un server remoto, ho solo known_hosts file in ~/.ssh directory.

Quando provo ad aggiungerlo usando questo comando:

ssh-add -K ~/.ssh/myKey.ppk

Ho ricevuto questo errore:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@         WARNING: UNPROTECTED PRIVATE KEY FILE!          @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions 0644 for '/Users/username/.ssh/myKey.ppk' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
    
posta Mohamed Mellal 12.11.2018 - 09:26
fonte

4 risposte

14

Il messaggio di errore viene visualizzato perché i permessi del file sono impostati in modo tale che siano leggibili da altri utenti, a parte l'utente loggato. Per superare il messaggio di errore, dovrai modificare le autorizzazioni del file per la chiave privata in modo che sia leggibile solo da te.

Per farlo, esegui il seguente comando in Terminale:

cd ~/.ssh ; chmod 400 myKey.ppk

Ciò consentirà a solo il tuo utente di leggere (e non scrivere ed eseguire) il file della chiave privata e impedire a tutti gli altri di leggere, scrivere ed eseguire il file.

Questo si occuperà del messaggio di errore mostrato e dovresti essere in grado di aggiungere il file della chiave privata.

    
risposta data 12.11.2018 - 09:37
fonte
8

Vai al terminale e digita questo comando:

chmod 0600 ~/.ssh/myKey.ppk

Dovrebbe andare bene.

    
risposta data 12.11.2018 - 09:38
fonte
3

Anche se la modifica delle autorizzazioni del file .ppk farà sì che questo avviso scompaia, ti consiglio di disabilitare del gruppo / altri l'accesso alla directory .ssh del tutto:

cd ~
chmod g-rwx .ssh
chmod o-rwx .ssh

Altrimenti, con autorizzazioni non sicure sulla tua home directory, gli altri utenti potrebbero inserire file (come authorized_keys ) nella tua directory .ssh , o pasticciare con known_hosts , o modificare config elementi, e ottenere l'accesso in questo modo - senza dover conoscere la tua password o la tua chiave privata.

In secondo luogo, in un ambiente multiutente sarebbe una pratica discutibile solo per retroattivamente limitare i permessi a una chiave. Se una chiave privata è stata leggibile da un mondo su un sistema multiutente in un dato momento, dovrebbe essere considerata già compromessa.

    
risposta data 12.11.2018 - 16:17
fonte
0

sembra che tu abbia copiato la tua chiave privata da Windows o da un altro computer in cui hai usato PuTTY. Sfortunatamente, lo strumento da riga di comando ssh non supporta questo formato di chiave e pertanto hai due opzioni:

  • Installa nuovamente PuTTY (dovrebbe esistere anche sul tuo mac)
  • Converti la chiave privata dal formato di file PuTTY al formato OpenSSH (usando ancora PuTTYGen da PuTTY come già descritto nel mio precedente risposta :

    • Apri PuttyGen
    • Fai clic su Carica
    • Carica la tua chiave privata
    • Vai a Conversioni - > Esporta OpenSSH ed esporta la tua chiave privata
    • Copia la tua chiave privata in ~/.ssh/id_rsa

Se continui a visualizzare i problemi utilizzando la nuova chiave esportata ( ~/.ssh/id_rsa , assicurati che la chiave non sia leggibile da nessun altro ma tu (è la tua chiave privata) rimuovendo tutto i privilegi di tutti gli altri eseguendo chmod 600 ~/.ssh/id_rsa .

    
risposta data 12.11.2018 - 21:15
fonte

Leggi altre domande sui tag