

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 使用 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 - TLS1.0，TLS 1.1 以及 TLS 1.2
+ MySQL 5.7 - TLS1.0 和 TLS 1.1。只有 MySQL 5.7.21 及更新版本才支援 TLS 1.2。
+ MySQL 5.6 - TLS1.0
+ MySQL 5.5 - TLS1.0

## 先決條件
<a name="connecting-to-mysql-ssl-prerequisites"></a>
+ 將 MySQL 伺服器安裝在您要用於連接到資料庫的電腦上。如需詳細資訊，請參閱 MySQL 網站的 [MySQL 社群伺服器檔案下載](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/zh_tw/lightsail/latest/userguide/images/amazon-lightsail-mysql-ssl-connection.png)

1. 鍵入 **status**，並按下 **Enter**，以檢視您的連線狀態。

   如果在 SSL 旁邊看見 “Cipher in use is” 的值，則表示已加密連線。  
![MySQL 資料庫連線狀態。](http://docs.aws.amazon.com/zh_tw/lightsail/latest/userguide/images/amazon-lightsail-mysql-ssl-status.png)