OpenSSL を Windows にインストールする方法

0 件のコメント

今回は「openssl を Windows にインストールする方法」についてまとめます。

今回は openssl のバイナリをダウンロードして Windows 10 にインストール、初期設定を行って動作確認するところまでの具体的な手順をまとめます。

ダウンロード

openssl の バイナリファイル は公式サイトで公開されていません。 サードパーティーが作っているのでその中から選んで利用します。

ダウンロード可能なサードパーティーサイトは英語Wiki に公開されています。 その中でWindows向けバイナリファイルがダウンロードできる具体例は以下のようなサイトになります。

opensslバイナリ形式ダウンロードサイト

ダウンロード手順

今回は上記の中の一番上に記載されている「slproweb.com」のバイナリを利用します。 こちらのサイトのバイナリはインストーラ形式で導入がイメージしやすいです。 (簡単ではない…。。)

  1. slproweb.com のサイトへアクセス

  2. 中段にある「Download Win32 OpenSSL」のリストから「Light」をダウンロード

インストール

続いてダウンロードしたインストーラを実行して実際にインストールを行います。 ここでは Windows で一般的なフォルダ構成となるよう、一部の設定を変更してインストールします。

  1. Welcome : そのまま [Next] を選択

  2. License Agreement : ライセンスを読んで[accept]を選択し、[Next] を選択

  3. Destination : 保存先は一般的な "Program Files" 配下に "OpenSSL" を作成するよう指定し、[Next] を選択

  4. Start Menu : "OpenSSL" のまま [Next] を選択

  5. Additional Tasks : "The OpenSSL binaries (/bin) directory" を選択して [Next] を選択

    OpenSSLのバイナリ保存先は Windows フォルダ配下ではなく、"Program Files" 配下にしたいので "/bin" を選択します。 "Program Files" 配下にまとめるので、後で環境変数の設定が必要になります。

  6. Ready to Install : 設定内容を確認して [Install] を選択

  7. Installing : インストール完了まで待ち

  8. Comlete : 寄付する場合はチェックを選択して [Finish] を選択

初期設定

Windows環境の場合、インストールしただけでは動かないので以下の3点について追加設定を行っていきます。

環境変数

以下の2環境変数を追加、変更します。

変数 設定値
PATH

OpenSSLの実行可能アプリケーションがあるディレクトリを指定します。 上記の手順通りであれば、以下の値を追加します。

%ProgramFiles%\OpenSSL\bin

OPENSSL_CONF

openssl.cnf へのパスを指定します。 通常であればOpenSSLインストールディレクトリ直下にあります。 上記の手順通りであれば、以下の値を追加します。

%ProgramFiles%\OpenSSL\bin\openssl.cfg

初期フォルダ/ファイル

  1. 認証局(CA)用のルートディレクトリを準備

    今回は以下のディレクトリを認証局(CA)ルートディレクトリとして準備します。

    C:\work\OpenSSL\sampleca
    
  2. 必要なフォルダ/初期ファイルを準備

    準備するフォルダ、ファイルは以下の通り。

    CAルート (C:\work\OpenSSL\sampleca)
    │  index.txt
    │  serial
    │  crlnumber
    │  
    ├─certs
    ├─crl
    ├─newcerts
    └─private
    

    作成するフォルダとその役割は以下の通り。

    フォルダ名 説明
    certs 検証用の証明書を保存するフォルダ。
    crl CRLを保存するフォルダ。
    newcerts 発行した証明書を保存するフォルダ。
    private 秘密鍵を保存するフォルダ。 アクセス制限をかけておく必要があります。

    作成するファイルの中身は以下の通り。

    ファイル名 説明
    index.txt 証明書データベース。空ファイル。
    
        
    index.txt.attr 自己署名認証局で署名するときの設定ファイル。 unique_subject はCSR情報の重複を許可するかどうかの設定。
    unique_subject = yes
    
    serial シリアル番号の初期値。
    01
    
    crlnumber CRL番号の初期値。
    01
    

設定ファイル(openssl.cfg)

設定ファイル(openssl.cfg)はデフォルトだとインストールしたディレクトリ直下にあります。 デフォルト以外のパスにインストールした場合、インストールしたままの状態で利用できないので必要に応じて設定変更を行っていきます。 見直すべき設定値はハイライトしています。

設定ファイルの場所

C:\Program Files\OpenSSL\bin
└openssl.cfg

設定ファイルの内容

[ CA_default ]

dir             = C:/work/OpenSSL/sampleca
certs           = $dir/certs
crl_dir         = $dir/crl
database        = $dir/index.txt
new_certs_dir   = $dir/newcerts
certificate     = $dir/ca_cert.pem
serial          = $dir/serial
crlnumber       = $dir/crlnumber
crl             = $dir/crl.pem
private_key     = $dir/private/ca_key.pem

各設定値の意味は以下の通り。

設定値 説明
dir このCAのルートディレクトリ。
certs 検証に利用する証明書を保存するフォルダ。
crl_dir CRLを保存するフォルダ。
database このCAが証明書の署名や破棄を記録するためのデータベースファイル。
new_certs_dir このCAが新規発行した証明書を保存するフォルダ。
certificate このCAの証明書。
serial このCAが署名する際に利用するシリアル番号。
crlnumber このCAが証明書破棄する際に利用する番号。
crl このCAで発行したCRL。
private_key このCAの秘密鍵。

動作確認

細かな設定まであっているかの確認となると実際に証明書作成などをしてみないとわからないので、ここでは単純にパスが通って一応使えるかどうかの確認をします。 任意の場所でコマンドプロンプトを立ち上げて以下のコマンドを実行してみます。

openssl version

インストールした OpenSSL のバージョンが表示されれば動作確認完了です。

今回は「Windows環境に OpenSSL を導入する手順」についてまとめました。 参考になったでしょうか? 本記事がお役に立っていると嬉しいです!!

最後に… このブログに興味を持っていただけた方は、 ぜひ 「Facebookページ に いいね!」または 「Twitter の フォロー」 お願いします!!