Chapter 26. システムとアカウントポリシー
Prev | Part III. 詳細な設定方法 | Next

## Chapter 26. システムとアカウントポリシー

### John H. Terpstra

Samba Team

`<jht@samba.org>`

April 3 2003

この章では、Sambaメーリングリストの投稿者による、個人的な経験と知識に由来する知識の現状について要約する。投稿された情報を再構築する前に、すべての効果に、与えられた情報を検証することが行われた。この検証を通じては、追加の情報はカバーされていないので、それも提供している。

## 機能と利便性

Microsoft Windows NT 3.5が発表された時、ホットな新しい話題は、ユーザとグループに対するグループポリシーの実装であった。次にMicrosoft Windows NT4が来て、いくつかのサイトがこの機能を適用し始めた。どうやって知ったかって?数多くの“ドジな”(あるいは間違った)管理者はそれを行い、解決のために助けを求めたからである。

Windows 2000とActive Directoryがリリースを待っている間、管理者はグループポリシーはすばらしいというメッセージを聞かされ続けた。グループポリシーにより管理コストの低減が可能となり、確かに利用者にとってありがたい点もある。しかし、Windows 200xのActive Directory と GPO によるユーザとコンピュータ管理機能の活用は遅々として進まなかった。これは、2000年から2001年にかけてのSambaメーリングリストにおける過去ログにおいて、GPOに関連した投稿や、GPOをSambaの環境でどのように複製するのかといった投稿がほとんどなかったことからも明らかであった。

トラフィック量から判断すると、2002年中盤以降は、GPO は多くのサイトでデプロイメント(運用)の一部として普通に用いられるようになった。本章では、ユーザのデスクトップとネットワーク上のクライアントワークステーションの自動制御を可能とするために用いることが可能な、テクニックと方法についておさらいする(記載する)。

## システムポリシーの作成と運用

Microsoft Windowsプラットフォーム配下、特にMicrosoft NT4とMicrosoft Windows 95のリリースに従ったものは、ドメインコントローラのNETLOGON共有中に配置できるタイプのファイルを作成することが可能である。クライアントがネットワークにログオンすると、このファイルは読み取られ、その内容で、クライアントマシンのレジストリの変更を開始する。このファイルはユーザ、ユーザのグループかマシンに影響するレジストリを変更させることを許可する。

Microsoft Windows 9x/Meようには、このファイルは`Config.POL`としなければならず、ポリシーエディタとしてよく知られている`poledit.exe`というツールを使って作成できる。ポリシーエディタはWindows 98インストール用CD-ROMで提供されているが、Microsoft Windows Meでは提供されなくなった。Microsoft Windowsネットワーク管理者からのコメントによると、これはMicrosoft Windows Me リソースキットに含まれるようになったとのこと。

Microsoft Windows NT4サーバ製品には、スタート -> プログラム -> 管理ツール配下にシステムポリシーエディタが含まれている。Microsoft Windows NT4とその後のクライアント用に、このファイルは`NTConfig.POL`という名前にしなければならない。

Microsoft Windows 2000からは、Microsoft管理コンソールすなわちMMCが新たに導入された。このツールは、ネットワークアクセスとセキュリティ管理方法に対して、永遠に止めることのないマイクロソフト社の歩みの中から生まれた新しい潮流である。マイクロソフト社の新製品や新技術が登場するたびに、以前の常識が覆され、複雑化したツールと方法が新たに生み出されるように見える。マイクロソフト社の立場からすると、MMCは進歩である。しかし、機能の進歩には大きな代償が伴っているのだ。

ネットワークとシステムポリシーの設定に着手する前に、Implementing Profiles and Policies in Windows NT 4.0という、MicrosoftのWebサイトで提供されている文書を読むことを強く推奨する(訳注:現存しない)。これらは、四で理解すべきである、古いものに対する大量の追加文書である。“グループポリシー”をMicrosoftのWebサイト上で探してみること。

以下で説明するものは、いくつかの有用な注意事項に関する短い議論である。ここで提供される情報は不完全であることを警告する。

### Windows 9x/ME ポリシー

