Windows TIPS
[System Environment]
  Windows TIPS TOPへ
Windows TIPS全リストへ
内容別分類一覧へ

SSLテスト用にサーバ証明書を自己発行する(IIS 6.0編)

解説をスキップして操作方法を読む

デジタルアドバンテージ 打越 浩幸
2007/08/03
 
対象OS
Windows Server 2003
WebサイトでSSL通信をサポートするには、サーバ証明書を作成して、IISに登録する。
テスト用途なら、自己発行型のデジタル証明書でも構わないことが多い。
IIS 6.0向けにサーバ証明書を自己発行するには、selfssl.exeコマンドを利用すると簡単である。
 
解説

 IISを使って、暗号化通信をサポートしたWebサイト(「http://〜」ではなく、「https://〜」でアクセスするWebサイト)を実現するには、IISにサーバ証明書(サーバの名前などを定義したデジタル証明書)をセットアップする。サーバ証明書は、本来は公的な証明書発行機関に依頼して発行してもらうものであるが、システムの開発段階で実験的に利用するだけならば、仮のデジタル証明書を使っても問題はない(最終的にWebサイトを公開するときには正式な証明書を用意すること)。

 テスト用のサーバ証明書を作成してIISにセットアップするにはいくつかの方法があるが、Windows Server 2003のIIS 6.0を使っているなら、IIS 6.0 Resource Kit Tools(IIS 6.0用リソース・キット・ツール)に含まれるselfssl.exeコマンドを使うと簡単である。

 selfssl.exeコマンドを実行すると、自己発行のサーバ証明書(いわゆる「オレオレ証明書」)が作成され、自動的にIIS 6.0のデフォルトWebサイトに設定される。特にオプションなども必要ないので、非常に簡単である。

操作方法

 selfssl.exeコマンドを入手するには、まずIIS 6.0 Resource Kitを以下の場所からダウンロードし、インストールする。

 selfssl.exeコマンドは、コマンド・プロンプト上で利用するツールであり、特にGUIインターフェイスは用意されていない。IIS 6.0 Resource Kitをインストール後、コマンド・プロンプトを開き、selfssl.exeコマンドのあるフォルダへ移動する。デフォルトではC:\Program Files\IIS Resources\SelfSSLにインストールされているはずである(IIS 6.0 Resource Kitをインストールせず、selfssl.exeコマンドだけをコピーして利用してもよい)。ツールの解説は、[スタート]メニューの[すべてのプログラム]−[IIS Resources]−[SelfSSL]−[SelfSSL Documentation]を参照していただきたい。/?オプションを付けて実行すると、オプションの一覧が表示される。

C:\>cd C:\Program Files\IIS Resources\SelfSSL

C:\Program Files\IIS Resources\SelfSSL>selfssl.exe /? …ヘルプ表示
Microsoft (R) SelfSSL Version 1.0
Copyright (C) 2003 Microsoft Corporation. All rights reserved.

Installs self-signed SSL certificate into IIS.
SELFSSL [/T] [/N:cn] [/K:key size] [/S:site id] [/P:port]

/T               Adds the self-signed certificate to "Trusted Certificates"
                 list. The local browser will trust the self-signed certificate
                 if this flag is specified.
/N:cn            Specifies the common name of the certificate. The computer
                 name is used if not specified.
/K:key size      Specifies the key length. Default is 1024.
/V:validity days Specifies the validity of the certificate. Default is 7 days.
/S:site id       Specifies the id of the site. Default is 1 (Default Site).
/P:port          Specifies the SSL port. Default is 443.
/Q               Quiet mode. You will not be prompted when SSL settings are
                 overwritten.

The default behaviour is equivalent with:

selfssl.exe /N:CN=W2003SVR0001 /K:1024 /V:7 /S:1 /P:443 …デフォルト・オプション

 オプションには、サーバ名、SSL通信のポート番号、暗号化のキー・サイズ、有効期間、Webサイトの識別番号(IISの管理ツールで「識別子」と表示されている)などが指定できる。

 オプションを何も付けずにselfssl.exeコマンドを実行すると、7日間の有効期間を持ったサーバ証明書が作成され、(IIS管理ツールで確認できる)最初のWebサイトに対して設定される。ポート番号は、(https:のデフォルトである)443番が利用される。

C:\Program Files\IIS Resources\SelfSSL>selfssl.exe …コマンドの実行
Microsoft (R) SelfSSL Version 1.0
Copyright (C) 2003 Microsoft Corporation. All rights reserved.

Do you want to replace the SSL settings for site 1 (Y/N)?y …確認
The self signed certificate was successfully assigned to site 1. …実行結果

C:\Program Files\IIS Resources\SelfSSL>

 以上で設定は完了である。IISの管理ツールで確認すると、次のようになっているはずである。

設定されたSSL通信ポート
selfssl.exeコマンドを実行すると、サーバ証明書が作成され、IISに登録される。
  対象となるWebサイト。
  作成されたSSL通信ポート。selfssl.exeコマンドの実行前は、ここは空白であり、ポートが設定されていなかった。

 作成されたデジタル証明書の内容を確認するには、上の画面で「既定の Web サイト」という行( )を右クリックし、ポップアップ・メニューから[プロパティ]を選択する。そして表示されたWebサイトのプロパティ画面で[ディレクトリ セキュリティ]タブを選択し、[セキュリティで保護された通信]グループの[証明書の表示]をクリックすればよい。

作成された自己発行のサーバ証明書
selfssl.exeコマンドを実行すると、このようなサーバ証明書が作成され、システムに登録される。
  自己発行されたサーバ証明書なので、ルート証明書からたどることができず、×印が表示されている。
  発行対象のサーバ名。selfssl.exeコマンドを実行したサーバの名前になっている。
  有効期間は1週間。
  パスを確認するには、ここをクリックする。自己発行されているので、ルート証明書からのパスはない。

 自己発行されたサーバ証明書とはどういうものかについては、TIPS「Webサイトのデジタル証明書を確認する」を参照していただきたい。End of Article

「Windows TIPS」


Windows Server Insider フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Windows Server Insider 記事ランキング

本日 月間