PEAP およびパスワードでワイヤレス LAN のセキュリティを保護する

付録 D: スクリプトとサポート ファイル

公開日: 2004年9月7日

トピック

はじめに
ソリューションに含まれるファイルの一覧
スクリプトの構造

はじめに

この付録では、ソリューションで提供されるスクリプトとその他のサポート ファイルについて簡単に説明します。スクリプトは完全に機能し、ソリューションでテストされていますが、広範な品質管理プロセスは実施されていません。スクリプトの目的は、テクニックを示し、ユーザー固有の管理スクリプトの基礎を提供することです。スクリプトを運用環境で展開する前に、ユーザー環境で十分にテストする必要があります。

免責事項

サンプル スクリプトは、マイクロソフトのどのスタンダード サポート プログラムまたはサービスでもサポートされていません。これらのサンプル スクリプトは、どのような保証もない現状のままの状態で提供されるものです。マイクロソフトは、商品性、特定の目的に対する適合性を含む一切の黙示の保証をいたしかねます。このサンプル スクリプトおよびドキュメントの使用または機能から生じるリスクは、お客様が負うものとします。マイクロソフト、本サンプル スクリプトの作成者、または本スクリプトの作成、製造、配布に関与する者は、どのような場合においても、本サンプル スクリプトおよびドキュメントの使用または使用不能から生じる損害 (逸失利益、事業の中断、事業情報の喪失、またはその他の金銭的損失を含みますがこれらに限定されません) に関して一切責任を負わないものとします。たとえマイクロソフトがこのような損害の可能性について知らされていた場合でも、責任を負うことはありません。

ページのトップへ

ソリューションに含まれるファイルの一覧

次の表は、このソリューションで提供されるすべてのファイルの一覧です。これらのファイルは、MSSWLANTools.msi という Windows® Installer ファイルからインストールされます。

表 D.1: ソリューションで提供されるファイルの一覧