Windows 9x/Meは以下でWindows 98のグループポリシーエディタを使ってグループ プロファイルを作成する必要があるとする。これはオリジナルの完全なWindows 98 インストールCD-ROM配下の`tools\reskit\netadmin\poledit` ディレクトリ中にある。プログラムの追加と削除機能を使ってこれをインストールし、 次に、Have Diskをクリックする。

ユーザポリシーまたは`マイドキュメント`などの位置を指定する ポリシーファイルを作成するために、グループポリシーエディタを使う。次に、 `[NETLOGON]`共有のrootに配置する必要がある、 `Config.POL`というファイルにこれらの設定をセーブする。 もしもWindows98がSambaドメインにログオンするように設定されていたならば、これは 自動的にこのファイルを読み、ログオンしようとするマシンの、Windows 9x/Me レジストリを更新する。

さらなる詳細はWindows98リソースキットの文書中で説明されている。

もしも、正しい手順を踏まない場合、時々Windows 9x/Meはレジストリの正当性を検査し、 各Windows 9x/Meマシンに格納されているレジストリのバックアップコピーから、その 設定をリストアする。そのため、時々、オリジナルの設定に戻ってしまうと言うことに 気がつくだろう。

グループポリシーを適用するために、Windows 9x/Me用のグループポリシーハンドラを インストールする。Windows 98 CD-ROMの `\tools\reskit\netadmin\poledit`を参照。 `grouppol.inf`をダブルクリックして、Windows 9x/Meにグループ ポリシーをインストールする。不幸にも、これはグループポリシーを使うWindows 98/Me マシンすべてで行う必要がある。

### Windows NT4形式のポリシーファイル

`ntconfig.pol`を作成あるいは編集するために、NT4サーバには 同梱されているが、NTワークステーションには含まれていない、 `poledit.exe`というNTサーバポリシーエディタを使う必要がある。 NT4ワークステーションにもポリシーエディタはあるが、ドメインポリシーを作成する のには適していない。さらに、Windows 95のポリシーエディタはNT4ワークステーション あるいはサーバにインストールできるが、NTクライアントではこれは動作しない。 しかし、NTサーバからのファイルはNT4ワークステーション上でも問題なく動く。

`poledit.exe`, `common.adm`と `winnt.adm`を必要とする。2つの`*.adm` ファイルを`c:\winnt\inf`に配置するのは、プログラムが他の場所を 指定されない限り既定値で探しに行く場所であるので、都合がよい。このディレクトリは 通常“hidden”である。

Windows NTポリシーエディタは、Windows NT4.0のサービスパック3(とそれ以降)にも 同梱されている。`servicepackname /x`を使ってファイルを 解凍する。たとえばサービスパック6aでは`Nt4sp6ai.exe /x` である。ポリシーエディタ`poledit.exe`と関連するテンプレート ファイル (*.adm)が解凍される。office97用のテンプレートファイルとポリシーエディタの コピーをダウンロードすることも可能である。他の場所としては、Microsoftから ダウンロードできるZero Administration Kitがあげられる。

#### 腐ったレジストリ

NT4形式ベースのポリシーの変更で、大量の設定は自動的にユーザのログオフでは 戻されない。`NTConfig.POL`ファイル中にある設定は クライアントマシンのレジストリに適用され、細かな項目がたくさんある HKEY_LOCAL_MACHINEキーへの適用は、明示的に戻されない限りそのままになる。 これは入れ墨として知られている。これはその下部に対して重大な影響を及ぼす 事が可能となり、管理者は後々そのマシンのを管理する能力を失わないように、 とても注意しなければならない。

### Microsoft Windows 200x/XP Professionalのポリシー

Windows NTpシステムポリシーは、NT4形式のドメイン中のメンバである、ユーザ、 グループとコンピュータ(クライアントワークステーション)に指定するレジストリ パラメータの設定が出来る。このようなポリシーファイルはMicrosoft Windows 200x/XP でも動作する。

Microsoft Windows 2000では、最近新たにNT4形式のポリシーと比べて上位互換の機能を 提供する、形式のグループポリシーを導入した。もちろん、ポリシーを作るツールは 異なり、それを実装するメカニズムはもっと改良されている。

