(注:記事は執筆時の情報に基づいており,現在では異なる場合があります)

 LinuxとSambaを活用して,Windowsネットワークのファイル/プリント・サーバーを構築しよう。初心者でもスムーズにSambaの導入・設定ができるよう,また経験者の方がSambaの理解をより深められよう,Linuxの基本事項を含めてSambaの使い方を分かりやすく解説していく。

(ミラクル・リナックス 小田切 耕司)

本セミナーは初心者でもスムーズにSambaの導入・設定ができるよう,また経験者の方がSambaの理解をより深められるよう,Linuxの基本事項を含めてSambaの使い方を分かりやすく解説していきたいと考えている。具体的には,以下のような内容になる。

【第1回】
ファイル・サーバーとは何か?
SambaとWindowsの違い
Sambaと他のSMBサーバーとの違い
一番簡単なSambaサーバー構築手順

【第2回】
Linuxのファイル・システムの基礎
ファイルのパーミッションと所有者
Sambaでのアクセス制御の基礎
トラブル・シューティング

【第3回】
LinuxとSambaのユーザー管理
暗号化パスワード
パスワードの管理とPAM
LinuxとSamba間でパスワード同期
【第4回】
WindowsサーバーからSambaへ移行
ユーザー/共有情報の移行
WindowsからSambaを管理

【第5回】
Winbindによるドメイン構築

【第6回】
LDAPによるドメイン構築
ファイル・サーバーとは何か?

 最も基本的な事項であるが,ファイル・サーバーとは複数のユーザーやクライアントにファイルを提供するサーバーである。ファイル・サーバーを介して,複数のユーザーやクライアントがファイルを共有できる。代表的なファイル・サーバーがWindows NT/2000やSambaであるが,この2つ以外にもNFS(Network File System)やNetWareなど多様なファイル・サーバーがあることを認識してほしい。

ファイル・サーバーの種類とプロトコル

 ファイル・サーバーはもともと,クライアントOSごとに別のものが用意されていた。大きく分けて,以下の3種類がある。

●Windows用

 SambaやWindowsサーバー。一般的にSMB(Server Message Block)サーバーやCIFS(Common Internet File System)と呼ばれるもので,米Microsoft社および米Intel社らにより開発され,現在最も広く使われている。

●UNIX/Linux用

 UNIXやLinux,BSDなどで標準的に利用されるファイル・サーバー(ファイル・システム)はNFSである。米Sun Microsystems社により開発された。かつては性能やセキュリティなどに問題があったが,こうした問題を解消した新しいプロトコルを採用するNFSv3やNFSv4なども広まりつつある。

●Macintosh用

 AppleShare(Apple File Protocol)などと呼ばれる,米Apple Computer社が開発したもの。Linuxの場合はNetatalkというモジュールを,UNIXの場合はCAPというプログラムをインストールすることで,Macintosh用のファイル・サーバーとして動作する。

 しかし,最近はBSD4.4を基に開発されたMAC OS Xの普及により,NFSやCIFS/SMBがサポートされ,NetatalkやCAPの重要性が下がってきている。

表1●CIFS/SMBとNFSの比較

 最も広く普及しているCIFS/SMBと,UNIX系OSで標準的に利用されているNFSとの比較を表1[拡大表示]に示した。

 前述のように,従来は特定のクライアントOSだけを対象としたファイル・サーバーが多かったが,最近はインターネットの普及によりクライアントOSに依存しない,次のようなファイル・サーバーが広まってきている。

●Webサーバー

 httpプロトコルをサポートするファイル・サーバー。Webページのデータを提供するためのサーバーではあるが,文書ファイルを配布するための書庫としても広く利用されている。

●WebDAVサーバー

 Webサーバーの拡張サーバーで,ファイルのバージョン管理ができる。プロトコルはhttpであるものの,WindowsがWebDAVクライアント機能を標準サポートしていることにより,(Windowsマシンからは)Sambaなどと同様に簡単に利用できる。

●ftpサーバー

 ftp(file transfer protocol)をサポートするファイル・サーバー。仕組みが単純な分,NFSやCIFS/SMBなどによる一般的なファイル共有に比べると操作性の面で劣る。Webサーバーでファイル共有をする場合はファイルのアップロード時の操作が面倒なので,Webサーバー(兼ftpサーバー)にftpを用いてファイルをアップロードすることが多い。

