ssh ошибка "права доступа слишком открыты" - PullRequest
1706 голосов
/ 14 февраля 2012

У меня была проблема с моим Mac, из-за которой я больше не мог сохранять какие-либо файлы на диск.Мне пришлось перезагрузить OSX Lion и сбросить разрешения для файлов и 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?

Ответы [ 17 ]

2889 голосов
/ 14 февраля 2012

Ключи должны быть доступны только для чтения вами:

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.
91 голосов
/ 11 апреля 2014

Используя 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

35 голосов
/ 21 февраля 2015

Независимое от локали решение, которое работает в Windows 8.1:

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

GID 545 - это специальный идентификатор , который всегда относится к группе «Пользователи», даже если в вашей локали используется другое слово для пользователей.

30 голосов
/ 14 февраля 2012

0600 - это то, на что установлена ​​моя (и она работает)

22 голосов
/ 13 ноября 2014

AFAIK значения:

700 для скрытого каталога ".ssh", где находится файл ключа

600 для файла ключа "id_rsa"

14 голосов
/ 13 ноября 2013

Существует одно исключение из требования «0x00» для ключа.Если ключ принадлежит пользователю root и группе принадлежит группе, в которой есть пользователи, то это может быть «0440», и любой пользователь в этой группе может использовать ключ.

Я считаю, что это будет работать с любымразрешения в наборе "0xx0", но я не проверял каждую комбинацию с каждой версией.Я попытался 0660 с 5.3p1-84 на CentOS 6, и группа не первичная группа пользователя, а вторичная группа, и она отлично работает.

Обычно это не будет сделано для чьего-то личного ключа,но для ключа, используемого для автоматизации, в ситуации, когда вы не хотите, чтобы приложение могло связываться с ключом.

Аналогичные правила применяются к ограничениям каталога .ssh.

11 голосов
/ 28 августа 2018

предоставить 400 разрешений, выполнить команду ниже

chmod 400 /Users/username/.ssh/id_rsa

enter image description here

7 голосов
/ 08 декабря 2018

У меня ошибка в Windows 10, поэтому я установил разрешение следующим образом, и оно работает.

Permission for id_rsa of windows 10

Подробно удаляйте других пользователей / группы, пока у них не появятся только «СИСТЕМА» и «Администраторы». Затем добавьте в него свой логин в Windows с правами только для чтения.

Обратите внимание, что файл id_rsa находится в папке c:\users\<username>.

6 голосов
/ 21 июля 2018

В Windows 10 мне не хватало chmod и chgrp в cygwin. Мне пришлось щелкнуть правой кнопкой мыши файл -> Свойства -> Безопасность (вкладка) и удалить всех пользователей и группы, кроме моего активного пользователя.

4 голосов
/ 27 марта 2014

что сработало для меня

chgrp Пользователи FOLDER

CHMOD 600 FOLDER

...