古いNT4形式のレジストリベースポリシーは、Microsoft Windows 2000/XP GPO中では 管理用テンプレート(Administrative Templates)として 知られている。前者は種々のセキュリティ設定の設定機能、インターネット エクスプローラの設定の強制、ユーザデスクトップ(スタートメニュー中に現れる メニュー項目に設定されるのと同じような`マイドキュメント` ファイルの配置を含む)の変更と外観の切り替え(redirect)を含む。 追加の新しい機能は、特定のWindowsアプリケーションソフトを特定のユーザ/グループに 有効化する事を行うことである。

思い出してほしいが、NT4のポリシーファイルは`NTConfig.POL` という名前で、ドメインコントローラ上のNETLOGON共有のルートに格納される。Windows NT4 ユーザはユーザ名とパスワードを入力し、ログオンを行うドメイン名を選択する。ログオン プロセス処理の間、クライアントマシンは、認証サーバ上のNETLOGON共有から `NTConfig.POL`を読み、このファイル中にある設定に従い、ローカルの レジストリ値を変更する。

Windows 200x GPOは機能がたくさんある。これらは、NETLOGON共有には格納されないが、 一部はActive Directoryそれ自身にWindows200x ポリシーファイルとして格納され、 残りはSYSVOLフォルダと呼ばれる共有(かつ複製される)ボリューム中に格納される。 このフォルダはすべてのActive Directoryドメインコントローラ上に存在する。 Active Directoryそれ自身に格納される部分は、グループポリシーコンテナ(GPC)と 呼ばれ、SYSVOLと呼ばれる複製された共有中に格納されるものは、グループポリシー テンプレート(GPT)として知られる。

NT4クライアントでは、ポリシーファイルは読み取られるが、各ユーザがネットワークに ログオンする時のみ実行される。Microsoft Windows 200xポリシーは、もっと 複雑である。GPOはクライアントマシン起動時(マシン固有の部分)で処理、 適用され、ユーザがネットワークにログオンする時、ユーザ個別の部分が適用される。 Microsoft Windows 200x形式のポリシー管理では、各マシンあるいはユーザは、 限りなく多くの、同時に適用可能な(かつ、適用される)ポリシーセット(GPO)の適用を 受けるかもしれない。NT4形式のポリシーファイルでは、これと同様の能力をもつものは 存在しない。

#### Windows 200x/XPポリシーの管理

システムポリシーエディタというツールを使う代わりに、 通常はPoledit(バイナリファイルは`poledit.exe`)を使い、 以下のように、 Microsoftマネジメントコンソール(MMC) スナップインを使って、GPOsの作成と管理を行う:

1. Windows 200x/XPメニューから スタート->プログラム->管理ツールとたどり、 Active Directoryユーザとコンピュータ というMMCスナップインを選択する。

2. 管理したいドメインまたはorganizational unit (OU)を選択し、次に、 そのオブジェクトのコンテキストメニューを開くために右クリックし、 プロパティを選択する。

3. グループポリシータブ上で左クリックし、次に、 新規タブ上で左クリックする。作成したい新しいポリシーの名前を 入力する。

4. 編集タブで左クリックし、GPOを作成するために 必要なステップを開始する。

すべてのポリシー設定オプションはポリシー管理テンプレートを使用する ことによって制御される。NT4と同様Windows 200xでも、これらのファイルは 拡張子として.admを使う。しかしながら、.admファイルはNT4とWindows 200x 間で相互交換可能ではないことに注意。後者は拡張された定義を行えるような たくさんの新しい機能を導入している。どのように.admファイルをプログラム するかについて説明することは、この文書の範囲外である。それについては、 使用しているMicrosoft Windowsの、特定のバージョンに対する Microsoft Windowsリソースキットを参照のこと。

### Note

Microsoft Windows 2000リソースキットには、`gpolmig.exe` というツールが入っている。このツールはNT4の`NTConfig.POL` ファイルをWindows 200x形式のGPOに変換するのに使える。どのようにこの強力な ツールを使うかについては十分に注意すること。特定の使用に関する情報については、 リソースキットのマニュアルを参照してほしい。

#### 固有のシステムポリシーテンプレート

過去一年にわたって、Windows システムポリシーのための固有のテンプレートの 作成に関するいくつかの議論があった。Sambaメーリングリスト上での最近の 通知は言及に値する。

