すべてのプロダクト
Search
ドキュメントセンター

Server Load Balancer:CA 証明書の生成

最終更新日:Nov 29, 2025

HTTPS リスナーを構成する際に、自己署名 CA 証明書を使用できます。 また、CA 証明書を使用して、クライアント証明書に署名することもできます。

OpenSSL を使用して CA 証明書を生成する

OpenSSL ツールがインストールされている Linux の Elastic Compute Service (ECS) インスタンスにログインします。この例では、インスタンスは Alibaba Cloud Linux 3 オペレーティングシステムを実行し、OpenSSL バージョン 1.1.1k がインストールされています。

  1. 次のコマンドを実行して、/home ディレクトリに ca ディレクトリを作成し、その下に 4 つのサブディレクトリを作成します。

    sudo mkdir /home/ca
    cd /home/ca
    sudo mkdir newcerts private conf server
    • newcerts フォルダは、CA 証明書によって署名されたデジタル証明書を格納するために使用されます。

    • private フォルダは、CA 証明書の秘密鍵を格納するために使用されます。

    • conf フォルダは、パラメータを簡素化するために使用される構成ファイルを格納するために使用されます。

    • server フォルダは、サーバー証明書を格納するために使用されます。

  2. conf ディレクトリに openssl.conf ファイルを作成します。

    vim /home/ca/conf/openssl.conf

    openssl.conf ファイルには、次の情報が含まれています。

     [ ca ]
     default_ca = foo
     [ foo ] 
     dir = /home/ca
     database = /home/ca/index.txt
     new_certs_dir = /home/ca/newcerts
     certificate = /home/ca/private/ca.crt
     serial = /home/ca/serial
     private_key = /home/ca/private/ca.key
     RANDFILE = /home/ca/private/.rand
     default_days = 365
     default_crl_days= 30
     default_md = 
    sha256
     unique_subject = no
     policy = policy_any
     [ policy_any ]
     countryName = match
     stateOrProvinceName = match
     organizationName = match
     organizationalUnitName = match
     localityName = optional
     commonName = supplied
     emailAddress = optional
  3. 秘密鍵を生成するには、次のコマンドを実行します。

    cd /home/ca
    sudo openssl genrsa -out /home/ca/private/ca.key

    次の図は、コマンドの出力を示しています。image

  4. 次のコマンドを実行し、プロンプトに従って必要な情報を入力して、Enter キーを押して csr ファイルを生成します。

    sudo openssl req -new -key /home/ca/private/ca.key -out /home/ca/private/ca.csr 
    

    image

    説明

    共通名には、Classic Load Balancer (CLB) インスタンスのドメイン名を指定します。

  5. crt ファイルを生成するには、次のコマンドを実行します。

    sudo openssl x509 -req -days 365 -in /home/ca/private/ca.csr -signkey /home/ca/private/ca.key -out /home/ca/private/ca.crt
    重要

    ca.crt ファイルは、CLB にアップロードする CA 証明書ファイルです。

  6. CA キーの初期シーケンス番号を設定するには、次のコマンドを実行します。 初期シーケンス番号は任意の 4 文字です。 この例では、CA キーの初期シーケンス番号は FACE です。

    echo FACE | sudo tee /home/ca/serial
  7. CA キーライブラリを作成するには、次のコマンドを実行します。

    sudo touch /home/ca/index.txt
  8. クライアント証明書を削除するための証明書失効リストを作成するには、次のコマンドを実行します。

    sudo openssl ca -gencrl -out /home/ca/private/ca.crl -crldays 7 -config "/home/ca/conf/openssl.conf"

    出力:

    Using configuration from /home/ca/conf/openssl.conf

クライアント証明書に署名する

  1. 次のコマンドを実行して、ca ディレクトリに users ディレクトリを作成し、クライアントキーを格納します。

    sudo mkdir /home/ca/users
  2. クライアントキーを作成するには、次のコマンドを実行します。

    sudo openssl genrsa -des3 -out /home/ca/users/client.key 2048
    説明

    キーを作成するときは、キーの漏洩が発生した場合に不正アクセスを防ぐためにパスフレーズを入力します。 同じパスフレーズを 2 回入力します。

  3. クライアントキーの csr ファイルを作成するには、次のコマンドを実行します。

    sudo openssl req -new -key /home/ca/users/client.key -out /home/ca/users/client.csr

    手順 2 で入力したパスフレーズと、プロンプトで要求されるその他の必要な情報を入力します。

    説明

    チャレンジパスワードはクライアント証明書のパスワードであり、クライアントキーとは異なります。

  4. CA キーを使用してクライアントキーに署名するには、次のコマンドを実行します。

    sudo openssl ca -in /home/ca/users/client.csr -cert /home/ca/private/ca.crt -keyfile /home/ca/private/ca.key -out /home/ca/users/client.crt -config "/home/ca/conf/openssl.conf"

    次の 2 つの操作を確認するよう求められたら、y を入力します。

    image

  5. 証明書を PKCS12 ファイルに変換するには、次のコマンドを実行します。

    sudo openssl pkcs12 -export -clcerts -in /home/ca/users/client.crt -inkey /home/ca/users/client.key -out /home/ca/users/client.p12

    プロンプトに従ってクライアントキーのパスフレーズを入力し、Enter キーを押します。 次に、クライアント証明書のエクスポートに使用するパスワードを入力します。 このパスワードは、クライアント証明書を保護するために使用され、クライアント証明書をインストールするときに必要になります。

  6. 生成されたクライアント証明書を表示するには、次のコマンドを実行します。

     cd /home/ca/users
     ls