DigiCert証明書の正規代理店株式会社アールエムエス
DigiCert サーバー証明書利用団体
  1. ホーム
  2. サポート
  3. 技術情報
  4. .pfxファイル証明書を作成する

OpenSSLを使って.pfxファイル証明書を作成する方法

ここでは、OpenSSLを使ってコンピュータ上でCSRと秘密鍵を作成し、取得したサーバ証明書と秘密鍵を合成して.pfxファイル証明書を作成する方法について説明します。

OpenSSLでのCSR作成手順

利用中のコンピュータでOpenSSLコマンドを使ってCSRを作成します。
CSRの作成と同時に秘密鍵も作成しますので、安全性が確保されたコンピュータで作業してください。

CSR作成に必要な情報

CSR作成には以下の情報が必要になるのであらかじめ用意してください。

  • 国名 (Country Name)
    - 法人の登記国名コードを記載します。日本の場合はJPです。
  • 都道府県名 (State or Province Name)
    - 法人の登記簿謄本に記載された都道府県名をローマ字で記載します。
  • 法人所在地 (Locality Name)
    - 法人の登記簿謄本に記載された都市名をローマ字で記載します。
  • 法人名 (Organization Name)
    - 法人名を英文で記載します。Whoisの登録情報と合致させてください。
  • 部署名 (Organizational Unit Name)
    - 部署名を英文で記載します。空欄でもかまいません。
  • コモンネーム (Common Name)
    - サーバー証明書の対象となるホスト名です。SSL Plusでは www.digicert.ne.jp のように記載してください。
    ワイルドカードの場合は *.digicert.ne.jp のように記載します。
    上記のような記載方法で、SSL PlusとWildCard Plus どちらの場合でも、/ と https://digicert.ne.jp/ の両方で利用できます。

OpenSSLの準備

Unix系OS、Mac OSでは標準でOpenSSLコマンドが使えるはずです。
WindowsでOpenSSLがインストールされていない場合は、「Windowsでopensslを使う」を参照しOpenSSLをインストールしてください。

CSR作成

Unix系OS、Windowsの場合

利用中のコンピュータがUnix系OSあるいはWindows OSの場合は、以下の手順でCSRを作成します。

  1. ウイザードで openssl 用のコマンドを作る
    ウイザードに必要事項を入力すれば、openssl用のコマンドを作成できます。

    Preview of OpenSSL CSR Wizard

  2. 書き込み権限のあるディレクトリでコマンドを実行する
    利用中のコンピュータのコマンドプロンプト(Windows)あるいは shell画面(Unix系OS)に、ウイザードで得られたコマンドを貼り付け実行します。
    コマンド実行は、実行ユーザーが書き込み権限のあるディレクトリで行ってください。

Mac OS X の場合

Mac OS X ApacheでのCSR作成方法 を参照し、CSRを作成してください。

CSR・秘密鍵ファイルの確認と秘密鍵ファイルの保存

コマンドを実行したディレクトリにCSRファイル({comon_name}.csr)と秘密鍵ファイル({comon_name}.key)が作成されます。({comon_name}は例です。)
両ファイルとも標準テキストエディタで開くことができます。

CSRファイル({comon_name}.csr)
-----BEGIN NEW CERTIFICATE REQUEST-----で始まり-----END NEW CERTIFICATE REQUEST-----で終わるファイルです。
※{ NEW}は含まれないこともあります。
秘密鍵ファイル({comon_name}.key)
-----BEGIN NEW PRIVATE KEY-----で始まり-----END NEW PRIVATE KEY-----で終わるファイルです。
※{ NEW}は含まれないこともあります。
※秘密鍵ファイル({comon_name}.key)は第三者が閲覧できないように保存してください。

証明書のオーダー

CSRファイル({comon_name}.csr)をテキストエディターで開き、-----BEGIN NEW CERTIFICATE REQUEST-----、-----END NEW CERTIFICATE REQUEST-----を含むすべてをコピーして、オーダフォームのCSR入力欄に貼り付けてください。
サーバーの種類はWindows2008サーバーで利用する場合は「Microsoft IIS7」を、Windows2012サーバーで利用する場合は「Microsoft IIS8」を選択してください。

EV SSL Plus/1年あたり32,500円から
緑のアドレスバーでサイトの信頼性向上 DigiCert(デジサート) EV SSL/TLS サーバー台数無制限 国内最安値でご提供

OpenSSLを使って .pfxファイルを作成する方法

  1. メールでお送りする.zipファイルに含まれている証明書ファイル({common_name}.cer)をCSRを作成したコンピューターに保存します。({common_name}は例です)。
    .cerファイルはテキストエディターで開くことができます。
    ファイルは -----BEGIN PKCS7----- 行で始まり、-----END PKCS7-----行で終わっています。
  2. ファイルを保存したディレクトリで以下のコマンドを実行し、保存した証明書を .pem書式に変換します。
    # openssl pkcs7 -in {common_name}.cer -outform PEM -out {common_name}.pem -print_certs
    
    作成された {common_name}.pemファイルをテキストエディターで開くと、3つのサーバー証明書が含まれているのが分かります。
    それぞれの証明書は、
    subject行
    issuer行
    -----BEGIN CERTIFICATE-----行
    複数のデータ行
    -----END CERTIFICATE-----行
    の構造になっています。
  3. 秘密鍵を含む .pem ファイルを作成します。
    CSRを作成したディレクトリに保存されている秘密鍵ファイル({comon_name}.key)をテキストエディタで開き、すべてをコピーします。
    上の手順で .pem 書式に変換済みの証明書ファイル({common_name}.pem)をテキストエディタで開き、コピーした秘密鍵の内容をファイルの先頭に貼り付けます。
    ファイルは以下のような構造になります。
    -----BEGIN PRIVATE KEY----- ... ... -----END PRIVATE KEY----- subject... issuer.... -----BEGIN CERTIFICATE----- ... ... -----END CERTIFICATE----- subject... issuer.... -----BEGIN CERTIFICATE----- ... ... -----END CERTIFICATE----- subject... issuer.... -----BEGIN CERTIFICATE----- ... ... -----END CERTIFICATE-----
  4. 作成したファイルに名前を付けて保存します。(例:{common_name_cert}.pem)
  5. 以下のコマンドを実行し Microsoft AD LDAP (2012) でインポート可能な .pfxファイルを作成します。(例:{common_name}.pfx)
    # openssl pkcs12 -export -in {common_name_cert}.pem -out {common_name}.pfx
    Loading 'screen' into random state - done
    Enter Export Password:
    Verifying - Enter Export Password:
    unable to write 'random state'
    
    Enter Export Password:でパスワードを設定し、Verifying - Enter Export Password:で設定したパスワードを再入力します。
    このパスワードは Windowsサーバーでのインポート時に必要になります。
    unable to write 'random state' が表示されても .pfxファイルは正常に作成されます。詳しくは OpenSSL 公式サイトのFAQを参照してください。

関連情報

SSL サーバ証明書とは?
30日間テスト証明書
30日間返金保証制度あり!
コードサイニング証明書
ドキュメントサイニング証明書
デジタル証明書ニュース
HTTPS入門
digicert.comトピックス&ニュース