it-swarm.asia

ssh "أذونات مفتوحة للغاية" خطأ

واجهت مشكلة في جهاز mac الخاص بي حيث لم يعد باستطاعتي حفظ أي نوع من الملفات على القرص. اضطررت إلى إعادة تشغيل OSX الأسد وإعادة تعيين الأذونات على الملفات و ACL.

لكن الآن عندما أرغب في إنشاء مستودع ، أحصل على الخطأ التالي من 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.

ما مستويات الأذونات التي يجب أن أقدمها لملف id_rsa؟

1624
Yannick Schall

يجب أن تكون المفاتيح قابلة للقراءة فقط بواسطتك:

chmod 400 ~/.ssh/id_rsa

600 يبدو أنه جيد أيضًا (في الحقيقة أفضل في معظم الحالات ، لأنك لا تحتاج إلى تغيير أذونات الملف لتحريره).

الجزء ذو الصلة من الصفحة (man ssh)

 ~/.ssh/id_rsa
         Contains the private key for authentication.  These files contain sensitive 
         data and should be readable by the user but not
         accessible by others (read/write/execute).  ssh will simply ignore a private 
         key file if it is              
         accessible by others.  It is possible to specify a
         passphrase when generating the key which will be used to encrypt the sensitive 
         part of this file using 3DES.

 ~/.ssh/identity.pub
 ~/.ssh/id_dsa.pub
 ~/.ssh/id_ecdsa.pub
 ~/.ssh/id_rsa.pub
         Contains the public key for authentication.  These files are not sensitive and 
         can (but need not) be readable by anyone.
2776
quickshiftin

باستخدام Cygwin في Windows 8.1 ، هناك حاجة إلى تشغيل الأمر:

chgrp Users ~/.ssh/id_rsa

ثم يمكن تطبيق الحل المنشور هنا ، 400 أو 600 على ما يرام.

chmod 600 ~/.ssh/id_rsa

المرجع: http://vineetgupta.com/blog/cygwin-permissions-bug-on-windows-8

87
tanza9

الحل المستقل عن اللغة الذي يعمل على Windows 8.1 هو:

chgrp 545 ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa

GID 545 هو معرّف خاص يشير دائمًا إلى مجموعة "المستخدمين" ، حتى إذا كنت تستخدم لغة مختلفة لكلمة مستخدمين.

32
thehouse

0600 هو ما تم ضبطه على لي (وهو يعمل)

28
Devin Ceartas

AFAIK القيم هي:

700 للدليل المخفي ".ssh" حيث يوجد ملف المفتاح

600 لـ keyfile "id_rsa"

22
ajaaskel

يوجد استثناء واحد لمتطلبات أذونات "0x00" على مفتاح. إذا كان المفتاح مملوكًا من قِبل مجموعة الجذر ومملوكة لمجموعة تضم مستخدمين فيه ، فيمكن أن يكون "0440" ويمكن لأي مستخدم في هذه المجموعة استخدام المفتاح.

أعتقد أن هذا سيعمل مع أي أذونات في المجموعة "0xx0" لكنني لم أختبر كل تركيبة مع كل إصدار. لقد جربت 0660 مع 5.3p1-84 على CentOS 6 ، والمجموعة ليست المجموعة الأساسية للمستخدم ولكن المجموعة الثانوية ، وأنها تعمل بشكل جيد.

لن يتم ذلك عادةً للمفتاح الشخصي لشخص ما ، ولكن لمفتاح يستخدم للتشغيل الآلي ، في موقف لا ترغب في أن يكون فيه التطبيق قادرًا على العبث بالمفتاح.

يتم تطبيق قواعد مماثلة على قيود دليل .ssh.

13
syberghost

توفير 400 إذن ، وتنفيذ الأمر أدناه

chmod 400 /Users/username/.ssh/id_rsa

 enter image description here

9
Sujit Dhamale

لقد حصلت على الخطأ في نظام التشغيل windows 10 الخاص بي ، لذا قمت بتعيين الإذن على النحو التالي ويعمل.

 Permission for id_rsa of windows 10

في التفاصيل ، قم بإزالة المستخدمين/المجموعات الأخرى إلى أن تحتوي فقط على "SYSTEM" و "المسؤولين". ثم أضف تسجيل الدخول إلى نظام ويندوز الخاص بك بإذن قراءة فقط.

لاحظ أن الملف id_rsa موجود أسفل المجلد c:\users\<username>.

4
Supawat Pusavanno

ما عملت لي

المستخدمين chgrp

chmod 600 مجلد

4
Jerome Ansia

في نظام Windows 10 ، لم يكن chmod و chgrp من cygwin كافيين بالنسبة لي. اضطررت إلى النقر بزر الماوس الأيمن على الملف -> الخصائص -> الأمان (علامة التبويب) وإزالة جميع المستخدمين والمجموعات باستثناء المستخدم النشط.

4
Jared Beach

هذا هو ما عملت لي (على ماك)

Sudo chmod 600 path_to_your_key.pem 

ثم :

ssh -i path_to_your_key [email protected]_ip

آمل أن يساعد

2
lansanalsm

بالنسبة لي (باستخدام نظام Ubuntu الفرعي لنظام Linux) ، تغيرت رسالة الخطأ إلى:

 Permissions 0555 for 'key.pem' are too open

بعد استخدام chmod 400. اتضح أن استخدام الجذر كمستخدم افتراضي كان السبب.

تغيير هذا باستخدام cmd:

 ubuntu config --default-user your_username
2
Daniel Kettemann

رسالة intersting هنا. Syatems التشغيل ذكية بما يكفي لرفض الاتصالات عن بعد إذا كان المفتاح الخاص مفتوحًا للغاية. إنها تتفهم المخاطر التي تكون فيها أذونات id_rsa مفتوحة على مصراعيها (قراءة ، يمكن تحريرها من قبل أي شخص).

{ربما يكون الشخص قد قام بتغيير القفل أولاً ثم افتحه بالمفاتيح التي لديه بالفعل. }

cd ~/.ssh
chmod 400 id_rsa

PS:

أثناء العمل على خوادم متعددة (غير إنتاجية) ، يشعر معظمنا بالحاجة إلى الاتصال بالخادم البعيد مع ssh. هناك فكرة جيدة تتمثل في الحصول على pice من رمز مستوى التطبيق (قد يكون Java باستخدام jsch) لإنشاء علاقات ثقة بين الخوادم. هذه الطريقة سوف تكون كلمة المرور. في حالة تثبيت Perl - قد يستخدم المرء net ssh module أيضًا.

2
Piyush Baijal

لقد جربت 600 مستوى من إذن مفتاحي الخاص وقد نجحت هذه الميزة بالنسبة لي. chmod 600 privateKey [dev] $ ssh -i privateKey user @ ip work

chmod 755 privateKey [dev] $ ssh - i privateKey user @ ip كان يعطي المشكلة أدناه: أذونات 0755 لـ 'privateKey' مفتوحة للغاية. من الضروري ألا يتمكن الآخرون من الوصول إلى ملفات المفاتيح الخاصة. سيتم تجاهل هذا المفتاح الخاص. تحميل مفتاح "privateKey": أذونات سيئة

0
deepu kumar singh

لقد واجهت هذا الخطأ بينما كنت ألعب مع Ansible. لقد قمت بتغيير أذونات المفتاح الخاص إلى 600 من أجل حل هذه المشكلة. وانها عملت!

chmod 600 .vagrant/machines/default/virtualbox/private_key
0
vildhjarta