Что это значит

Сквозной вход в Directum RX под доменной учёткой идёт через Kerberos (Negotiate). Когда сервис RX работает на Linux, проверку билета делает библиотека GSSAPI. Ошибка означает, что сервис не смог проверить билет, и пользователь получает окно логина или ошибку входа.

Самые частые причины в тексте после ошибки: - Server not found in Kerberos database: нет SPN для адреса, по которому пользователи открывают RX; - Key version number for principal in key table is incorrect: keytab устарел после смены пароля сервисной учётки; - No key table entry found: в keytab нет нужного принципала или файл не смонтирован; - Clock skew too great: расходится время, см. отдельную статью.

Как проверить

  1. Содержимое keytab:
klist -kte /path/to/rx.keytab
  1. SPN сервисной учётки в домене (на Windows):
setspn -L <учётка RX>

Там должен быть HTTP/<адрес RX> ровно в том виде, в каком его вводят пользователи. 3. Адрес RX в DNS: Kerberos не любит обращение по IP и по CNAME, который разрешается не туда.

Что сделать

  1. Зарегистрировать SPN HTTP/<полное имя сайта> на сервисную учётку и перевыпустить keytab.
  2. После смены пароля учётки всегда пересоздавать keytab и обновлять его в контейнерах или на серверах.
  3. Синхронизировать время на серверах RX с контроллером домена.
  4. Пользователи должны открывать RX по полному доменному имени, на которое выпущен SPN.