Jump to content 日本-日本語
≫ お問い合わせ

HP OpenVMS CIFS Version 1.1: 管理者ガイド

第5章 winbindのサポート

≫ 

OpenVMSドキュメント・ライブラリ

目次
まえがき
第1章:HP CIFS Server について
第2章:インストールおよび構成
第3章:導入モデル
第4章:LDAP統合のサポート
第5章:winbindのサポート
第6章:ユーザ,グループ,ファイル・アクセスの管理
第7章:ツール・リファレンス
付録A:実行例
索引
PDF
OpenVMS ホーム
ここから本文が始まります

この章では,HP CIFS winbind機能について説明し,使用方法と最適な構成方法について説明します。

5.1 概要

ユーザーとグループの識別に,OpenVMSとMicrosoft Windowsは異なる技術を使用しています。HP CIFS Serverを使用すると,これらの問題が解消されます。Windowsに実装されたユーザーとグループのセキュリティIDであるSIDをOpenVMSに実装されたユーザーとグループのIDであるUID/GIDにマップする機能として,CIFSでは複数の方法が用意されています。winbindもその1つです。 winbindの目的は,UIDとGIDを自動生成し,最小限の管理作業でしかるべきWindows SIDとの一致を維持することです。

ご使用の環境に対して適切な構成を選択することがIT管理上の問題を最小限に抑えるために重要となるため、HP CIFS Serverの構成を行う前にwinbindについて理解しておくことが必要です。 ディレクトリとファイルは,所有者のIDに基づくパーミッションに従ってファイルシステムで管理されるため,ご使用中の環境で最善のマップ方法を選択することが重要です。最初から適切な構成を選択しておかないと,時間が経つに連れてユーザーマップを変更することが難しくなります。この章は,winbindを理解し,HP CIFSを適切に構成する際に役立ちます。

winbindについての詳細は,以下のURLの『Samba 3.0 HOWTO and Reference Guide』を参照してください。

http://us3.samba.org/samba/docs/man/Samba-HOWTO-Collection/

注記: HP CIFS for OpenVMSでもwinbindの機能がそのまま提供されているので『Samba 3.0 HOWTO and Reference Guide』のwinbindに関する説明はそのまま参照できます。ただし,機能の実装方法については異なっています。

5.2 winbindの特長

winbindには,以下の特長があります。

  • ユーザーIDおよびグループIDの割り当て

    対応するUID/GIDを持たないWindows SIDがwinbindに対して提示されると,winbindはUID/GIDを生成します。 構成の内容に依存して,winbindは以下のアルゴリズムを使用してIDを作成します。

    • ローカルインクリメント

      winbindのデフォルト設定を使用すると,IDの値には定義された範囲内で現在最も大きな値に単純に1を加えた値が割り当てられます。 値のプールは,ローカルHP CIFS Serverに構成されます。

      警告!
      • UIDとGIDのマップを作成しなおすのを避けるために idmap ファイルをバックアップおよびリストアすることができます。 ローカルインクリメントモデルでは,idmapファイルを頻繁にバックアップする必要があります。

      • このソリューションには,同一のWindowsユーザーのUID/GIDの値がシステムにより異なるという欠点があります。 また,idmapファイルが再作成された場合にUIDとGIDのマップが以前のマップとは異なり,深刻なセキュリティ上の問題 (ファイル所有者の変更) を発生させる原因となる可能性があります。

  • IDマッピング

    winbindは,特定のWindows SIDと,それに対応するOpenVMS UID/GID間のマッピングを作成します。winbindは上述のメソッドのいずれかのメソッドを使って,OpenVMS UID/GIDとWindows SID間のマッピングを作成します。winbindは,Windows SIDを使って,既存のUID/GIDマップを検出するか,または既存のマップがなかった場合には新しいマップを作成します。

  • IDの格納

    winbindはデータベースを管理し,そこにOpenVMS UID/GIDとWindows SID間のマッピングを格納します。 最も単純なケースでは,winbindは,SAMBA$ROOT:[VAR.LOCKS]ディレクトリのwinbind_idmap.tdbという名前のローカルの Trivial Data Base (TDB)ファイルでデータベースを維持します。

5.3 winbindの処理フロー

図 5-1 に示すのは,メンバーサーバーとしてHP CIFSを構成したWindowsドメイン環境におけるwinbindの処理フローです。

図 5-1 winbindの処理フロー

Winbindの処理フロー