●IMAP4サーバー

 IMAP4はメール・サーバーからメールを取り出したり,保存したりするためのプロトコルである。IMAP4サーバーがファイル・サーバーというと疑問に思う方もいるだろうが,実態としてはメールに特化したファイル・サーバーにほかならない*1

SambaとWindowsの違い

 本記事で説明するのは,タイトルにある通りWindows用のファイル・サーバー構築ソフトのSambaの利用方法についてである。SambaはWindows NT/2000サーバーとほぼ互換のファイル・サーバー,プリント・サーバー,ドメイン・コントローラ機能を提供するが,Windowsサーバーと完全な互換性を備えているわけではなく,不足している部分もある。逆に,SambaはWindowsにはない便利な機能をいくつも備える。

 まず,Sambaが持つWindowsと互換の機能は以下の通りである。

●Windows NT/2000互換のファイル・サーバー
●ファイル共有,プリンタ共有
●DFS(分散ファイル・システム)機能(ルートにもメンバーにもなれる)
●Windows NT/2000互換のクライアント管理機能
●ドメイン・コントローラ(ドメイン・ログオンが可能)
●ユーザー・アカウントの統合管理(PDCだけでユーザー管理が可能)
●WINSサーバー機能(Windowsマシンの名前解決)
●マスター・ブラウザ機能(ネットワーク・コンピュータ一覧の提供)
●プリンタ・ドライバ自動配布機能(簡単プリンタ設定)
●移動プロファイル(複数ユーザー/マシンでの共有利用)
●ユーザー・ポリシーの配布(利用者の操作制限)
●ユーザー・ホーム機能(ユーザー専用/共有)
●QUOTA:容量制限機能(ユーザー,グループごとの使用量制限)

 そして,WindowsとSambaの違いは次の通りである。

●ユーザー管理方法

 SambaはActive Directoryに完全には対応していないが,LDAPによりWindowsユーザーだけではなくUNIX/Linuxユーザーの管理も統合できる。

●ACLなどのアクセス制御方法

 Samba自体はACL(アクセス・コントロール・リスト)をサポートしているが,Linuxのファイル・システムが標準ではACLをサポートしていない。このため,Samba+LinuxではACLが標準ではサポートされていない。

●ネットワーク上で使用する文字コード

 Samba 2.2はまだUNICODEに対応していない。

●ファイル・システム上で使う文字コード

 LinuxはまだUNICODEに完全には対応していない。

●ドメイン・コントローラ機能

 Sambaはグループ・ポリシーに未対応である。

 Windowsサーバーではなく,Sambaを利用するメリットは以下の通りである。

●Linux+Sambaの方が導入費用が圧倒的に安い

 これはWindows 2000サーバーではCAL(クライアント・ライセンス)が必要であるが,Sambaでは不要なためである。例えば,10台のファイル・サーバーを1000人で使用する場合,Windows 2000サーバーの価格を13万円,1ユーザーのクライアント・アクセス・ライセンスを5300円とすると,導入にはサーバー・ライセンス費用だけで660万円かかる。同様のシステムをMIRACLE LINUX(とSamba)で作ると60万円なので,Windows 2000の1/10以下のコストで済む。

●Linux+Sambaは高速に動作

 環境にもよるが,Linux+Sambaの方がWindows 2000よりも軽快に動作する。その検証結果も多数ある(例えば,http://www.pcmag.com/article2/0,4149,17201,00.aspなど)。

●信頼性が高く,運用しやすい

 Linux+Sambaはメモリー・リークが起きにくく,連続運転に強い。また,オープンソースのソフトウエアなので,障害が起きた場合でも調査がしやすく,修正も可能である。

 UNIXのシェル・コマンドを活用することにより,運用の負荷を比較的容易に軽減できる。しかも,サーバー台数が増えるほどその効果が高まる。また,Linuxでは修正モジュールを適用した際にOSを再起動させる必要がないほか,OSのインストールも20分ほどで完了する。

 Windows 2000のActive Directoyは便利な機能を各種提供するが,構成変更に弱いため,一度構築したシステムを後から変更することはほぼ不可能である。一方,SambaのLDAP機能は構成変更が柔軟にでき,複数サーバーの統合や分割を比較的容易に実施できる。