Sambaサーバの設定

SUSEŽ Linux Enterprise ServerのSambaサーバは、YaSTを使って、または手動で設定することができます。手動で設定を行えば細かい点まで調整できますが、YaSTのGUIほど便利ではありません。

YaSTによるSambaサーバの設定;

Sambaサーバを設定するには、YaSTを起動して、ネットワークサービス+Sambaサーバの順に選択します。

初期Samba設定

このモジュールを初めて起動すると、Sambaインストールダイアログが起動して、サーバ管理に関していくつかの基本的な事項を決定するように要求されます。設定の最後で、Samba管理者パスワードを要求されます(Sambaルートパスワード)。次回起動時には、Samba Server Configurationダイアログが表示されます。

Sambaインストールダイアログは、次の2つのステップとオプションの詳細設定で構成されています。

ワークグループまたはドメイン名

Workgroup or Domain Nameから既存の名前を選択するか、新しい名前を入力し、次へを入力します。

Sambaサーバのタイプ

次のステップでCD(PDC)として機能するサーバを指定し、次へをクリックします。

起動

Sambaの起動方法を起動時の動作または手動から選択し、OKをクリックします。最後のポップアップボックスでSamba root Passwordを設定します。

この設定はすべて、後からSambaの設定ダイアログで起動共有識別情報信頼されたドメインLDAP設定の各タブを使用して変更することができます。

Sambaの詳細設定

Sambaサーバモジュールの初回起動中、2つの初期化ステップ(24.3.1.1項 「初期Samba設定」参照)の直後にSambaの設定ダイアログが表示されます。ここでは、Sambaサーバの設定を編集することができます。

設定を編集し終わったら、OKをクリックして設定を保存します。

サーバを起動する

[Start Up]タブで、Sambaサーバの起動に関する設定を行います。システムのブート時に毎回サービスが起動されるようにするには、During Bootを選択します。手動起動を有効化するには、Manuallyを選択します。Sambaサーバの起動の詳細については、24.2項 「Sambaの起動および停止」を参照してください。

このタブで、ファイアウォールのポートを開くこともできます。そのためには、Open Port in Firewallを選択します。複数のネットワークインタフェースがある場合は、Firewall Detailsをクリックし、インタフェースを選択した後、OKをクリックして、Sambaサービス用のネットワークインタフェースを選択します。

共有

[共有]タブで、有効にするSambaの共有を指定します。homesおよびプリンタなど、事前定義済みの共有がいくつかあります。状態の変更を使用して、有効無効の間で切り替えます。新規の共有を追加するには追加、共有を削除するには削除をクリックします。

ユーザにディレクトリの共有を許可するを選択すると、許可するグループ中のグループメンバーに、各自のディレクトリを他のユーザと共有させることができます。たとえば、ローカルの範囲のusers、あるいはドメインの範囲ではDOMAIN\Usersを設定します。また、ユーザにはファイルシステムへのアクセスを許可するパーミッションがあることを確認してください。最大共有数で、共有の最大数を制限することができます。認証なしでユーザ共用へのアクセスを許可するには、ゲストアクセスを許可を有効にします。

ID

識別情報タブで、ホストが関連付けられているドメイン(基本設定)と、ネットワークで代替ホスト名を使用するかどうか(NetBIOS Hostname)を指定します。名前解決にMicrosoft Windows Internet Name Service(WINS)を使用することもできます。この場合、Use WINS for Hostname Resolutionを有効にし、DHCP経由でWINSサーバを取得(Retrieve WINS server via DHCPを使用)するかどうか決定します。TDBデータベースではなくLDAPなど、エキスパートグローバル設定またはユーザ認証ソースを設定するには、詳細設定をクリックします。

信頼されたドメイン

他のドメインのユーザを、自分のドメインにアクセスさせるには、Trusted Domainsタブで適切な設定を行います。新しいドメインを追加するには、追加をクリックします。選択したドメインを削除するには、削除をクリックします。

LDAP設定

[LDAP Settings]タブでは、認証に使用するLDAPサーバを設定することができます。LDAPサーバへの接続をテストするには、Test Connectionをクリックします。エキスパートLDAP設定を設定するか、デフォルト値を使用する場合、詳細な設定をクリックします。

LDAP設定に関する詳細については、第 1 章 LDAP—A Directory Service (↑Security Guide (セキュリティガイド))を参照してください。

SWATを使用したWeb管理

