Samba & Windows、機能詳細比較

2004年12月14日(火)
小田切 耕司

リソース管理


   サーバのファイルやユーザ/グループなどを管理するのがリソース管理機能だ。

   前回SambaもActiveDirectoryもLDAPでユーザ管理を行えると書いたが、機能面では異なる部分が多いので解説していく。
機能
Samba 3.0
Windows Server 2003
ユーザ情報の格納場所
LDAP、簡易DB、テキスト、NIS,MySQLなどが利用可能
Active Diorectory
または内部の簡易DB

ユーザ情報の複製機能

LDAPの複製機能を利用


日本語ユーザ名

username map機能を
使えば可能


日本語グループ名

groupmap機能を
使えば可能


日本語コンピュータ名

username map機能を
使えば可能


グローバルユーザ/ローカルユーザ

×
グローバルグループ/ローカルグループ

ネステッドグループ
(ローカルグループの中にグローバルグループを入れ子にするような階層化)


ユーザ情報の格納先


   Sambaはドメインコントローラとして利用する場合、ユーザ管理(パスワード管理)データベースとしてLDAPを利用することが推奨となるが、その他には下記のデータベースを利用する事が出来る。

  • TDB(Text Data Base:簡易データベース、スタンドアロンサーバ向け)
  • SMBPASSWD(テキストファイル:個人、SOHOサーバ向け)
  • NIS(古いUNIXとの連携)
  • My SQL(RDBMSへ格納)
   Sambaはこのようにユーザ情報の格納先を自由に選べることから他システムとの連携を容易にしている。


ユーザ情報の複製


   Samba自体はユーザ情報を複製する機能を持っていない。複製は上記したユーザ情報の格納先であるユーザ管理データベースの機能に依存しており、現在はLDAPの利用が推奨されている。またマルチマスター(多重更新)をサポートしたLDAPを利用すれば、柔軟な運用が可能になる。


日本語ユーザ名/グループ名/コンピュータ名


   Sambaとしては日本語のユーザ名やグループ名はすでにサポートされている。しかしながら、Sambaを利用するにはOS側にもユーザを認識させる必要があるため、それが日本語ユーザ名/グループをサポートしていないOSの場合、日本語ユーザ名/グループ名は利用できない。つまりOS側(NSSやPAM、コマンド系)で日本語ユーザ名/グループ名がサポートされていないと利用できないのだ。

   例えばユーザ管理データベースとしてLDAPを利用する場合でも、ユーザ名はUFT-8で格納する必要があるが、ユーザ登録のためのコマンド「smbldap-tools(およびPerlコマンド)」がマルチバイトのUTF-8に対応していないため利用できない。UTF-8でLDIFファイルを作成して登録してやれば利用可能になるが、運用負荷がかなり高くなってしまうだろう。(この場合、Linux側のファイル名もsmb.confで"UNIX CHARSET=UTF-8"としてUTF-8で格納する必要がある。)

   また、ユーザ管理データベースとして「TDB」や「SMBPASSWD」を利用する場合、OS側のユーザ名をEUCで「/etc/passwd」などに登録する必要があるが、useraddコマンド等がマルチバイトを受け付けない場合が多い。この場合も「/etc/passwd,group」を直接編集することで対応できるが、これも運用負荷が高い。さらにOSによっては直接管理ファイルを編集しても日本語が利用できない場合がある。

   この場合はSambaの"username map"機能や"groupmap"機能を使って、日本語のWindowsユーザ名/グループ名を、英数字のUNIXユーザ/グループ名へマッピングすることができる。数字で始まるユーザの場合も「/etc/passwd」などでOSとして利用できない場合があるが、LDAPを利用する場合は利用可能となっている。


グローバル/ローカルのグループとユーザ


   Samba 3.0から、Windowsと同等のグローバルグループをnetコマンドで登録することが可能になった。またグループマッピング機能もサポートされ、Linux/UNIXのグループをWindowsのグループに対応させることができる。


ネステッドグループ


   また、winbind機能と組み合わせてローカルユーザやローカルグループの作成も可能になった。この場合、winbindで作成したローカルグループの中に、グローバルグループを含めるネステッドグループの機能もサポートされる。この機能のおかげで、Windows Server 2003と同等のユーザ管理ができるようになる。


Sambaのユーザ管理機能
図1:Sambaのユーザ管理機能(WindowsのGUIから管理可能だ)

オープンソース・ソリューション・テクノロジ株式会社

早稲田大学理工学部電気工学科卒業三菱電機計算機製作所に入社し、汎用機、UNIX、Windowsの開発を 経てミラクル・リナックス社へ2001年入社Sambaとは1996年からの付き合い。日本初のSamba解説本を執筆し、Samba日本語版を最初に開 発した。日本Sambaユーザ会の設立にも寄与し、初代代表幹事を務める。日本Webminユーザーズグループの副代表幹事などもつとめ、最近は Linuxコンソーシアムのセキュリティ部会のリーダなどもつとめている。    

連載バックナンバー

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています