Speaker Rabbit

abbra


CIFS: curious information funneled sometimes


Previous Entry Share Next Entry
FreeIPA 2.1
Speaker Rabbit
abbra
Выпустили FreeIPA 2.1. Это первый релиз с начала моей работы над проектом. В релиз вошел уже описанный ранее hbactest -- команда для тестирования работоспособности правил доступа к различным службам.

Параллельно коллеги выпустили бету RHEV 3, в описании которой The Register отметил и нас:
You can still use Microsoft's Active Directory for authentication of users and access to resources on the network, but Red Hat is also allowing customers to go all-red and use its own Enterprise IPA (which is not a hoppy beer*, but rather an identity manager based on LDAP and Kerberos).
* (IPA у британских и американских любителей пива однозначно ассоциируется с Indian Pale Ale).

Впереди работа над FreeIPA 3.0 -- помимо общих усовершенствований основу составит поддержка доверенности между доменами (cross-domain trusts). Надеюсь, что в обновление стабильной ветки (2.1) успею дописать поддержку других дистрибутивов, начатую вот здесь. В первую очередь для клиентской стороны, потому что серверная требует серьезного участия со стороны дистрибутиво-делателей.

Примером может служить недавний выпуск обновления по безопасности curl. В curl в рамках этого обновления оторвали возможность делегирования билетов Kerberos от клиента к серверу. И это правильно -- но только в том случае, когда неизвестно, можно ли этому серверу доверять. Клиент FreeIPA использует XML-RPC для доступа к серверу FreeIPA. Реализовано это средствами библиотеки xmlrpc-c, которая внутри использует libcurl для предоставления транспорта. Библиотека xmlrpc-c позволяет, если libcurl собран с поддержкой GSSAPI, делегировать имеющиеся билеты на сервер. Когда в libcurl эту поддержку "вырвали", то клиент FreeIPA (а их два -- консольный и административный интерфейс в браузере) не смог общаться с сервером.

Поскольку первоначальное исправление было связано с потенциальной проблемой с безопасностью, потребовалось доказать апстриму libcurl, что поддержку GSSAPI нужно вернуть хотя бы опицонально (дать возможность пользователю API решать, можно ли делегировать билеты или нет). Ушло несколько недель и на то, чтобы патч, возвращающий поддержку GSSAPI (уже в опциональном виде) был принят в апстрим -- libcurl очень серьезно относится к совместимости своего API с предыдущими версиями. В конце концов, все это было сделано и добавлено.

Как результат, необходимо было:
  1. собрать новую версию libcurl
  2. добавить патч к xmlrpc-c для поддержки опционально GSSAPI в libcurl
  3. исправить код, использующий xmlrpc-c, чтобы использовать опциональную поддержку GSSAPI
  4. собрать все это для Fedora 14 (обновления), 15 (обновления), 16, RHEL5 (обновления), RHEL6 (обновления)
  5. Вспомнить, что некоторые утилиты использовали утилиту curl для общения и подразумевали делегирование билетов -- значит, надо добавить поддержку этой опции в curl, собранный с новым libcurl
  6. собрать новый curl в Fedora 14 (обновления), 15 (обновления), 16, RHEL5 (обновления), RHEL6 (обновления)
Понятно, что почти все эти действия подразумевают также привязывание сборочных зависимостей и зависимостей в пакетах к правильным версиям пакетов libcurl и xmlrpc-c, поскольку иначе вся машинерия не будет работать и количество отчетов о странных ошибках в стиле "оно просто не работает" будет огромным. Эта типичная работа создателей дистрибутивов совместно с апстримными проектами -- особенно для тех случаев, когда эти проекты имеют развесистые зависимости на другие проекты. Времени на такую координацию уходит много, особенно когда ответственные мейнтейнеры в отпусках или слабо доступны.

Такие дела.

  • 1
С почином! Очень рад за Вас и
+1

Ну вроде как вы не в первый раз такие мозайки собираете :) Я рад за вас.
Включите информацию об использовании всего этого в курс Red Hat'овский.

Я -- не в первый. Но в этот раз я и не собирал мозаику, кроме ряда мест в RHEL6/RHEL5, где были некоторые непонятицы с зависимостями. Тут скорее приоткрытие кухни -- помимо готовки есть и уборка. :)

Вот пройдет https://bugzilla.redhat.com/show_bug.cgi?id=731636, буду собирать сам.

Кроме готовки и уборки есть ещё приготовлялка и пожиналка, но это уже на стороне пользователей :)
Добавился в Линкед-Ин.

Документация есть вот тут: https://docs.fedoraproject.org/en-US/Fedora/15/html/FreeIPA_Guide/index.html
Учебный курс -- выйдет IPA из Technology Preview, тогда можно будет говорить и о курсах.

OK.
Спасибо за работу.

Поздравляю!

  • 1
?

Log in

No account? Create an account