図 5-1 「winbindの処理フロー」に示したwinbindプロセスフローの説明を以下に示します。

  1. Windowsクライアントが,ドメインへログインします(認証)。

  2. Windowsドメインコントローラーがクライアントを認証し,ユーザー・セキュリティ・データを返します。

  3. Windowsクライアントは,HP CIFSシェアをマップします。

  4. HP CIFS メンバーサーバーがWindowsドメインコントローラーにユーザー名を渡し,そのユーザーがドメインメンバーかどうか確認します。

  5. Windowsドメインコントローラーは,ユーザー認証リストとメンバーSIDリストを返します。

  6. smbd プロセスがSIDとユーザー情報をwinbindモジュールに渡します。

  7. winbindが,SIDおよびユーザー名をIDマッピング・データベースのIDマッピング・データで確認します。 winbindは,既存のWindows SIDとOpenVMS UID/GID間のマップを探します。既存のマップがない場合には新しいマップを作成します。

  8. TDBデータベースからマップされたUIDまたはGIDを返します。

  9. winbindは,smbdにUID/GIDマッピングを返します。

  10. HP CIFS ServerはマップされたシェアをWindowsクライアントに提示します。

  11. Windowsクライアントは,HP CIFS Serverシェアのファイルを開きます。

  12. UIDとGIDがACLのファイル所有者,グループ,およびその他のACEと比較されます。

  13. 手順12の結果によって,ファイル・オープン操作の許可あるいは拒否がなされます。

  14. HP CIFS ServerがWindowsクライアントへオープン状況を返します。

5.4 winbindの機能

winbindは以下の機能をサポートします。

  • 自動マッピング

  • ネストされたグループのサポート

  • 信頼

自動マッピング

ドメインユーザーとグループに関しては,対応するOpenVMSユーザーあるいはグループ(リソース識別子)がHP CIFS メンバーサーバー上に存在しない場合,winbindは自動的に作成します。 winbindは,UIC値を割り当てるのに使用するユーザーID(UID)と リソース識別子に値を割り当てるのに使用するグループID(GID)をSMB.CONFグローバルパラメーター"idmap UID"および"idmap GID"から入手します。 これらは winbindだけに割り当てられる範囲の値に設定する必要があります。

winbindは,選択された整数の"idmap UID"値を使用してOpenVMSアカウント名とUICの両方を導き出します。 このUID値は16進に変換され,文字列"CIFS$"に追加されます。 このUID値は8進に変換され,この8進値はUICグループおよびメンバー番号として使用されます。

注記: UICグループ番号は,8進の37776(10進の16382)の最大値に上限が制限されるため,"idmap UID”値の上限は16382です。 同様に,8進で376より低いUICグループ番号はHPが使用するために確保されているため,"idmap UID"の下限として255より低い値は指定しないでください。

たとえば,SMB.CONFファイルに次の値が含まれているとします。

idmap uid = 5000 - 10000

winbind はUID 5000を割り当て,[11610.11610]のUICでCIFS$1388というOpenVMSアカウントを作成します。 UID 5000 から CIFS$1388へのマッピングはSAMBA$ROOT:[VAR.LOCKS]WINBINDD_IDMAP.TDBファイルに保管されます。 セキュリティを維持するために,必要なマッピングを失うことがないようにこのファイルは定期的にバックアップを取る必要があります。

同様の処理が,グループに対しても行われます。 winbindは,選択された整数の"idmap GID"値を使用して,作成したOpenVMS識別子の名前を導き出します。 このGIDは,文字列"CIFS$GRP"に追加される16進値に変換されます。

注記: winbindはPOSIXのグループ・リソース識別子を作成するため,最大値は%xFFFFFFあるいは%d16777215に制限されます。下限値は1です。HP CIFS は,選択した値に%xA4000000を追加します。

たとえば,SMB.CONFファイルに次の値が含まれているとします。

idmap gid = 5000 - 10000

winbindはまずGID 5000を割り当て,CIFS$GRP1388というOpenVMSリソース識別子を作成します。 GID 5000からCIFS$GRP1388へのマッピングはSAMBA$ROOT:[VAR.LOCKS]WINBINDD_IDMAP.TDBに保管されます。 セキュリティを維持するために,必要なマッピングを失うことがないようにこのファイルは定期的にバックアップを取る必要があります。

ネストされたグループのサポート

winbindはネストされたグループのサポートに必要となります。 ネストされたグループとは,ドメインのグローバル・グループを含むローカルグループです(つまり,あるグループ内にあるグループ)。 ネストされたグループは,いずれかのマシンにローカルに定義され,信頼されるいずれかのSAMからのユーザーおよびグローバル・グループを含みます。

信頼

winbindはすべての信頼機能に必要になります。

5.5 ユーザーとグループのマッピング

ここでは,メンバーサーバー環境におけるユーザー認証の自動マッピングとホストマッピングおよびグループマッピングについて説明します。

5.5.1 ユーザー認証とホストマッピングの処理フロー

図 5-2に示すのは,メンバーサーバー環境におけるユーザー認証とホストのマッピング処理フローです。

図 5-2 ユーザー認証とホストマッピングの処理フロー

ユーザー認証とホストマッピングの処理フロー

