7

По федоре 16
Я скопировал свой открытый ключ в файл /home/user/.ssh/authorized_keys, полученный пользователем из ldap.

Но не смог пройти аутентификацию через ssh без пароля для этого пользователя.

Работает на root.

стрейс на sshd

[pid 24834] setgroups(1, [1100])        = 0
[pid 24834] getgroups(0, NULL)          = 1
[pid 24834] getgroups(1, [1100])        = 1
[pid 24834] setgroups(1, [1100])        = 0
[pid 24834] setresgid(-1, 1100, -1)     = 0
[pid 24834] setresuid(-1, 1040, -1)     = 0
[pid 24834] open("/home/user/.ssh/authorized_keys", O_RDONLY|O_NONBLOCK) = -1 EACCES (Permission denied)
  • Я пытался получить доступ к файлу с учетной записью пользователя: нет проблем.
  • Я пытался с крошечной C-программой с такими же параметрами выше: без проблем.
  • Я попробовал с 777 справа: без проблем.

ls -l в файле author_keys:

-rw-r--r--. 1 user user  784 19 nov.  16:24 authorized_keys
  • Я пытался отключить StrictMode (и перезапустить sshd)

Я сравнил с другой федорой 16:

  • та же ОС
  • тот же файл sshd_config
  • одинаковые разрешения для ~/ , ~/.ssh/ и ~/.ssh/authorized_keys

И теперь я не знаю, что попытаться устранить это.

3 ответа3

8

Это может быть SE Linux. Если контекст файла неправильный, запуск этого от имени root должен исправить.

restorecon -Rv /home/user/.ssh

Также проверьте, что разрешения на /home/user/.ssh не широко открыты. SSHD довольно конкретно об этом.

chmod 0700 /home/user/.ssh
2

Файл authorized_keys должен иметь права доступа rw------- Бежать:

chmod 600 ~/.ssh/authorized_keys

И так же, как примечание, ваш закрытый ключ (обычно id_rsa) на клиенте должен иметь те же разрешения.

0

У меня была похожая проблема, и в моем случае причиной было неправильное владение как каталогом .ssh, так и файлом .ssh/authorized_keys. Чтобы это исправить, в /home /user от имени root:

chown user:user .ssh
chown user:user .ssh/authorized_keys

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .