NTサービス対応編
WindowsNT/2000/XP/2003

1. OpenSSLを利用した秘密鍵と証明書の作成 

 1-1. Win32 OpenSSLのインストール
  http://www.slproweb.com/よりOpenSSLのWindowsバイナリ(以後OpenSSL)をダウンロードし,インストーラに従って任意の場所にインストールします.
[C:\OpenSSL] ← ここではC:\OpenSSLにインストールしたとします.

OpenSSLをインストールしたフォルダ内にあるbinフィルダを開き,openssl.cnfファイルをテキストエディタで開いてdefault_bitsを1024から512に書き換えて上書き保存します.
※LF形式の改行コードに対応したテキストエディタを利用してください.

[C:\OpenSSL\bin\openssl.cnf]

 1-2. 秘密鍵の作成
  binフィルダ内のopenssl.exeを実行します.(マウスからクリック実行できます)

[C:\OpenSSL\bin\openssl.exe]

req -new -nodes -keyout key.txtと入力し,エンターキーを押します.
色々聞かれるので入力していってください.

[OpenSSL> req -new -nodes -keyout key.txt]

最後までいくとbinフィルダ内にkey.txtというファイル名で秘密鍵が作成されます.

[C:\OpenSSL\bin]

 1-3. 証明書の作成
  引き続きopenssl.exe上でreq -new -x509 -key key.txt -out cert.txtと入力し,エンターキーを押します.
これも色々聞かれるので入力していってください.
※デフォルトでは証明書の期限が30日で出力されます.
期限を任意の日数で出力するにはcert.txtの後ろに"-days 日数"というオプションを付けます.
[OpenSSL> req -new -x509 -key key.txt -out cert.txt -days 365] ← 有効期限が1年間になります.

[OpenSSL> req -new -x509 -key key.txt -out cert.txt]

最後までいくとbinフィルダ内にcert.txtというファイル名で証明書が作成されます.

[C:\OpenSSL\bin]
これでOpenSSLを利用した秘密鍵と証明書の作成は完了です.

2. stoneでSSL通信を行う下準備 

  OpenSSLを利用してbinフォルダ内に作成したkey.txtとcert.txtをテキストエディタで開き,key.txtとcert.txtの内容を一緒にして任意の場所に任意の名前で保存します.
※LF形式の改行コードに対応したテキストエディタを利用してください.

[C:\ssl\stone-ssl.txt] ← ここではC:\sslにstone-ssl.txtという名前で保存したとします.
これでstoneでSSL通信を行う下準備は完了です.

3. stoneのインストール ~ 実行 

 3-1. ダウンロード
  http://www.gcd.org/sengoku/stone/よりstoneのWindowsNT/2000もしくはWindowsXP版をダウンロードし,任意の場所に解凍します.
※SnapshotではなくOffical Release版の利用を強く推奨します.
[C:\stone] ← ここではC:\stoneに解凍したとします.

 3-2. 設定ファイルの作成
  テキストエディタで次(青字)のようなテキストを作成し,任意の場所に任意の名前で保存します.
  -z key=[key.txtとcert.txtの内容を一緒にして保存したファイルのフルパス]
  -z cert=[key.txtとcert.txtの内容を一緒にして保存したファイルのフルパス]
  -d
  -n
  localhost:80 443/ssl
※実行後にエラーが発生する場合はデバッグレベルを上げると改善することがあります.
-ddddのようにdを増やすことでデバッグレベルが上がります.
※ホスト名でうまく動作しない場合,IPアドレスを利用してみましょう.
127.0.0.1:80 443/ssl

[C:\ssl\stone-set.txt] ← ここではC:\sslにstone-set.txtで保存したとします.

 3-3. NTサービスへの登録
  コマンドプロントを起動してstone.exeまでのフルパス -M install サービス名 -C 設定ファイルのフルパスと入力し,エンターキーを押します。
※サービスの削除はstone.exeまでのフルパス -M remove サービス名で行えます.
[C:\stone\stone.exe -M install repeater -C C:\ssl\stone-set.txt]

正常にインストールされると次のようなメッセージが表示され,NTサービスに"Stone+サービス名"が登録されます.

 3-4. 実行
  Windowsのコントロールパネル → 管理ツール → サービス を開き,"Stone+サービス名"を開始させます.

エラー無くサービスが開始されればstoneが動作し始めます.

4. 動作確認 

  HTTPdを起動させ,ブラウザからhttps://localhost/にアクセスします.
セキュリティの警告画面で"はい"を押すと一時的に秘密鍵がインポートされ,ブラウザとstoneがSSL通信を行います.


ブラウザの右下に鍵マークのアイコンが表示されます.


※これはMicrosoft社製 Internet Explorer 6 での場合となります.
他のブラウザでは表示のされ方が違ったり,秘密鍵を一時的にインポートできないもの(IE3など)もあります.

2002/12/18 公開
2003/02/03 修正
2004/12/04 修正
2005/04/06 修正
2006/02/07 修正

ご意見・ご感想はメール掲示板までお願いします.