У меня была проблема с моим 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?
permissions
ssh
Янник Шалл
источник
источник
StrictModes
быть включены наsshd
сервере, от человека страницы: «StrictModes Определяет , будет ли SSHD (8) следует проверить режимы файлов и владение файлов пользователя и домашнюю директорию , прежде чем принять логин.» - Вы можете отключить это, однако не рекомендуется.Ответы:
Ключи должны быть доступны только для чтения вами:
Если ключи должны быть доступны для чтения вами:
600, похоже, тоже подойдет (на самом деле лучше в большинстве случаев, потому что вам не нужно менять права доступа к файлам позже, чтобы редактировать его).
Соответствующая часть из manpage (
man ssh
)источник
Используя Cygwin в Windows 8.1, необходимо выполнить команду:
Тогда решение, размещенное здесь, может быть применено, 400 или 600 в порядке.
Ссылка: http://vineetgupta.com/blog/cygwin-permissions-bug-on-windows-8
источник
C:\cygwin64
), поэтому он, вероятно, унаследовал разрешения. Странно, что этого не случилось на других ноутбуках, которыми я владел.Независимое от локали решение, которое работает в Windows 8.1:
GID 545 - это специальный идентификатор, который всегда относится к группе «Пользователи», даже если в вашей локали используется другое слово для пользователей.
источник
0600 - это то, что установлено у меня (и оно работает)
источник
AFAIK значения:
700 для скрытого каталога ".ssh", где находится файл ключа
600 для ключевого файла "id_rsa"
источник
У меня ошибка в Windows 10, поэтому я установил разрешение следующим образом, и это работает.
Подробно удаляйте других пользователей / группы, пока у них не появятся только «СИСТЕМА» и «Администраторы». Затем добавьте в него свой логин Windows только с правами чтения.
Обратите внимание, что
id_rsa
файл находится вc:\users\<username>
папке.источник
Edit...
затем нажмите,Add...
затем введите свое имя в текстовое поле,"Enter the object names to select"
затем нажмитеCheck Names
кнопку (и нажмите,OK
и другоеOK
), тогда ваше имя должно быть указано наSecurity
вкладке.pem
кmyuser directory
Существует одно исключение из требования «0x00» для ключа. Если ключ принадлежит пользователю root и группе принадлежит группе, в которой есть пользователи, то это может быть «0440», и любой пользователь в этой группе может использовать ключ.
Я считаю, что это будет работать с любыми разрешениями в наборе «0xx0», но я не проверял каждую комбинацию с каждой версией. Я попытался 0660 с 5.3p1-84 на CentOS 6, и группа не первичная группа пользователя, а вторичная группа, и она работает нормально.
Обычно это делается не для личного ключа, а для ключа, используемого для автоматизации, в ситуации, когда вы не хотите, чтобы приложение могло связываться с ключом.
Аналогичные правила применяются к ограничениям каталога .ssh.
источник
предоставить разрешение 400, выполнить команду ниже
источник
В Windows 10 мне не хватало chmod и chgrp в cygwin. Мне пришлось щелкнуть правой кнопкой мыши файл -> Свойства -> Безопасность (вкладка) и удалить всех пользователей и группы, кроме моего активного пользователя.
источник
Это то, что работает для меня (на Mac)
тогда :
Надеюсь, это поможет
источник
что сработало для меня
источник
У меня та же проблема после перехода с другого Mac. И заблокирован подключить github моим ключом.
Я сбросил разрешение, как показано ниже, и теперь оно работает хорошо.
источник
Windows 10 SSH в Ubuntu EC2 «разрешения слишком открыты» ошибка на AWS
У меня была эта проблема, когда я пытался вставить ssh в экземпляр Ubuntu EC2, используя файл .pem из AWS.
В Windows это работало, когда я помещал этот ключ в созданный в папке .ssh
Чтобы изменить настройки разрешений в Windows 10:
Может тогда подключиться надежно.
источник
Для меня (с использованием Ubuntu Subsystem for Windows) сообщение об ошибке изменилось на:
после использования chmod 400. Оказывается, что использование root в качестве пользователя по умолчанию было причиной.
Измените это с помощью cmd:
источник
Интересное сообщение здесь. Операционные системы достаточно умны, чтобы запретить удаленные подключения, если ваш закрытый ключ слишком открыт. Он понимает риск, когда разрешения для id_rsa широко открыты (читай, редактируется кем угодно).
{Можно сначала изменить свой замок, а затем открыть его ключами, которые у него уже есть}
Работая на нескольких серверах (непроизводственных), большинству из нас необходимо подключить удаленный сервер с помощью ssh. Хорошей идеей является наличие части кода прикладного уровня (может быть java с использованием jsch) для создания доверительных отношений ssh между серверами. Таким образом, соединение будет без пароля. Incase, Perl установлен - также можно использовать модуль net ssh.
источник
Я сталкивался с этой ошибкой, когда играл с Ansible. Я изменил разрешения закрытого ключа на 600 , чтобы решить эту проблему. И это сработало!
источник
Я попробовал 600 уровень разрешения для моего закрытого ключа, и он работал для меня. chmod 600 privateKey [dev] $ ssh -i privateKey user @ ip работал
chmod 755 privateKey [dev] $ ssh -i privateKey user @ ip, который выдавался ниже: проблема 0755 для 'privateKey' слишком открыта. Требуется, чтобы ваши файлы закрытого ключа НЕ были доступны другим. Этот закрытый ключ будет игнорироваться. Клавиша загрузки "privateKey": плохие разрешения
источник
источник
Я использую VPC на EC2 и получаю те же сообщения об ошибках. Я заметил, что я использую общедоступный DNS. Я изменил это на частный DNS и вола! это сработало...
источник
для Win10 нужно переместить ваш ключ в домашнюю директорию пользователя для linuxlike os, вам нужно chmod до 700 like или 600 и т. д.
источник