図 5-2に示すユーザー認証とホストマッピングの処理フローについて以下に示します。

  1. ドメインユーザーがドメインコントローラーから正しく認証されます。 あるいはドメインユーザーのACLが追加されます。

  2. HP CIFSは,username map ファイルにそのドメインユーザーのマッピングが存在するかどうかチェックします。 対応するマッピングが存在する場合,CIFSはマップされているユーザーを使用します。

  3. マッピングが存在しない場合,HP CIFS は対応するホストユーザーと,一致するドメインユーザーを確認します。 一致するものがある場合,CIFS はそのホスト・ユーザーを使用します。

  4. 対応するホスト・ユーザーがない場合,winbindからそのドメインユーザーSIDに対するUIDを取得します。

  5. 入手したUIDで,HP CIFSはCIFS$<%xUID>の形式でホスト・ユーザーを確認します(%xUIDはUIDの16進表記を意味します)。 ホスト・システム・データベースにすでにユーザーが存在する場合,HP CIFSはこのユーザーをマップします。

  6. ホストアカウントが存在しない場合,HP CIFSは,[%oGID,%oUID]のUIC値でCIFS$<%xUID>を作成し,これをドメインユーザーにマップします。

5.5.2 グループマッピング処理フロー

図 5-3に示すのは,メンバーサーバー環境におけるグループマッピングの処理フローです。

図 5-3 グループマッピングの処理フロー

グループマッピングの処理フロー

図 5-3に示したグループマッピングの処理フローについて以下に示します。

  1. ドメインユーザーがドメイングループに属しています。あるいはドメイングループのACLが追加されます。

  2. HP CIFSがwinbindからドメイングループのGIDを入手します。

  3. HP CIFSが,CIFS$GRP<%xGID>の形式のリソース識別子が存在するかどうか確認します。 一致するものがある場合,HP CIFSは,ドメイングループを一致するリソース識別子にマップします。

  4. 対応するリソース識別子がない場合,HP CIFSはCIFS$GRP<%xGID>の形式でそれを作成します。

5.6 winbindを無効にする

Samba Linux/UNIX とは異なり,HP CIFS for OpenVMSでは,Windbind機能はSMBDプロセスに統合されています。 そのため,別個のwinbindデーモン・プロセスは作成されません。

winbind機能はすべてのHP CIFS構成に必要なわけではありません。 CIFSをスタンドアロン・サーバーとして構成する場合は,winbindを構成し有効にすることは必須ではありません。 HP CIFSでwinbindを無効にするには,次の論理名を定義してください。

$ DEFINE/SYSTEM WINBINDD_DONT_ENV 1

SMB.CONF"idmap UID"および"idmap GID"パラメーターが含まれない場合もwinbindは無効となります。

5.7 winbindを使用したHP CIFS Serverの構成

winbind機能のサポートを使用するには,HP CIFS Serverのセットアップと構成を行う必要があります。

5.7.1 winbindの構成パラメーター

表 5-1 に,winbindの動作を制御するために使われる新しいグローバルパラメーターを示します。 これらのパラメーターは,SAMBA$ROOT:[LIB]SMB.CONFファイルの[global]セクションに設定されます。 詳細は,SMB.CONFマンページを参照してください。

表 5-1 windind関連のグローバルパラメーター

パラメーター

説明
securitywinbindはWindowsドメイン認証を必要とします。

security = domain or security = ads

winbind separator

この文字列型の変数には,ドメイン名とユーザー名のセパレータ(区切り文字)を指定します。例: winbind separator = \

idmap uid

この変数には,ドメインユーザーのUID範囲を指定します。

例: idmap uid = 5000–6000

idmap gid

この変数には,ドメイングループのGID範囲を指定します。

例: idmap gid = 5000–6000

idmap backendこの文字列型の変数には,使用するidmapバックエンドのタイプを指定します。構文は次のようになります。
  • idmap backend =

    これがデフォルトで,ローカルなidmap tdbファイルが使用されます。

  • idmap backend = ldap:ldap://<ldap server name>[:389]

    IDマッピングデータは,共通のLDAPディレクトリサーバー・バックエンドに格納されます。

    例: idmap backend = ldap:ldap://ldapserverA.hp.com

winbind cache time この整変数は,Windows NTサーバーが再度照会する前にwinbindがユーザーおよびグループ情報をキャッシュする秒数を指定します。 デフォルト値は300です。

 

5.7.1.1 SMB.CONFの例

SMB.CONFファイルの例を以下に示します。

[global]

# Doamin name

workgroup = DomainA

security = domain

# Winbindd section

idmap uid = 5000-6000

idmap gid = 5000-6000

idmap backend = idmap_tdb

winbind cache time = 300

winbind separator = \

5.8 LDAPバックエンドのサポート

複数のCIFS ServerがWindows NTまたはWindows ADSドメインに存在しており,これらがwinbindを使用する場合,複数のCIFS ServerがLDAPディレクトリにIDマップを格納するように構成できます。 LDAPサーバーを使用し,SMB.CONFidmap backend パラメーターを指定して CIFSサーバーを構成すると,すべてのUIDおよびGIDがドメイン内でユニークとなるように設定することができます。

5.9 wbinfoユーティリティ

wbinfoツールを使用すると,winbindから情報を取得できます。 このツールについての詳細は7.1.4 項 「wbinfo」を参照してください。

印刷用画面へ
プライバシー 本サイト利用時の合意事項
© 2009 Hewlett-Packard Development Company, L.P.