По какой-либо причине sshd_config не может быть установлен на файл author_keys, отсутствующее у себя дома?

Устранение неполадок SSH и NX У меня есть работающее соединение SSH с использованием ключа RSA. Беда в том, что сервер NX хочет параметр sshd_config AuthorizedKeysFile быть установленным в установленный файл NX, /var/lib/nxserver/home/.ssh/authorized_keys2, Как только я внес это изменение, удаленное соединение SSH не может быть авторизовано. Я старался,

  • добавление в дом авторизованных ключей в ~/.ssh в этот файл /var...
  • Это принадлежит nx, группа root и 644 разрешения, поэтому я добавил параметры AllowUsers а также AllowGroups с обоими счетами до конца sshd_config,
  • Перезапускал сервер SSHD после каждого изменения sshd.

К сожалению, SSH не разрешит это соединение.

Permission denied (publickey,gssapi-keyex,gssapi-with-mic).

Если я изменю sshd_configAuthorizedKeysFile вернуться к исходным настройкам, то все его фанки-дорей. Итак, по какой-либо причине sshd не принимает файл авторизованного ключа, который хочет NX?


Здесь есть некоторые запутанные проблемы. Взять, например, Authorized_keys2 был амортизирован? Не то, чтобы этим парням было интересно, потому что они обсуждают использование author_keys2 для NX через два года после первого сообщения.

Многие пользователи NX отмечают, что AuthorizedKeysFile - это только имя файла, но эта справочная страница в sshd_config (такая же, как в CentOS6) и говорит: "После расширения [token] AuthorizedKeysFile считается абсолютным или относительным путем к домашнему каталогу пользователя." Путь NX должен быть в порядке, верно?

К сожалению, мой CentOS-сервер поддерживает OpenSSH 5.3, потому что 6.2 (на моем клиенте) поддерживает список AuthorizedKeysFile(s), разделенный пробелами.

3 ответа

Это F-вопрос, потому что после использования подсказки Kworr для проверки sshd Остановив службу демона и запустив ее вручную в режиме отладки, можно найти не домашний путь (просто то, что вы ожидаете после "расширения токена") Извините, ребята.

Таким образом, чтобы ответить на мой собственный вопрос: Нет, нет никаких причин, почему author_keys не может быть вне дома.

Прежде всего, в таких условиях я всегда стараюсь, чтобы мои журналы были максимально увеличены, запуская пользовательские не демонизированные sshd:

sshd -d -p 11122 -f /new/config/file

И пытается подключиться к нему:

ssh -v -p 11122 this.host

Это делает вашу текущую конфигурацию безопасной и дает вам всю информацию о том, как было установлено соединение.

И теперь приходит дикая догадка. sshd потребует, чтобы ключевые файлы были:

  1. Доступный и читаемый сервером.
  2. Доступно для записи только пользователю. А это значит, что все папки (/var, /var/lib и т. Д.) Не должны быть доступны для записи ни одному пользователю или группе, кроме root, wheelи пользователь, который входит в систему.

По умолчанию используется файл в домашнем каталоге пользователя (см. Ниже). % H можно использовать явно, чтобы показать это. Здесь он показывает список каждого пути, разделенных пробелом...

Я попытался бы изменить разрешения на 600. Это то, что у меня есть файл autorized_keys, установленный во всех моих учетных записях. Неверные разрешения преобразуются в ошибку "Отказано в разрешениях". Это дает вам возможность проверить, что ваш файл author_keys не содержит нежелательных дополнений, прежде чем устанавливать его разрешения.

Если разные пользователи будут использовать один и тот же author_keys, значит, у вас проблема...

AuthorizedKeysFile
         Specifies the file that contains the public keys that can be used for user authentication.  The format is described in the AUTHORIZED_KEYS FILE
         FORMAT section of sshd(8).  AuthorizedKeysFile may contain tokens of the form %T which are substituted during connection setup.  The following
         tokens are defined: %% is replaced by a literal '%', %h is replaced by the home directory of the user being authenticated, and %u is replaced by
         the username of that user.  After expansion, AuthorizedKeysFile is taken to be an absolute path or one relative to the user's home directory.
         Multiple files may be listed, separated by whitespace.  The default is “.ssh/authorized_keys .ssh/authorized_keys2”.
Другие вопросы по тегам