Sambaサーバ管理の代替ツールは、SWAT(Samba Web管理ツール)です。このプログラムには、Sambaサーバを設定するための簡単なWebインタフェースがあります。SWATを使用するには、Webブラウザで、http://localhost:901を開き、rootユーザでログインします。特別なSamba rootアカウントがない場合、システムのrootアカウントを使用します。

[Note]SWATの有効化

Sambaサーバのインストール後、SWATは有効化されていません。SWATを有効化するには、YaSTでネットワークサービス+ネットワークサービス(xinetd)の順に開き、ネットワークサービス設定を有効にし、テーブルからswatを選択し、状態の変更(オンまたはオフ)をクリックします。

サーバの手動設定

Sambaをサーバとして使用する場合は、sambaをインストールします。Sambaの主となる設定ファイルは、/etc/samba/smb.confです。このファイルは2つの論理部分に分けられます。[global]セクションには、中心的なグローバル設定が含まれます。[share]セクションには、個別のファイルとプリンタ共有が入っています。このアプローチにより、共有に関する詳細は[global]セクションで個別に、またはグローバルに設定することができ、設定ファイルの構造的透過性が高まっています。

グローバルセクション

[global]の次のパラメータは、ネットワークの設定に応じた必要条件を満たし、Windows環境で他のマシンがSMBを経由してこのSambaサーバにアクセスできるようにするために多少の調整が必要です。

workgroup = TUX-NET

この行は、Sambaサーバをワークグループに割り当てます。TUX-NETを実際のネットワーク環境にある適切なワークグループに置き換えてください。DNS名がネットワーク内の他のマシンに割り当てられていなければ、SambaサーバがDNS名の下に表示されます。DNS名が使用できない場合は、netbiosname=MYNAMEを使用してサーバ名を設定します。このパラメータに関する詳細については、smb.confのマニュアルページを参照してください。

os level = 20

このパラメータは、SambaサーバがワークグループのLMB(ローカルマスタブラウザ)になるかどうかのきっかけとなります。Samba 3リリースシリーズでは、デフォルト設定(20)を上書きする必要はほとんどなくなりました。Sambaサーバの設定が誤っていた場合に、既存のWindowsネットワークに支障が出ないよう、小さな値(たとえば2)を選択します。この重要なトピックの詳細は、『Samba 3 Howto』のネットワークブラウジングの章を参照してください。『Samba 3 Howto』の詳細は、24.7項 「詳細情報」を参照してください。

ネットワーク内に他のSMBサーバ(たとえば、Windows 2000サーバ)が存在せず、ローカル環境に存在するすべてのシステムのリストをSambaサーバに保存する場合は、os levelの値を大きくします(たとえば、65)。これでSambaサーバが、ローカルネットワークのLMBとして選択されました。

この設定を変更するときは、それが既存のWindowsネットワーク環境にどう影響するかを慎重に検討する必要があります。はじめに、隔離されたネットワークで、または影響の少ない時間帯に、変更をテストしてください。

wins supportとwins server

アクティブなWINSサーバをもつ既存のWindowsネットワークにSambaサーバを参加させる場合は、wins serverオプションを有効にし、その値をWINSサーバのIPアドレスに設定します。

各Windowsマシンの接続先サブネットが異なり、互いを認識させなければならない場合は、WINSサーバをセットアップする必要があります。SambaサーバをWINSサーバなどにするには、wins support = Yesオプションを設定します。ネットワーク内でこの設定が有効なSambaサーバは1台だけであることを確認します。smb.confファイル内で、オプションwins serverwins supportは同時に有効にしないでください。

共有

次の例では、SMBクライアントがCD-ROMドライブとユーザディレクトリ(homes)を利用できるようにする方法を示します。

[cdrom]

CD-ROMドライブが誤って利用可能になるのを避けるため、これらの行はコメントマーク(この場合はセミコロン)で無効にします。最初の列のセミコロンを削除し、CD-ROMドライブをSambaと共有します。

例24.1 CD-ROMの共有(無効)

;[cdrom]
;       comment = Linux CD-ROM
;       path = /media/cdrom
;       locking = No

[cdrom]およびコメント

[cdrom]セクションエントリは、ネットワーク上のすべてのSMBクライアントが認識できる共有の名前です。さらにcommentを追加して、共有を説明することができます。

path = /media/cdrom

pathオプションで、/media/cdromディレクトリをエクスポートします。

