SSH: "Le autorizzazioni 0644 per" my_key.pub "sono troppo aperte."


21

Perché 0644vale a dire -rw-r--r--troppo aperto per una chiave SSH? Inoltre non sono riuscito a trovare false autorizzazioni nella .sshdirectory ( 0700) o nella home directory ( 0731).

A proposito, sto ottenendo questo errore durante il test della parafrasi di una chiave tramite ssh-keygen -y -f my_key.pub

I migliori saluti

Risposte:


7

Potrebbe essere in esecuzione ssh-keygen sul file sbagliato. ssh-keygen -yopera su un file di chiave privata . I file ".pub" normalmente contengono la chiave pubblica . Probabilmente hai un file lì chiamato my_key, senza alcuna estensione, e dovrebbe essere la modalità 0600. Questo è il file che dovrebbe contenere la chiave privata.

Per rispondere direttamente alla tua domanda, le chiavi SSH vengono normalmente utilizzate per consentire la connessione a server remoti senza password. Il possesso della chiave privata consentirebbe a qualcuno di accedere al proprio account su qualsiasi sistema che accetti la chiave. ssh-keygen e le altre utilità ssh richiedono che i file della chiave privata dispongano di autorizzazioni limitate perché i file sono sensibili e devono rimanere sicuri.


11

0644 non dovrebbe essere troppo aperto per una chiave pubblica, ma è troppo aperto per la tua chiave privata.

La tua chiave privata dovrebbe avere l'autorizzazione 0600mentre la tua chiave pubblica ha l'autorizzazione 0644.

A proposito, dovresti anche occuparti dell'autorizzazione per la .sshcartella. Dovrebbe avere l'autorizzazione 0700, in modo che solo tu, il proprietario, abbia il controllo della cartella.

Per quanto riguarda la tua home directory, non si dovrebbe concedere l'autorizzazione in scrittura al gruppo e ad altri.

Esegui chmod go-w /home/usernamedovrebbe risolverlo.


Non seguire assolutamente queste istruzioni. Questo NON è ciò che dovresti fare. Ciò ripristinerà anche tutte le autorizzazioni della home directory. Dovresti modificare SOLO la .sshcartella e il id_rsafile stesso, non l'intera directory home!
niftylettuce,

9

L'unico comando che devi eseguire è chmod 600 ~/.ssh/id_rsa. Questo è tutto.

Ciò modifica le autorizzazioni sul file in modo che il proprietario (tu) possa leggerlo e scriverlo, rimuovendo il messaggio di errore che ricevi.


Aggiornato @TwistyImpersonator
niftylettuce il

0

Le risposte di cui sopra sono validi, ma prima di eseguire qualsiasi chmoddi permessi fix, basta assicurarsi che il proprio IdentityFile(s) in ~/.ssh/configdo si riferiscono alla propria chiave privata. I principianti potrebbero fraintenderlo e fare riferimento invece alla chiave pubblica (con .pubestensione), portando così allo stesso errore (poiché le autorizzazioni del file della chiave pubblica sono troppo aperte per una chiave privata).

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.