[devel] Обновление до krb5-1.15.1

Evgeny Sinelnikov sin на altlinux.org
Ср Сен 13 03:24:23 MSK 2017


13 сентября 2017 г., 1:09 пользователь Alexander Bokovoy
<ab at altlinux.org> написал:
> On Tue, Sep 12, 2017 at 4:39 PM, Evgeny Sinelnikov <sin at altlinux.org> wrote:
>> Здравствуйте,
>>
>> я заметил целый ряд новых патчей и пока не понял какие из них нам нужны.
>>
>> fedora-Add-KDC-policy-pluggable-interface/fedora-Add-KDC-policy-pluggable-interface.patch
>> fedora-Add-KDC-policy-pluggable-interface/fedora-Add-timestamp-helper-functions.patch
>> fedora-Add-KDC-policy-pluggable-interface/fedora-Add-timestamp-tests.patch
>> fedora-Add-KDC-policy-pluggable-interface/fedora-Add-y2038-documentation.patch
>> fedora-Add-KDC-policy-pluggable-interface/fedora-Allow-clock-skew-in-krb5-gss_context_time.patch
>> fedora-Add-KDC-policy-pluggable-interface/fedora-Fix-bugs-in-kdcpolicy-commit.patch
>> fedora-Add-KDC-policy-pluggable-interface/fedora-Fix-in_clock_skew-and-use-it-in-AS-client-code.patch
>> fedora-Add-KDC-policy-pluggable-interface/fedora-Make-timestamp-manipulations-y2038-safe.patch
>> fedora-Add-KDC-policy-pluggable-interface/fedora-Use-krb5_timestamp-where-appropriate.patch
>>
>> Make-certauth-eku-module-restrictive-only/fedora-Add-hostname-based-ccselect-module.patch
>> Make-certauth-eku-module-restrictive-only/fedora-Add-PKINIT-test-case-for-generic-client-cert.patch
>> Make-certauth-eku-module-restrictive-only/fedora-Add-test-cert-with-no-extensions.patch
>> Make-certauth-eku-module-restrictive-only/fedora-Convert-some-pkiDebug-messages-to-TRACE-macros.patch
>> Make-certauth-eku-module-restrictive-only/fedora-Fix-certauth-built-in-module-returns.patch
>>
>> fedora-Add-support-to-query-the-SSF-of-a-GSS-context.patch
>> fedora-Preserve-GSS-context-on-init-accept-failure.patch
>> fedora-Prevent-KDC-unset-status-assertion-failures.patch
>> fedora-Remove-incomplete-PKINIT-OCSP-support.patch
>>
>> В них имеется исправление CVE-2017-11368, которое судя по всем нас не
>> затрагивает (в этом я пока не разобрался) и KDC policy pluggable
>> interface, который непонятно нужен ли нам. Его и дальше придётся
>> тянуть из апстримного гита и патчей федоры.
> Я думаю, что мы можем обсудить это в Калуге.
>
>>>> - до начала теста (1 - для r1, 2 - для r2)
>>>> - сразу после kinit (3 - для r1, 4 - для r2)
>>> Спасибо. Я поговорю сегодня с Робби (мейнтейнер krb5 в Федоре).
>>
>> Я так и не понял чем здесь всё решилось. Вопрос, изначально, ставился так:
>>
>>>> При работе с ccache collection код использует тот реалм, который
>>>> указан в имени принципала. Если он там отсутствует, то применяется
>>>> тот, который указан в качестве умолчания в krb5.conf.
>>>>
>>>> Далее, если в krb5.conf есть dns_canonicalize_hostname=true, то
>>>> localhost будет разрешен через getaddrinfo() и превратится в
>>>> localhost.localdomain.
>>>> Поскольку реалм не указан и прямого соответствия в domain_realm секции
>>>> krb5.conf нет, то используется реалм по умолчанию.
>>
>> Хотя в коде указано так:
>>
>>     retval = get_boolean(ctx, KRB5_CONF_DNS_CANONICALIZE_HOSTNAME, 1, &tmp);
>>     if (retval)
>>         goto cleanup;
>>     ctx->dns_canonicalize_hostname = tmp;
>>
>> То есть dns_canonicalize_hostname=true, по умолчанию, получается.
> Я поговорил с Робби и он сказал, что многие тесты при сборке не
> запускаются. Это один из них. Связано это с тем, что в сборочной среде
> они не проходят, требуют больше, чем получается предоставить.
> У меня, например, при сборке в COPR недоступны хранение сессионных
> ключей в ядре (keyctl session, etc), поэтому приходится и вовсе
> отключать make check.
>
>> Я так понял, что в федоре решили вопрос так:
>>
>> commit ccd78d8ee908015ca558e7428c27151cb1af5579
>> Author: Robbie Harwood <rharwood at redhat.com>
>> Date:   Wed Aug 2 17:02:46 2017 +0000
>>
>>     Disable dns_canonicalize_hostname.  This may break some setups.
>>
> Это другое. К сожалению, развязать использование CNAME и
> каноникализацию в рамках текущего кода в krb5 нельзя. Выключение
> каноникализации поломало целый ряд конфигураций, где сервисы были
> выписаны на реальные машины, а пользователи обращались к ресурсам,
> которые представляют собой CNAME к этим машинам. Например,
> www.example.com, где www.example.com -- CNAME для A-записи
> some.host.example.net. То есть, реальное имя сервиса --
> HTTP/some.host.example.net.
>
> Порешили, что поправим каноникализацию так, чтобы CNAME резолвить
> можно было, а остальное -- нет.

Что-то мне расхотелость применять у нас dns_canonicalize_hostname =
false, как в Fedora, по умолчанию, да ещё и по триггеру в старые
установки. У меня тоже CNAME сломаются. Да и есть ли в этом резон?

Да, Add-KDC-policy-pluggable-interface патчи для FreeIPA понадобятся?

И выпиливания вот эти:
- Make-certauth-eku-module-restrictive-only/
- fedora-Remove-incomplete-PKINIT-OCSP-support
тоже, не знаю зачем тащить?


-- 
Sin (Sinelnikov Evgeny)


Подробная информация о списке рассылки Devel