Mike Petersenは彼が作成したテンプレートファイルの有効性を通知した。この 固有のシステムポリシーエディタテンプレートは、SambaのようなSMBサーバから Microsoft Windows ワークステーションを問題なく制御することができる。 このテンプレートは、いくつかのネットワーク上でテストされたが、 もしも、それらのポリシーについて何らかの問題を見つけたか、追加のポリシーに 関する何らかの案があったとしたら、mgpeter@pcc-services.comまでメールを 送って教えてほしい。このテンプレートはWindows XP用の数多くのポリシーを 含み、業務用の環境ではもっとよく動くようになっている。

さらなる情報については、 Petersen Computer Consulting Webサイトを参照してほしい。テンプレートファイルへの ダウンロードリンクがある。

## アカウント/ユーザポリシーの管理

ポリシーは、特定のユーザの設定か、ユーザのグループの設定を定義できる。結果のポリシーファイルには、ポリシーファイルを使う、すべてのユーザ、グループとコンピュータ用のレジストリ設定が含まれる。各ユーザ、グループあるいはコンピュータ用にポリシーファイルを分けることは不要である。

もしも、認証されたドメインコントローラから自動的にダウンロードされるポリシーファイルを作成したら、`NTConfig.POL`と名前を付けるべきである。システム管理者にはポリシーファイルの改名オプションがあり、Windows NTベースのワークステーションを変更することで、マニュアルパス経由でポリシーファイルのするためにコンピュータを制御する。手動でレジストリを変更するか、システムポリシーエディタを塚'ってこれを行うことが出来る。これは、各マシンがその固有のポリシーファイルを持つようなローカルパスでも問題ないが、もしも、すべてのマシンに対して変更が必要であれば、各ワークステーションに対して個別に行わなければならない。

Windows NT4/200x/XPマシンがネットワークにログオンするとき、クライアントは、`NTConfig.POL`ファイルが存在するかどうかを、認証するドメインコントローラ上のNETLOGON共有中で捜す。もしも存在するならば、それをダウンロードし、解析し、レジストリのユーザ部分に適用する。

Microsoft Windows Active DirectoryドメインにログオンするMicrosoft Windows 200x/XPクライアントはActive Directoryそれ自身に定義され格納されるGPOを使って、さらにポリシーの設定を要求するかもしれない。ADのGPOを使う最も重要な利点は、レジストリを汚染する効果がない言うことである。これは`NTConfig.POL`(NT4)形式のポリシー更新の使用と比較して考慮すべき利点である。

さらに追加で、ユーザプロファイルと結合して動作する方法で、システムあるいはグループポリシー経由で、設定あるいは強制されるかもしれないアクセス制御の追加においてMicrosoft Windows NT4/200x/XP下のユーザ管理環境は、ユーザ単位のアカウント制限が手cきょうされるのと同様に、ドメイン単位でもできる。よく使われる共通の制限は以下のものがある:

- ログオン時間

- パスワードのエージング

- 特定のマシンからのログオンのみ許可

- アカウントタイプ(ローカルまたはグローバル)

- ユーザの権限

Samba-3.0.20は、まだMicrosoft Windows NT4/200x/XPで共通なすべてのアカウント制御を実装していない。Microsoft Windows NTp用のドメインユーザマネージャを使って多くの制御を設定する間、パスワード満了機能のみが現在使える。現時点で残りの制御の大半は、実際の制御を提供するように、完了されるかもしれないダミーのルーチンである。NT4ドメインユーザマネージャを使うか`NTConfig.POL`中でパラメータが設定できることから、誤解してはいけない。

## 管理ツール

グループポリシーを作成するか管理しようと思っている人は誰でも、いくつかのツールについて慣れておく必要がある。以下の節では、余りメンテナンスをしないユーザ環境を作成するための手助けとなる、主要なツールについて説明する。

### SambaのEditregツールセット

`editreg`と呼ばれる新しいツールが開発中である。このツールは、 ユーザとグループプロファイル中に格納される(`NTUser.DAT`と 呼ばれる)レジストリファイルを編集するのに使える。`NTConfig.POL` ファイルは`NTUser.DAT`ファイルと同じ構造を持ち、このツールを 使って編集できる。`editreg`は、`NTConfig.POL` ファイルをテキスト形式でセーブすることが出来るように意図し、拡張された機能を含む 新しい`NTConfig.POL`ファイルを構築する事を出来るように作成されて いる。この機能を実現するのは困難であることは分かっているので、もしもこの機能が 実現しなくとも驚かないでほしい。公に使える機能は、このツールの正式版がリリースされた 時に公開される。

