|
Здравствуйте,
On 23:59, Victor Sudakov wrote:
Dmitry Akindinov wrote:
Скажите просто, как дебаг GSSAPI включить в сервере. Это был основной
вопрос, и даже в тему вынесен.
Там нет отдельного лога, максимум что можно увидеть - низкоуровневый
обмен в логах протокола, в котором происходит аутентификация (IMAP, HTTP
и так далее). Там же будет ошибка о неверном ключе или о проблеме с
декодированием тикета. Но вряд ли этосильно поможет...
А вот таки посмотрел wireshark-ом, запретив SSL. Ответ сервера:
a0001 NO Kerberos: incorrect request format
Дамп пакетов тут: http://zalil.ru/34788611
Как проанализировать то, что идет после "AUTHENTICATE GSSAPI", и
почему оно incorrect. я не знаю. Не поможете?
Ну там много нгде оно может сломаться... Сам запрос декодируется без
ошибок, версия тикета правильная, имя домена и реалма в правильных
местах.
А не покажете dump в текстовом виде того, что удалось декодировать?
Есть у меня одно подозрение насчет principal-а.
Строка, которой клиент отвечает на + сервера кодирует в base64 некоторые данные, упакованные с помощью BER. Собственно, в дампе
echo -n строчка | base64 -d | hexdump -C видно и реалм и принципал.
Для разбора ASN/BER структуры на данные можно натравить http://lapo.it/asn1js/
Или подскажите, чем декодировать можно.
Чтобы понять, на каком этапе ломается разбор данных сервером - только в отладчике.
Дальше нужен кейтаб для расшифровки тикета и ошибка с форматом
происходит скорее всего уже прирасшифровке тикета.
Я бы предоставил кейтаб, если кто-то согласится взглянуть.
Взглянуть можно.
Но даже если мы найдём - где, вряд ли получится починить, если баг -
плавающий.
Проверьте, что на сервере, клиенте и Керберос контроллере часы
синхронизованы.
Везде ntpd работает. Сколько у CGP-шного кербероса предельный
clockskew, не милисекунды же?
У клиента тоже?
Просто подумалось, что если "то работает, то не работает", то дело может быть во времени, к кторому Керберос чуствителен. Но там, насколько помню, допускается расхождение часов до пяти минут.
А какой керберос сервер используется?
--
Best regards,
Dmitry Akindinov
|
|