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

ApsaraDB RDS:カスタム証明書を使用した SSL 暗号化の有効化

最終更新日:Jul 31, 2026

ApsaraDB RDS for MySQL は、Alibaba Cloud マネージド証明書とカスタム証明書の両方を使用した SSL 暗号化をサポートしています。本トピックでは、OpenSSL を使用してカスタム証明書を生成し、お使いの RDS インスタンスで設定する方法について説明します。

前提条件

開始する前に、以下のものが揃っていることを確認してください。

  • OpenSSL がインストール済みであること

    • Linux: OpenSSL はプリインストールされています。対応は不要です。

    • Windows: slproweb.com から OpenSSL をダウンロードしてインストールしてください。

  • バージョン要件を満たす RDS インスタンス:

    エディション

    サポートされている MySQL バージョン

    RDS High-availability Edition

    MySQL 8.4、8.0、5.7、または 5.6

    RDS Cluster Edition

    MySQL 8.4、8.0、または 5.7

    RDS Basic Edition

    MySQL 8.4、8.0、または 5.7

  • (強制 SSL 暗号化の場合のみ必須) インスタンスは上記いずれかのエディションで MySQL 8.4、8.0、または 5.7 を実行しており、マイナーエンジンバージョンが 20241130 以降であること。

使用上の注意

  • SSL を有効にすると、CPU 使用率と読み取りおよび書き込みレイテンシが増加します。

  • SSL を有効にした後、既存の接続を閉じて再接続すると、暗号化が有効になります。

  • カスタム証明書の設定または変更、あるいは SSL の無効化を行うと、約 3 分間の再起動が発生します。これらの操作はオフピーク時間に行ってください。

  • 強制 SSL 暗号化が有効になっている場合、SSL 暗号化された接続のみが受け入れられます。SSL 暗号化されていない接続は拒否されます。

ステップ 1: カスタム証明書の生成

警告

秘密鍵にパスワードを追加しないでください。パスワードで保護された秘密鍵では、SSL を有効にできません。

次のコマンドは CentOS 構文を使用します。Windows では、同じ openssl コマンドを実行しますが、cpvim を使用する代わりに、ファイルのコピーとコンテンツの編集は手動で行ってください。

  1. 自己署名 CA 証明書 (server-ca.crt) とその秘密鍵 (server-ca.key) を生成します。-days の値で証明書の有効期間を設定します。この値は、ローテーションポリシー (例: 年次更新の場合は 365 日) に合わせて設定してください。

    openssl req -new -x509 -days 365 -nodes -out server-ca.crt -keyout server-ca.key -subj "/CN=root-ca"
  2. 証明書署名要求 (CSR) (server.csr) とサーバー秘密鍵 (server.key) を生成します。rm-bpxxxxx.mysql.rds.aliyuncs.com を、保護するエンドポイントに置き換えます。エンドポイントを確認するには、「インスタンスのエンドポイントとポートの表示と管理」をご参照ください。カスタム証明書は、単一のエンドポイントを保護します。

    Parameter

    Description

    Example

    Country Name

    Two-letter ISO country code

    CN

    State or Province Name

    Province

    ZheJiang

    Locality Name

    City

    HangZhou

    Organization Name

    Enterprise name

    Alibaba

    Organizational Unit Name

    Department name

    Aliyun

    Common Name

    Defined in openssl.cnf; leave blank

    Email Address

    Leave blank

    A challenge password

    Leave blank

    An optional company name

    Leave blank

    openssl req -new -nodes -text -out server.csr -keyout server.key -subj "/CN=rm-bpxxxxx.mysql.rds.aliyuncs.com"

    プロンプトが表示されたら、任意の証明書署名要求 (CSR) フィールドを設定します:

  3. CA 証明書で CSR に署名し、サーバー証明書 (server.crt) を生成します。

    openssl x509 -req -in server.csr -text -days 365 -CA server-ca.crt -CAkey server-ca.key -CAcreateserial -out server.crt
  4. ls を実行して、生成されたファイルを確認します:

    ファイル

    内容

    server.crt

    サーバー証明書

    server.key

    サーバー証明書の秘密鍵

    server-ca.crt

    自己署名 CA 証明書

    server-ca.key

    自己署名 CA 証明書の秘密鍵

    # ls
    server-ca.crt  server-ca.key  ca.srl  server.crt  server.csr  server.key

ステップ 2: 証明書のアップロードと SSL の有効化

カスタム証明書を設定すると、インスタンスのステータスが約 3 分間 [SSL 設定の変更中] に変わります。ステータスが [実行中] に戻るまで待ってから、処理を続行してください。
  1. ApsaraDB RDS コンソールにログインします。[インスタンス] ページで、インスタンスが所在するリージョンを選択し、インスタンス ID をクリックします。

  2. 左側のナビゲーションペインで、[データセキュリティ] をクリックします。表示されたページで、[SSL] タブをクリックします。

  3. [カスタム証明書] をクリックし、[無効] の横にあるスイッチをクリックします。

  4. 表示されるダイアログボックスで、以下のパラメーターを設定し、[OK] をクリックします。

    パラメーター

    説明

    [サーバー証明書]

    server.crt のすべての内容 (-----BEGIN CERTIFICATE----- から -----END CERTIFICATE----- まで) を貼り付けます。

    [サーバー証明書の秘密鍵]

    server.key の、 -----BEGIN PRIVATE KEY----- から -----END PRIVATE KEY----- までのすべての内容を貼り付けます。

    [強制暗号化]

    有効にすると、SSL 暗号化された接続のみが許可されます。マイナーエンジンバージョンが 20241130 以降の MySQL 8.4、8.0、または 5.7 でのみ利用可能です。

ステップ 3: SSL 経由でのインスタンスへの接続

SSL 経由で RDS インスタンスに接続できます。詳細については、「SSL 経由での ApsaraDB RDS for MySQL インスタンスへの接続」をご参照ください。

ステップ 4: (オプション) カスタム証明書の更新

証明書を更新すると、MySQL 8.0 を除き、再起動が発生します。この操作はオフピーク時間に行ってください。

[SSL] タブで [Update SSL] をクリックします。 表示されるダイアログボックスで、[サーバー証明書][サーバー証明書の秘密鍵] に更新された内容を貼り付け、[OK] をクリックします。

ステップ 5: (オプション) SSL 暗号化の無効化

SSL を無効にすると、再起動が発生します。この操作はオフピーク時間に行ってください。

[SSL] タブで、[有効] の横にあるスイッチをクリックします。

よくある質問

カスタム証明書の有効期限が近づいている場合はどうすればよいですか。

カスタム証明書の有効期間は、生成時に設定する -days の値によって定義されます。有効期限が切れる前に、システムから通知が送信されます。通知を受け取った際は、ワークロードへの影響を防ぐため、速やかに証明書の有効期間を更新することをお勧めします。