2006年10月16日に,samba 4.0.0tp3(テクノロジ・プレビュー3)がリリースされました。今回はこのsamba 4.0.0tp3について紹介したいと思います。

Samba 4.0とは

 現在,安定版として提供されているのはSamba 3.0系です。そしてSamba 4.0は,Samba 3.0の開発・保守と平行して,そして約3年間の期間を経て開発が行われてきました。

 将来的にはSamba 3.0を置き換えるものになる予定ですが,現在はテクノロジ・プレビューという段階です。Samba Teamによるとこのテクノロジ・プレビューとは,alpha版よりもさらに前の段階ということで,このようなネーミングが行われているようです。当然,まだ安定して利用するには程遠いため,実運用のシステムには導入してはなりません。

 さて,Samba 4.0はこれまで,3度にわたりテクノロジ・プレビュー版がリリースされてきました。

2006年1月24日 samba 4.0.0tp1 リリース
2006年 3月 22日 samba 4.0.0tp2 リリース
2006年 10月16日 samba 4.0.0tp3 リリース

目標はActive Directoryのドメインコントローラ

 Samba 4.0では,WindowsのActive Directoryのドメインコントローラ,およびそのプロトコルを実装することが最大の目的となっています。これまで,Samba 3.0では,NTドメイン互換のドメインログオンや,Active Directoryのドメインメンバーとなることは可能でしたが,Active Directoryのドメインコントローラになることはできませんでした。

 Samba 3.0がNTドメイン互換機能を確実に進化させ,互換性を高めている間にも,Windowsの世界ではActive Directoryが標準となってしまいました。

 そこで,Samba 4.0の開発初期段階から,Active Directoryのドメインコントローラを実装するための試みが続けられてきました。

 今回提供されているsamba 4.0.0tp3では,実際にSamba 4.0をActive Directoryのドメインコントローラとして実行し,WindowsクライアントをActive Directoryドメインに参加させることが可能になっています。

 その他にも,Samba 4.0では,実装の大幅な変更が行われており,そのうちの一つがNTVFSと呼ばれるレイヤーの組み込みです。Samba 3.0では実現できなかったWindowsのファイルシステムとの互換性を実現するために,Samba 4.0で実装されたNTVFSレイヤーでは,NTFSと同等のセマンティクスを提供し,Windows互換のファイル操作を実現可能とするための実装が行われています。

 ただし,実際にWindowsと互換のファイルシステムとして利用するためには,UNIXのファイルシステムに実装されているxattrs(拡張)属性を利用する必要があります。

Samba 4.0.0tp3の特徴

 samba 4.0.0tp3では,完成度の高まったコアコンポーネントの上に,新たに次の2つの機能が取り込まれています

1.LDAPバックエンドの組み込み
2.SMB2プロトコルの実装

 Samba 3.0でのLDAPは,外部のLDAPサーバーを利用することが前提となっていましたが,Samba 4.0では,LDAPのサーバー機能そのものをSamba 4の機能に取り込んでいます。またその他にもKerberosなど,Samba 3.0では外部に依存していた機能が,Samba 4.0では組み込み機能となっており,できるだけSamba 4.0のみで完結した形で機能を提供できるように実装方式が変更されています。

図1●Samba 3.0の実装方式

図2●Samba 4.0の実装方式

 これは,Active Directory形式のドメインコントローラをSamba 4.0がサポートするために,マイクロソフト独自の拡張部分をいかがに実現するか考慮した結果といえるでしょう。現在のSamba 4.0は,DNSの連携を除いて,WindowsのActive Directoryと同じようにLDAPやKerberosと密接に連携を取れる実装になっているといえます。