Кратко

  • После выбора radius/1.1 через ALPN соединение TLS или DTLS перестаёт использовать общий секрет RADIUS и основанные на MD5 механизмы проверки пакета и сокрытия атрибутов; RADIUS/UDP и RADIUS/TCP спецификация не меняет.
  • Поддержка кода, предложение имени, его фактический выбор, обязательность профиля и отключение наследия — разные состояния, которые нужно доказывать для каждого перехода между клиентом и сервером.

Исправление, которое не прячет прошлое

RFC 9765 начинает с редкого для стандарта признания. Когда RADEXT добавляла транспорт RADIUS поверх TLS и DTLS, общий секрет и обработка MD5 внутри пакета были сохранены. TLS рассматривался как оболочка, позволяющая почти не менять привычные кодирование и проверку. DeKok пишет, что задним числом это решение, вероятно, было ошибочным, и отмечает собственное участие в нём.

У совместимости была практическая причина. Защищённый транспорт можно было вводить без одновременной переделки всех клиентов и серверов. Цена проявилась позже: TLS уже обеспечивал конфиденциальность и целостность, а пакет продолжал нести второй механизм на алгоритме, который многие контролируемые среды больше не разрешали. Избыточность превратилась в препятствие для проверки и соответствия требованиям.

Профиль DeKok в IETF сообщает, что он познакомился с RADIUS в 1997 году и запустил FreeRADIUS в 1999-м. Проект поддерживает рабочий сервер политик, библиотеки и интеграционные компоненты. Такой опыт связывает память стандарта с ограничениями действующей службы доступа. Но авторство не означает власть над протоколом: RFC 9765 — документ консенсуса IETF в категории Experimental, опубликованный для внедрения и оценки, а не подтверждение всеобщего перехода.

Что именно отдаётся TLS

В RFC 2865 клиент и сервер RADIUS знают общий секрет, участвующий в защите обмена. User-Password и некоторые другие значения скрываются конструкциями на основе MD5. RFC 6614 и RFC 7360 позже определили RADIUS поверх TLS и DTLS, но исторический RADIUS/TLS сохранил внутренние пакетные операции.

RADIUS/1.1 проводит границу в рукопожатии TLS. Механизм ALPN из RFC 7301 позволяет клиенту предложить имена прикладных протоколов, а серверу выбрать общее. Новый профиль действует только при выборе radius/1.1 и требует TLS 1.3 или новее.

На таком соединении общий секрет RADIUS не применяется. Пространство Request Authenticator и Response Authenticator используется как непрозрачный Token для сопоставления запросов и ответов; Identifier теряет прежнюю функцию; Message-Authenticator не передаётся. Атрибуты, которые раньше маскировались MD5, идут в обычной кодировке внутри защищённого TLS-канала.

Доверие не удалено, а перенесено. TLS должен удостоверить правильного партнёра, политика — разрешить ему обмен, а владельцы — управлять сертификатами, ключами, отзывом и обновлениями библиотеки. Результат ALPN также должен быть видим. Чем меньше дублирующей криптографии в пакете, тем важнее надёжность оставшегося слоя.

Прежняя форма и несовместимые правила

Профиль сохраняет размер заголовка, значения Code и Length, смысл простых атрибутов и существующие порты TLS/DTLS. Поэтому RFC называет его транспортным профилем, а не полностью новым протоколом.

Однако внешнее сходство не делает 1.0 и 1.1 взаимозаменяемыми на одном соединении. Стороны по-разному трактуют отдельные поля и проверки. При несовпадении большинство запросов или все ответы будут отброшены. Это безопаснее молчаливого принятия неверного формата, но для пользователя остаётся отказом в доступе, а для оператора — расследованием и возможным откатом.

Ограничен и смысл фразы «без MD5». Данные CHAP или MS-CHAP могут оставаться непрозрачными атрибутами. RADIUS/1.1 убирает MD5 из защиты пакета на данном переходе, но не переписывает все переносимые методы аутентификации и не очищает автоматически внутренние системы.

За прокси начинается новая зона доказательств

В роуминге запрос RADIUS может пройти несколько прокси. Контроллер доступа договаривается о 1.1 с локальным сервером, а тот обращается к домашнему серверу через исторический RADIUS/TLS, UDP или другой разрешённый транспорт. Профиль известен лишь двум сторонам конкретного соединения. Успех первого перехода не наследуется всей цепочкой.

ALPN полезен именно как локальное наблюдаемое состояние. Без сигнала radius/1.1 узел не вправе предполагать новый профиль. Реализациям с двумя вариантами RFC рекомендует сначала разрешать radius/1.0 и radius/1.1. После проверки обоих концов и наблюдения успешного выбора оператор может потребовать 1.1 и следить за связностью. При проблемах допустим временный возврат к двойному режиму до устранения причины.

Такой путь снижает риск одномоментного отказа и одновременно создаёт риск вечного перехода. Возможность в версии продукта ещё не означает предложение; предложение — выбор; выбор — запрет 1.0; политика одного перехода — состояние следующего.

Состояние Проверяемый факт
Поддерживается Клиент, сервер и версия TLS отвечают требованиям.
Предлагается Имя ALPN присутствует в реальном рукопожатии.
Выбирается Производственное соединение фиксирует radius/1.1.
Обязательно Узел, умеющий только 1.0, отклоняется политикой.
Наследие закрыто На указанном переходе не разрешены старый профиль и незащищённые транспорты.

Отчёт о миграции должен показывать эти строки по каждому необходимому переходу, иначе он описывает намерение.

Роль DeKok без права единоличного финала

InkBridge называет DeKok создателем и руководителем FreeRADIUS. Это объясняет его связь с работающим кодом, но не делает единственным изобретателем или владельцем RADIUS. У исходных RFC были свои авторы; IETF проводит рассмотрение; TLS-библиотеки и поставщики реализуют; команды идентификации и операторы прокси включают и отключают режимы.

Ценность RFC 9765 — в способе исправления. Он называет прежний долг, сохраняет полезную совместимость формы, отдаёт защиту слою, уже выполняющему эту работу, и создаёт измеряемый результат согласования. Статус Experimental оставляет решение открытым для практической проверки. Реальная сила появится только там, где код работает, соединение выбирает новый профиль, а старый путь можно закрыть без потери службы.

Источники