После почти десяти лет разработки представлен первый стабильный релиз 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 сторонний код для поддержки расширенных файловых систем или анализаторов трафика.
Samba 4.0
После почти десяти лет разработки представлен первый стабильный релиз Samba 4.0. Ключевым отличием Samba 4.0 от Samba 3.6 является полноценная реализация контроллера домена и сервиса ActiveТакже по теме: