Man bija problēma ar manu mac, kad es vairs nevarēju saglabāt nekāda veida failu uz diska. Man bija jāpārstartē OSX lauva un jāatjauno failu un acls atļaujas.
Bet tagad, kad es gribu nodot repozitoriju, es saņemu šādu kļūdu no ssh:
Permissions 0777 for '/Users/username/.ssh/id_rsa' are too open.
It is recommended that your private key files are NOT accessible by others.
This private key will be ignored.
Kādi atļauju līmeņi man jādod failam id_rsa?
Atslēgām jābūt tikai jums lasāmām:
chmod 400 ~/.ssh/id_rsa
Ja atslēgām jābūt lasāmām un rakstāmām:
chmod 600 ~/.ssh/id_rsa
600 šķiet, ka tas arī ir labi (patiesībā vairumā gadījumu labāk, jo vēlāk nav jāmaina faila atļaujas, lai to rediģētu).
Attiecīgā daļa no manlapas (man ssh
)
~/.ssh/id_rsa Satur privāto atslēgu autentifikācijai. Šie faili satur sensitīvu datus, un tiem jābūt lasāmiem lietotājam, bet ne pieejamiem citiem (lasīt/rakstīt/izpildīt). ssh vienkārši ignorēs privāto atslēgas failu, ja tas ir pieejams citiem. Ir iespējams norādīt paroli, ģenerējot atslēgu, kas tiks izmantota, lai šifrētu sensitīvo šī faila daļa, izmantojot 3DES.
~/.ssh/identity.pub ~/.ssh/id_dsa.pub ~/.ssh/id_ecdsa.pub ~/.ssh/id_rsa.pub Satur publisko atslēgu autentifikācijai. Šie faili nav sensitīvi un tos var (bet nevajag) lasīt ikviens.
Ir viens izņēmums attiecībā uz "0x00" atļaujas prasību atslēgai. Ja atslēgas īpašnieks ir root un grupas īpašnieks - grupa, kurā ir lietotāji, tad atslēga var būt "0440", un jebkurš šīs grupas lietotājs var to izmantot.
Es uzskatu, ka tas darbosies ar jebkuru atļauju kopu "0xx0", bet es neesmu pārbaudījis visas kombinācijas ar visām versijām. Esmu izmēģinājis 0660 ar 5.3p1-84 CentOS 6, un grupa nav lietotāja primārā grupa, bet sekundārā grupa, un tas darbojas labi.
Parasti to nevajag darīt kādam personīgajam atslēgam, bet atslēgai, ko izmanto automatizācijai, situācijā, kad negribat, lai lietojumprogramma varētu sajaukt atslēgu.
Līdzīgi noteikumi attiecas uz .ssh direktoriju ierobežojumiem.