

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# SSL/TLS を使用して Lightsail MySQL データベースに安全に接続する
<a name="amazon-lightsail-connecting-to-mysql-database-using-ssl"></a>

Amazon Lightsail によって SSL 証明書が作成され、プロビジョニング時に MySQL マネージド型データベースにインストールされます。証明書は認証機関 (CA) によって署名され、なりすまし攻撃から保護するために、SSL 証明書の共通名 (CN) としてデータベースエンドポイントが含まれます。

Lightsail によって作成された SSL 証明書は信頼されたルートエンティティであり、ほとんどの場合は使用できますが、アプリケーションが証明書チェーンを受け入れていない場合は使用できない可能性があります。アプリケーションが証明書チェーンを受け入れていない場合は、 AWS リージョンに接続している中間証明書の使用が必要になる場合があります。

マネージドデータベースの CA 証明書、サポートされる AWS リージョン、アプリケーションの中間証明書のダウンロード方法の詳細については、「[マネージドデータベースの SSL 証明書をダウンロード](amazon-lightsail-download-ssl-certificate-for-managed-database.md)」を参照してください。

## サポートされている接続
<a name="mysql-ssl-supported-connections"></a>

MySQL は以下のバージョンで安全な接続のため yaSSL を使用します。
+ MySQL バージョン 5.7.19 および 5.7 以前のバージョン
+ MySQL バージョン 5.6.37 および 5.6 以前のバージョン
+ MySQL バージョン 5.5.57 および 5.5 以前のバージョン

MySQL は以下のバージョンで安全な接続のため OpenSSL を使用します。
+ MySQL バージョン 8.0
+ MySQL バージョン 5.7.21 以降の 5.7 バージョン
+ MySQL バージョン 5.6.39 以降の 5.6 バージョン
+ MySQL バージョン 5.5.59 以降の 5.5 バージョン

MySQL マネージド型データベースは、Transport Layer Security (TLS) バージョン 1.0、1.1、1.2 をサポートしています。以下のリストでは、MySQL バージョンがサポートする TLS を示しています。
+ MySQL 8.0 - TLS 1.0、TLS 1.1、および TLS 1.2
+ MySQL 5.7 - TLS 1.0 と TLS 1.1 TLS 1.2 は、MySQL 5.7.21 以降でのみサポートされています。
+ MySQL 5.6 - TLS1.0
+ MySQL 5.5 - TLS1.0

## 前提条件
<a name="connecting-to-mysql-ssl-prerequisites"></a>
+ データベースへの接続に使用するコンピュータに MySQL サーバーをインストールします。詳細については、MySQL ウェブサイトの「[MySQL Community Server download](https://dev.mysql.com/downloads/mysql/)」を参照してください。
+ データベースの該当する証明書をダウンロードします。詳細については、「[マネージドデータベースの SSL 証明書をダウンロード](amazon-lightsail-download-ssl-certificate-for-managed-database.md)」を参照してください。

## SSL を使用して MySQL データベースに接続する
<a name="connect-to-your-mysql-database-using-ssl"></a>

SSL を使用して MySQL データベースに接続するには、以下の手順を実行します。

1. ターミナルまたはコマンドプロントウィンドウを開きます。

1. MySQL データベースのバージョンに応じて、以下のコマンドのいずれかを入力します。
   + MySQL 5.7 以降のデータベースに接続するには、以下のコマンドを入力します。

     ```
     mysql -h DatabaseEndpoint --ssl-ca=/path/to/certificate/rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u UserName -p
     ```

     コマンドを、以下のように置き換えます。
     + *DatabaseEndpoint* は、データベースのエンドポイントに置き換えます。
     + */path/to/certificate/rds-combined-ca-bundle.pem* は、データベースの証明書をダウンロードして保存したローカルパスに置き換えます。
     + *UserName* は、データベースのユーザー名に置き換えます。

     **例**:

     ```
     mysql -h ls-1c51a7c70a4fb55e542829a4e4e0d735ba42.czowadgeezqi.us-west-2.rds.amazonaws.com --ssl-ca=/home/ec2-user/rds-combined-ca-bundle.pem --ssl-mode=VERIFY_IDENTITY -u dbmasteruser -p
     ```
   + MySQL 6.7 以降のデータベースに接続するには、以下のコマンドを入力します。

     ```
     mysql -h DatabaseEndpoint --ssl-ca=/path/to/certificate/rds-combined-ca-bundle.pem --ssl-verify-server-cert -u UserName -p
     ```

     コマンドを、以下のように置き換えます。
     + *DatabaseEndpoint* は、データベースのエンドポイントに置き換えます。
     + */path/to/certificate/rds-combined-ca-bundle.pem* は、データベースの証明書をダウンロードして保存したローカルパスに置き換えます。
     + *UserName* は、データベースのユーザー名に置き換えます。

     **例**:

     ```
     mysql -h ls-1c51a7c70a4fb55e542829a4e4e0d735ba42.czowadgeezqi.us-west-2.rds.amazonaws.com --ssl-ca=/home/ec2-user/rds-combined-ca-bundle.pem --ssl-verify-server-cert -u dbmasteruser -p
     ```

1. プロンプトが表示されたら、前のコマンドで指定したデータベースユーザーのパスワードを入力し、**Enter** キーを押します。

   以下の例のような結果が表示されるはずです。  
![\[MySQL データベースの接続。\]](http://docs.aws.amazon.com/ja_jp/lightsail/latest/userguide/images/amazon-lightsail-mysql-ssl-connection.png)

1. 「**status**」と入力し、**Enter** キーを押して、接続のステータスを表示します。

   [SSL] の横で [Cipher in use is (使用中の暗号)] に値が表示されている場合、接続は暗号化されています。  
![\[MySQL データベースの接続ステータス。\]](http://docs.aws.amazon.com/ja_jp/lightsail/latest/userguide/images/amazon-lightsail-mysql-ssl-status.png)