FreeIPA 2.1
Aug. 17th, 2011 10:39 pmВыпустили FreeIPA 2.1. Это первый релиз с начала моей работы над проектом. В релиз вошел уже описанный ранее hbactest -- команда для тестирования работоспособности правил доступа к различным службам.
Параллельно коллеги выпустили бету RHEV 3, в описании которой The Register отметил и нас:
Впереди работа над 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 с предыдущими версиями. В конце концов, все это было сделано и добавлено.
Как результат, необходимо было:
Такие дела.
Параллельно коллеги выпустили бету 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 с предыдущими версиями. В конце концов, все это было сделано и добавлено.
Как результат, необходимо было:
- собрать новую версию libcurl
- добавить патч к xmlrpc-c для поддержки опционально GSSAPI в libcurl
- исправить код, использующий xmlrpc-c, чтобы использовать опциональную поддержку GSSAPI
- собрать все это для Fedora 14 (обновления), 15 (обновления), 16, RHEL5 (обновления), RHEL6 (обновления)
- Вспомнить, что некоторые утилиты использовали утилиту curl для общения и подразумевали делегирование билетов -- значит, надо добавить поддержку этой опции в curl, собранный с новым libcurl
- собрать новый curl в Fedora 14 (обновления), 15 (обновления), 16, RHEL5 (обновления), RHEL6 (обновления)
Такие дела.