Kerberos - TCP-клиент хочет 1195725856 байт,cap - 1048572

У меня возникают трудности с отладкой этой ошибки. Я запускаю nginx в качестве шлюза api, созданного для выполнения подзапроса к kerberos всякий раз, когда конечная точка вызывается с использованием метода SPNEGO. Но всякий раз, когда я пытаюсь сделать запрос с билетом TGS в заголовке, я получаю сообщение об ошибке TCP-клиент 192.168.112.4.51658 хочет 1195725856 байт, ограничение - 1048572 , затем соединение закрывается.

Я пробовал printf "\ xff \ xff \ xff \ xff" | netcat krb_address 88 , и он вызывает указанную выше ошибку, и если экземпляр \ xff удален, то ошибки нет.

Я не могу понять:

  1. Что именно отправляет Kerberos сообщение, которое нарушает ограничение ограничения?
  2. Какие изменения конфигурации необходимо внести, чтобы выполнить требование ограничения?

Я никогда раньше не работал с nginx и kerberos, поэтому не уверен, что лучше задать вопросы, кроме основ.

Некоторое понимание предыдущего опыта с этой ошибкой или, возможно, некоторые дополнительные методы, которые я мог бы использовать, чтобы раскрыть Будем очень признательны за дополнительные сведения о причинах ошибки!

1
задан 21 April 2019 в 21:30
1 ответ

Это несоответствие протокола; в какой-то момент вы отправляете HTTP-запрос, когда сервер Kerberos ожидает чего-то еще.

Раздача здесь - это число, показанное в ошибке, 1195725856. Преобразованное в шестнадцатеричное, это 47 45 54 20. Преобразованное в ASCII, оно это G , E , T , пробел или первые четыре символа HTTP-запроса GET. Маловероятно, что это совпадение.

Я не очень хорошо знаком с Kerberos, но небольшое исследование показывает, что одна из возможных причин заключается в том, что вы, возможно, пропустили параметр - enable-http для служба kdc ?

1
ответ дан 3 December 2019 в 23:05

Теги

Похожие вопросы