### Windows NT4/200x

Microsoft Windows環境からこれらのタイプの制御を設定するために使えるかもしれない ツールは、NT4ドメインユーザマネージャ、NT4システムおよびグループポリシーエディタ、 およびレジストリエディタ(regedit32.exe)である。Microsoft Windows 200x/XP配下では これは、MMCに対して適切な“スナップイン”、レジストリエディタ、および、 もしかするとNT4システムとグループポリシーエディタを使って行える。

### Samba PDC

Sambaドメインコントローラでは、ユーザアカウントとポリシー情報の管理のための 以下の新しいツールが含まれている: With a Samba domain controller, the new tools for managing user account and policy information include: `smbpasswd`, `pdbedit`, `net`, と `rpcclient`。 管理者はこれらのツールのマニュアルページを読み、使用法に慣れるべきである。

## システムスタートアップとログオン処理の概要

以下は、システムの処理の順番と、システムの再起動とユーザログオンの一部として処理される、処理の順番を説明する試みである:

1. ネットワークが起動し、次にリモートプロシジャーコールシステムサービス(RPCSS)と multiple universal naming convention provider (MUP)が起動する。

2. Active Directory を使う場合、GPOの整列された一覧がダウンロードされて適用される。 リストは以下のGPOを含んでいても余韻

   - ディレクトリ中のマシンの配置を適用(Apply to the location of machines in a directory)。

   - 設定が変更されたときのみ適用(Apply only when settings have changed)。

   - 適用範囲の設定に依存:local,site,domain,organizational unitなど。

   どのデスクトップユーザインタフェースも、上記が処理されるまで提供されない。

3. スタートアップスクリプトの実行(既定値ではhiddenとsynchronous)。

4. ログオンを行うためのキーボード操作(Ctrl-Alt-Del)。

5. ユーザの認証情報が検証され、ユーザプロファイルがロードされる(ポリシー設定に依存)。

6. ユーザGPOの整列された一覧を入手する。一覧の内容は、以下の点で何が含まれているかに依存する:

   - ユーザがドメインのメンバか、結果、特別なポリシーの適用を受けるか?

   - Loopback enablement, and the state of the loopback policy (併合または置換)。

   - Active Directoryそれ自身の位置

   - GPOの一覧が変更されたか?もしも変更されていないならば、処理は不要である。

7. Active Directoryからのユーザポリシーが適用される。注意:いくつか種類がある。

8. ログオンスクリプトが動く。Windows 200xとActive Directoryから新規に、ログオン スクリプトはGPOをベースにして得られるかもしれない(hiddenとsynchronouslyに実行)。 NT4形式のログオンスクリプトは通常のウィンドウで動作する。

9. GPOから決定されたユーザインタフェースが提供される。注意:Sambaドメイン中では (NT4ドメインのように)、マシン(システム)ポリシーは起動時に適用される。 ユーザポリシーはログオン時に適用される。

## よくあるエラー

ポリシーに関連する問題は、診断するのがとても難しく、さらに修正するのがもっと難しい可能性がある。以下の項目は、基本的な問題のみを示している。

### ポリシーが動かない

“`Config.POL`ファイルを作成し、NETLOGON共有に置いた。が、Windows XP Proマシンでは、それが見えていないような感じで、何ら違いがなかった。Windows 98では正しく動作したが、Windows XP Proにアップグレードしてからはもはや動かなくなった。何かヒントはないか?”

ポリシーファイルはWindows 9x/MeとMicrosoft Windows NT4/200x/XPベースのプラットフォームの間では互換性がない。`NTConfig.POL`というファイルをNT4のグループポリシーエディタで作成する必要があり、そうすると、Microsoft Windows XP Proクライアント用の正しい形式になる。

Prev | Up | Next
Chapter 25. 詳細なネットワーク管理 | Home | Chapter 27. デスクトッププロファイルの管理