После почти десяти лет разработки представлен первый стабильный релиз Samba 4.0. Ключевым отличием Samba 4.0 от Samba 3.6 является полноценная реализация контроллера домена и сервиса Active Directory, совместимого с реализацией Windows 2000 и способного обслуживать все поддерживаемые Microsoft версии Windows-клиентов, в том числе Windows 8.

В состав Samba 4.0 входят все компоненты, необходимые для создания полноценного контроллера домена с поддержкой Active Directory, в том числе LDAP-сервер, сервер аутентификации Kerberos KDC, сервер динамического DNS и реализация сопутствующих RPC-сервисов. Предоставляется поддержка таких возможностей, как групповые политики (Group Policy), перемещаемые профили (Roaming Profiles), утилиты администрирования Windows, интеграция с Microsoft Exchange и совместимыми сервисами, такими как OpenChange.

Сервер Active Directory на базе Samba 4.0 может быть подсоединён к уже существующим доменам Microsoft Active Directory и наоборот, контроллеры доменов на базе продуктов Microsoft могут быть подсоединены к Active Directory серверу на базе Samba 4.0. Полной совместимости между Samba 4.0 и продуктами Microsoft удалось добиться благодаря предоставлению разработчикам Samba доступа к оригинальной документации на протокол Active Directory, опубликованной компанией Microsoft в рамках программы по увеличению совместимости со сторонними продуктами (Microsoft обязали предоставить данную информацию решением Еврокомиссии в ходе разбирательства о нарушении антимонопольного законодательства), а также благодаря вовлечению инженеров Microsoft в процесс тестирования совместимости решений на базе Samba.

После выхода Samba 4 ветка Samba 3 продолжит своё развитие, и, как раньше, будет нацелена на обеспечение работы в роли клиента, члена домена, файлового сервера (SMB2), сервиса печати и сервера идентификации (winbind). Samba 4 позиционируется как многофункциональный серверный продукт, в который входят все последние достижения сообщества разработчиков Samba, в том числе реализация файлового сервера, изначально развиваемая в ветке Samba 3. В настоящее время весь совместно используемый в Samba 3 и Samba 4 код вынесен в отдельные библиотеки, что позволило организовать параллельную разработку обеих веток без дублирования кодовых баз.

Ключевые возможности Samba 4.0:

  • Поддержка серверного окружения для обеспечения работы службы входа пользователей с использованием Active Directory, совместимого с серверами начиная с Windows 2000 и клиентами XP, Windows 7 и Mac OS X. Samba 4 поддерживает полный набор операций для обеспечения входа клиентов в домен и подключения доменов. Поддерживается определение групповых политик (Group Policy);
  • Обеспечение работы в роли контроллера домена (DC - Domain Controller), включая встроенные реализации LDAP-сервера и центра распространения ключей Kerberos (KDC - Kerberos Key Distribution Center), а также сервисов входа в стиле Samba3, работающих поверх протокола CIFS. Реализация поддерживает генерацию корректного сертификата Kerberos PAC (Privilege Attribute Certificate) и его включение в выдаваемые билеты Kerberos;
  • Samba 4.0 поставляется с двумя отдельными реализациями файловых серверов. В настоящее время для всех операций по работе с файлами по умолчанию задействована реализация 'smbd', идентичная поддерживаемой в Samba 3.x. Для обеспечения работы файлового сервера в чистом виде, в состав входят и другие компоненты Samba 3.x, такие как nmbd, winbindd и smbpasswd. Реализация предоставляет полную поддержку семантики NTFS;
  • Дополнительно в поставку входит реализация нового экспериментального файлового сервера 'NTVFS', который развивался в рамках цикла разработки Samba 4.0, и оптимизирован для соответствия требованиям контроллера домена Active Directory. Сервер NTVFS позиционируется не только для преемственности с более старыми установками контроллера домена Active Directory, но и как рабочий пример архитектуры NT-FSA, в направлении реализации которой в отдалённой перспективе движется smbd;
  • Служба DNS, являющаяся частью Active Directory, имеет две реализации: встроенный DNS-сервер, поддерживающий минимально необходимый набор функций, и дополнение BIND DLZ, реализованное в форме плагина для DNS-сервера BIND 9.8 и 9.9. Также возможно использование традиционной конфигурации BIND с использование файлов зон. Во время установки можно выбрать тип DNS, при выборе вариантов, основанных на BIND, будут сформированы файлы конфигурации, пригодные для использования с BIND. По умолчанию предлагается использование внутренней реализации DNS;
  • Для предоставления сервиса точного времени для Windows-клиентов, обеспечивается интеграция с проектом NTP;
  • Предоставляется новый интерфейс для создания скриптов-дополнений на языке Python. Для подобных скриптов через специальный API предоставляется полный доступ ко внутренностям Samba 4. Например, многие из вспомогательных утилит и часть кода для обеспечения работы контроллера домена написаны на языке Python с использованием данного интерфейса;
  • Для реализации возможного набора функций используется гибкая модель разделения на взаимодействующие между собой процессы. Взаимодействие всех внутренних компонентов производится в асинхронном неблокирующем режиме с использованием новой инфраструктуры удалённого вызова процедур RPC (PIDL). Поддерживаются гибкие средства для обеспечения горизонтального масштабирования c возможностью развёртывания Samba кластеров;
  • Новая гибкая архитектура для ведения баз данных (LDB);
  • Реализация базовой подсистемы обеспечения безопасности (GENSEC);
  • Свободная реализация файлового сервера с поддержкой протокола SMB2.1, основанного на наработках по созданию сервера SMB2.0, развиваемых в рамках ветки Samba 3.6. Кроме того, в состав Samba 4.0 включена начальная реализация сервера SMB3, развитие которого будет продолжено в следующих выпусках Samba 4 и в конечном итоге приведёт к созданию свободной реализации полнофункционального кластерного файлового сервера, поддерживающего протокол SMB3;
  • Интегрированный файловый сервер SMB2/SMB/CIFS с поддержкой кластеризации, построенный с использованием технологии CTDB ("clustered tdb"), которая распределяет мета-данные Samba-разделов на несколько хостов в кластере, что позволяет обеспечить автоматическое восстановление в случае сбоя одного из узлов и предоставляет гибкие механизмы балансировки нагрузки. Для клиентов кластер Samba выглядит как один монолитный сервер, предоставляющий доступ к единому хранилищу, при подключении к которому данные отдаются клиенту с наименее загруженного узла. В качестве основы для хранения данных на узлах может использоваться любая кластерная ФС, такие как GFS2;
  • Гибкие возможности кастомизации Samba при интеграции OEM-производителями в свои продукты. Наличие модульного интерфейса VFS (Virtual File System) позволяет OEM-производителям задействовать в своих продуктах различные возможности Samba, адаптировать их к своим технологиям и изменять в зависимости от своих потребностей без непосредственной модификации кода Samba. Например, VFS позволяет легко интегрировать с Samba сторонний код для поддержки расширенных файловых систем или анализаторов трафика.


Источник: http://www.opennet.ru/opennews/art.shtml?num=35571