ファイル名 説明
メインの CMD ファイル
MSSSetup.cmd MSSTools.cmd Microsoft Windows スクリプト ホスト (WSH) ファイルへのインターフェイスを提供し、構文を簡素化するバッチ ファイル。コマンド ラインで単一パラメータとしてジョブ名を指定することによって、さまざまなジョブを実行できます。構文は次のとおりです。
msssetupJobName [/param:value]
msstools JobName [/param:value]
ここで、JobName には操作名が入ります。JobName を指定せずにこのスクリプトを実行すると、利用可能な全ジョブの一覧が、各ジョブの機能に関する簡単な説明とともに表示されます。
WSH XML ファイル
msssetup.wsf msstools.wsf 利用可能な個別のジョブを指定する WSH XML ファイル。WSF ファイルで定義されたジョブは、VBS ファイルで定義されているプロシージャを呼び出します。構文は次のとおりです。
Cscript //job:JobName msstools.wsf
[/param:value] JobName を指定せずにこのスクリプトを実行すると、WSF ファイル内の利用可能な全ジョブの一覧が、各ジョブの機能に関する簡単な説明とともに表示されます。
VBScript ファイル
ias_setup.vbs インターネット認証サービス (IAS) のセットアップ中に使用されるルーチン
ias_tools.vbs IAS の動作および監視中に使用されるルーチン
Gen_setup.vbs IAS または証明書サービスに特化せず、実装中に使用されたルーチン
ca_setup.vbs 証明機関 (CA) のセットアップ中に使用されるルーチン
ca_monitor.vbs CA の監視機能によって使用されるルーチン
constants.vbs 他の VBS ファイルによって使用される定数
helper.vbs 他の VBS ファイルによって使用される汎用ルーチン
pkiparams.vbs CA の多数のセットアップ パラメータを定義するのに使用される定数
その他のファイル
InstCAPICOM.cmd CAPICOM のインストールを簡素化する CMD ファイル
CreateShortCut.cmd VBS ファイルからルーチンを呼び出して、ユーザーのデスクトップ上にショートカットを作成する CMD ファイル。ショートカットは、スクリプトのインストール フォルダに設定されている現在のディレクトリから CMD.EXE を起動します。
ComputerCerts.msc コンピュータ ストア内の証明書を表示するように事前に定義された管理コンソール
AddRADIUSClient.exe コマンド ラインから IAS に RADIUS クライアントを追加するユーティリティ(注: このツールを使用するには、.NET Framework がインストールされている必要があります。)
Interop.SDOIASLib.dll AddRADIUSClient.exe に必要なサポート ライブラリ
Source AddRADIUSClient ツールのソース コードを含むフォルダ
グループ ポリシー ファイル
MSSWLANGPOs このソリューションで提供される 2 つの定義済みグループ ポリシー オブジェクト (GPO) 用 XML 定義ファイルとデータ ファイルを含むフォルダ
ドキュメント
Securing Wireless LANs.rtf この章と同じ内容の Readme ファイル
[](#mainsection)[ページのトップへ](#mainsection) ### スクリプトの構造 Microsoft Visual Basic® Scripting Edition (VBScript) ファイルがどのように連携するのかを理解するには、多少の説明が必要です。多くの VBScript の例とは異なり、このソリューションで提供されるスクリプト ファイルには複数の関数が含まれており、しばしばそれらは互いに独立しています。これらの関数へのアクセスを可能にするために、これらのスクリプトは WSH の "ジョブ" 機能を使用しています。これにより、複数の独立したプログラム関数を同じファイルに格納したり、スクリプトのパラメータとしてジョブ名を指定することでこれらの関数を同じファイルから呼び出したりすることができます。 さまざまなスクリプト操作へのユーザー インターフェイスを含む 2 つの Windows スクリプト (.wsf) ファイルがあります。.wsf ファイルは一連の .vbs ファイルを呼び出します。.vbs ファイルには、特定のジョブの動作を実現するコードが含まれています。 ジョブを呼び出すには、次の構文を使用します。 **cscript //job:***JobNameWScriptFile*.wsf ここで、JobName には操作名が入り、WScriptFile にはスクリプトの XML インターフェイス ファイルの名前が入ります。ConfigureCA ジョブが定義されている .wsf ファイルの抜粋を次に示します。 ```

この抜粋では、ジョブ定義で、そのジョブに必要な関数、サブルーチン、またはデータが .vbs ファイルの constants.vbs、pkiparams.vbs、helper.vbs、および ca_setup.vbs に含まれています。つまり、これらのファイルを読み込む必要があります。最後のセクションでは、ジョブを開始するために実行する最上位の関数を指定しています。この例における関数は、ログの収集をセットアップする Initialize、CA の構成というメイン ジョブを実行する ConfigureCA、そしてログを閉じる CloseDown です。

各 .wsf ファイルの最初のジョブは、このファイルに含まれるすべてのジョブの名前 (ID) と説明を一覧表示するように定義されています。したがって、特定のジョブを要求せずに .wsf ファイルを実行すると、この最初のジョブが既定で実行され、ファイル内の利用可能な全ジョブの名前と説明を含む短いヘルプ画面が表示されます。次の表は、このソリューションで提供される各 .wsf ファイルで利用可能なジョブの一覧です。

表 D.2: MSSSetup.wsf 内のジョブの一覧

ジョブ名 説明
ListJobs WSF ファイル内のすべてのジョブを一覧表示します。
ConfigureCA CA レジストリ パラメータを構成します。
ConfigureTemplates CA 証明書テンプレートを構成します。
CheckCAEnvironment CA をインストールする前に環境を確認します。
InstallCA 証明書サービスをインストールします。
CreateShortcut MSS WLAN Tools へのショートカットをデスクトップ上に作成します。
ImportSecurityGPO サーバー セキュリティが設定された GPO をドメインにインポートします。
ImportAutoEnrollGPO 証明書の自動登録が設定された GPO をドメインにインポートします。
ImportWLANClientGPO* WLAN が設定された GPO をインポートします。
CheckDomainNativeMode ドメインがネイティブ モードであるかどうかを確認します。
VerifyCAInstall CA のインストールが成功しているかどうかを確認します。
VerifyCAConfig CA の構成が成功しているかどうかを確認します。
CheckIASEnvironment IAS をインストールする前に環境を確認します。
InstallIAS サーバーにインターネット認証サービスをインストールします。
CreateWLANGroups Active Directory® にセキュリティ グループを作成します。
AddWLANGroupMembers セキュリティ グループに正しいメンバを追加します。
**注:** アスタリスク (\*) の付いているジョブは、このソリューションでは使用されません。 **表 D.3: MSSTools.wsf 内のジョブの一覧**
ジョブ名 説明
ListJobs WSF ファイル内のすべてのジョブを一覧表示します。
AddRADIUSClient IAS に RADIUS クライアントを追加する対話型プロシージャ (パラメータ: [/path:OutputFileName])
AddSecRADIUSClients IAS に RADIUS クライアントを追加する対話型プロシージャ (パラメータ: [/path:InputFileName])
GenRADIUSPwd RADIUS クライアントのエントリとシークレットを生成します (パラメータ: /client:ClientName /ip:ClientIPAddress [/path:OutputFile])。
ExportIASSettings IAS サーバーの構成をファイルにエクスポートします (パラメータ: [/path:FolderToSaveSettingsFiles])。
ImportIASSettings IAS サーバーの構成をファイルからインポートします (パラメータ: [/path:FolderWithFilesToImport])。
ExportIASClients IAS RADIUS クライアントをファイルにエクスポートします (パラメータ: [/path:FolderToSaveClientsFile])。
ImportIASClients IAS RADIUS クライアントをファイルからインポートします (パラメータ: [/path:FolderWithClientsFileToImport])。
BackupIAS すべての IAS 設定をファイルにバックアップします (パラメータ: [/path:FolderToSaveBackupFile])。
RestoreIAS すべての IAS 設定をファイルから復元します (パラメータ: [/path:FolderFileToRestore])。
CheckIAS IAS サーバーが応答していることを確認します (パラメータ: [/verbose])。
CheckCA CA サービスが応答し、証明書失効リスト (CRL) が有効であることを確認します (パラメータ: [/verbose])。
EnableIASLockout* IAS のアカウント ロックアウトを有効にします (パラメータ: [/maxdenials:10] [/lockouttime:2880 (secs)])。
DisableIASLockout* IAS のアカウント ロックアウトを無効にします。
ShowLockedOutAccounts* ロックアウト状態のアカウントと認証に失敗したアカウントを表示します。
ResetLockedOutAccount* ロックアウト状態のアカウントをリセットします (パラメータ: /account:DomainName:AccountName)。
**注:** アスタリスク (\*) の付いているジョブは、このソリューションでは使用されません。 #### ジョブの出力 ほとんどのスクリプトは、進行状況の情報をコンソール ウィンドウに表示します。また、多くの場合、ログ ファイルへの記録も行います。この情報には、スクリプトの実行中に発生した問題に関するエラー情報が含まれる場合があります。ただし、監視スクリプトは例外です。非対話型のスケジュールされたジョブとして実行され、コンソール ウィンドウに出力を送信しない設計となっているためです。 スクリプトは、単純でスクロール可能なウィンドウを使用して出力を表示します。スクリプトが完了するたびに、ウィンドウを参照用に開いたままにするか、または閉じるか確認が行われます。 ほとんどのセットアップ プロシージャでは、出力は %SystemRoot%\\debug\\MSSWLAN-Setup.log というファイルにも記録されます。多くの定期的な運用タスクは、ログ ファイルに記録されません。ただし、IAS 構成のインポートなど、セキュリティや運用に大きな影響を及ぼす可能性のあるタスクは記録されます。RADIUS クライアントの追加や RADIUS クライアント シークレットの生成など、機密情報がログに書き込まれる可能性があるタスクは記録されません。 #### ジョブを実行する スクリプトは直接実行できますが、構文を簡素化する 2 つのコマンド シェル バッチ (.cmd) ファイルがあります。 .wsf ファイルを直接実行する場合の構文は、次のとおりです。 **Cscript //job:***JobName* MssSetup.wsf 代わりに .cmd ファイルを使用すれば、構文は次のようにより簡単になります。 **MssSetup***JobName* ジョブを指定せずに .cmd ファイルを実行すると、.wsf ファイル内の最初のジョブ (ListJobs) が実行されます。このジョブは、.wsf ファイル内の各ジョブの ID と説明を一覧表示します。 追加パラメータを取るジョブもあります。これらのジョブを実行するための構文と追加パラメータの詳細については、このソリューションの関連する章で説明します。追加パラメータを指定する場合の一般的な構文は、次のとおりです。 **MssSetup***JobName* /ParamName:*ParamValue* *ParamName* はパラメータ名 (たとえば "path" や "client")、*ParamValue* はそのパラメータの設定 (たとえば "C:\\MyFile.txt" や "マイ コンピュータ") です。埋め込みスペースを含むパラメータ値は、引用符 (") で囲む必要があります。 [](#mainsection)[ページのトップへ](#mainsection)