デフォルトを非常に制約的に設定することによって、このシステム上に存在するユーザのみがこの種の共有を利用できるようになります。この共有をあらゆるユーザに開放する場合は、設定にguest ok = yesという行を追加します。この設定は、ネットワーク上の全ユーザに読み込み許可を与えます。このパラメータを使用する場合には、相当な注意を払うことをお勧めします。またこのパラメータを[global]セクションで使用する場合には、さらに注意が必要です。

[homes]

[homes]共有は、ここでは特に重要です。ユーザがLinuxファイルサーバの有効なアカウントとパスワードを持ち、独自のホームディレクトリを持っていればそれに接続することができます。

例24.2 [homes]共有

[homes]
	comment = Home Directories
	valid users = %S
	browseable = No
	read only = No
	create mask = 0640
	directory mask = 0750

[homes]

SMBサーバに接続しているユーザの共有名を他の共有が使用していない限り、[homes]共有ディレクティブを使用して共有が動的に生成されます。生成される共有の名前は、ユーザ名になります。

valid users = %S

%S は、接続が正常に確立されるとすぐに、具体的な共有名に置き換えられます。[homes]共有の場合、これは常にユーザ名です。したがって、ユーザの共有に対するアクセス権は、そのユーザだけに付与されます。

browseable = No

この設定を行うと、共有がネットワーク環境で認識されなくなります。

read only = No

デフォルトでは、Sambaはread only = Yesパラメータによって、エクスポートされた共有への書き込みアクセスを禁止します。共有に書き込めるように設定するには、read only = No値を設定します。これはwritable = Yesと同値です。

create mask = 0640

MS Windows NTベース以外のシステムは、UNIXのパーミッションの概念を理解しないので、ファイルの作成時にアクセス権を割り当てることができません。create maskパラメータは、新しく作成されたファイルに割り当てられるアクセス権を定義します。これは書き込み可能な共有にのみ適用されます。実際、この設定はオーナーが読み書き権を持ち、オーナーの一次グループのメンバが読み込み権を持つことを意味します。valid users = %Sを設定すると、グループに読み込み権が与えられても、読み込みアクセスができなくなります。グループに読み書き権を付与する場合は、valid users = %Sという行を無効にしてください。

セキュリティレベル

セキュリティを向上させるため、各共有へのアクセスは、パスワードによって保護されています。SMBでは、次の方法で権限を確認できます。

共有レベルのセキュリティ(セキュリティ=共有)

パスワードが共有に対し確実に割り当てられています。このパスワードを持っているユーザ全員が、その共有にアクセスできます。

ユーザレベルのセキュリティ(セキュリティ=ユーザ)

このセキュリティレベルは、ユーザという概念をSMBに取り入れています。各ユーザは、サーバにパスワードを登録する必要があります。登録後、エクスポートされた個々の共有へのアクセスは、ユーザ名に応じてサーバが許可します。

サーバレベルのセキュリティ(セキュリティ=サーバ)

クライアントに対しては、Sambaがユーザレベルモードで動作しているように見えます。しかし、Sambaはすべてのパスワードクエリを別のユーザレベルモードサーバに渡し、ユーザレベルモードサーバが認証されます。この設定では、追加のpassword serverパラメータが必要になります。

ADSレベルのセキュリティ(セキュリティ=ADS)

このモードでは、Sambaはアクティブディレクトリ環境のドメインメンバーとして動作します。このモードで操作するには、Sambaを実行しているコンピュータにKerberosがインストールされ設定済みであることが必要です。Sambaを使用してコンピュータをADSレルムに結合させる必要があります。これは、YaSTのWindowsドメインメンバーシップを使用して行います。

ドメインレベルのセキュリティ(セキュリティ=ドメイン)

このモードは、コンピュータがWindows NTドメインに結合している場合に正しく動作します。Sambaはユーザ名とパスワードをWindows NT PrimaryまたはBackup Domain Controllerに渡すことによって、これらを検証しようとします。Windows NT Serverが行うのと同じ方法です。暗号化されたパスワードパラメータがyesに設定されている必要があります。

共有、ユーザ、サーバ、またはドメインレベルのセキュリティの設定は、サーバ全体に適用されます。個別の共有ごとに、ある共有には共有レベルのセキュリティ、別の共有にはユーザレベルセキュリティを設定するといったことはできません。しかし、システム上に設定したIPアドレスごとに、別のSambaサーバを実行することは可能です。

この詳細については、『Samba 3 HOWTO』を参照してください。つのシステムに複数のサーバをセットアップする場合は、オプションinterfacesおよびbind interfaces onlyに注意してください。