Ошибка ключа SSH Bitbucket git: «Неправильный владелец или права доступа к /home/centos/.ssh/config»

Ошибка ключа SSH Bitbucket git: «Неправильный владелец или права доступа к /home/centos/.ssh/config»

Я следовал инструкциям Bitbucket, чтобы добавить свои ключи SSH и использовать git без необходимости аутентификации каждый раз. Яследуйте инструкциям здесь. Затем я получаю следующее сообщение:ssh -T [email protected]

Bad owner or permissions on /home/centos/.ssh/config

Проверка разрешений SSH показывает:

cat ~/.ssh/config
Host bitbucket.org
 IdentityFile ~/.ssh/id_rsa

И ~/.ssh/id_rsaсуществует и содержит мой закрытый ключ. Открытый ключ уже добавлен к моим SSH-ключам в Bitbucket, а сообщение об ошибке, которое я получаю, отсутствует в их руководстве по устранению неполадок.

Система — CentOS Linux версии 7.0.1406 (Core), git версии 1.8.3.1, ключ SSH был добавлен в Bitbucket 5 часов назад. Не уверен, относится ли это к делу, пользователь centosна машине CentOS был создан автоматически, и я вхожу в систему, используя файл идентификации (у меня нет пароля для него). Кроме того, репозиторий Bitbucket работает нормально, и я могу работать с ним с другого компьютера без проблем. Оба ключа SSH указаны в моей учетной записи Bitbucket.

ОБНОВЛЯТЬ:Оба ответа, которые я получил, упоминают разрешения, но это я уже проверил. Оба ~/.ssh/id_rsaи ~/.ssh/id_rsaпринадлежат моему пользователю с 664и 600соответственно. Я даже пробовал chmod 777для обоих файлов, но получил то же самое сообщение.

решение1

Оба ответа, которые я получил, упоминают разрешения, но это я уже проверил. Оба ~/.ssh/id_rsaи ~/.ssh/id_rsaпринадлежат моему пользователю с 664и 600соответственно. Я даже пробовал chmod 777для обоих файлов, но получил то же самое сообщение.

777разрешения никогда не будут работать. Разрешения SSH очень ограничительны, и их дальнейшее открытие приведет только к ошибкам. Также ваши комментарии к другим вопросам говорят о том, что это ваши текущие разрешения:

-rw-rw-r--. 1 centos centos 47 May 17 20:33 /home/centos/.ssh/config 

Это 664разрешения, которые являются -rw-rw-r--. То, что вам нужно, это 600разрешения, которые были бы -rw-------. Поэтому, пожалуйста, попробуйте это; сначала измените ~/.ssh/configразрешения следующим образом:

chmod 600 /home/centos/.ssh/config

Теперь сделайте то же самое для~/.ssh/id_rsa

chmod 600 /home/centos/.ssh/id_rsa

Кроме того, я не совсем уверен, что такое Bitbucket SSH domain/user combo, но, возможно, стоит отладить процесс, используя команду SSH с -vфлагом (verbose), чтобы подробно увидеть, что происходит. Поможет такая команда:

ssh -v -T [email protected]

Это -vбудет подробный вывод и -Tустановка SSH на «отключить выделение псевдо-tty», поэтому он не будет создавать настоящий интерактивный сеанс; по сути, он просто попытается подключиться к удаленному хосту, а затем разорвет соединение. Полезно для тестирования.

решение2

Как указано в ошибке… проверьте права собственности и разрешения, используя что-то вроде ls -l /home/centos/.ssh/config.

Он должен принадлежать вам ( centos) и быть либо в режиме 600( rw-------), либо 400( r--------).

решение3

Я бы запустил

sudo chown <username>:<username> ~/.ssh/config

Где <username>находится ваше системное имя пользователя, которое изменяет владельца файла на<username>

Удаление и повторное создание с текущим пользователем (не с sudo) тоже сработает. Я подозреваю, что это было вызвано созданием файла как root.

Связанный контент