SSL加密
為了提高鏈路安全性,您可以啟用SSL(Secure Sockets Layer)加密,并下載安裝CA證書到所需要的應用服務中。SSL在傳輸層對網絡連接進行加密,能提升通信數據的安全性和完整性,防止數據被第三方監聽、截取和篡改,但會增加網絡連接響應時間。本文為您介紹如何開啟、關閉SSL加密。
前提條件
AnalyticDB for MySQL集群需滿足以下條件:
產品系列為數倉版。
集群內核版本為3.2.1.0及以上版本。
說明查看和升級數倉版集群的內核版本,請參見查看和升級版本。
背景信息
SSL是Netscape公司所提出的安全保密協議,在瀏覽器和Web服務器之間構造安全通道來進行數據傳輸,采用RC4、MD5、RSA等加密算法實現安全通訊。國際互聯網工程任務組(IETF)對SSL 3.0進行了標準化,標準化后更名為安全傳輸層協議(TLS)。由于SSL術語更為常用,因此本文所述SSL加密實際指TLS加密。
AnalyticDB for MySQL推薦使用TLS 1.2協議進行安全通信。
注意事項
SSL的證書有效期為1年,請在1年內更新證書有效期,否則使用加密連接的客戶端程序將無法正常連接。
由于SSL加密的固有缺陷,開啟SSL加密會導致CPU使用率升高,建議您按業務實際需求開啟SSL加密。
開啟、關閉SSL加密和更新證書時,會重啟Controller節點,會導致連接閃斷,請在業務低峰期執行并確保您的應用有重連機制。
開啟SSL加密
登錄云原生數據倉庫AnalyticDB MySQL控制臺,在左上角選擇集群所在地域。在左側導航欄,單擊集群列表。在集群列表上方,選擇產品系列,然后單擊目標集群ID。
在左側導航欄,單擊數據安全。
在SSL配置頁簽下,打開SSL狀態后的開關。
在彈出的設置SSL對話框中選擇受保護的地址,并單擊確定。
重要AnalyticDB for MySQL支持加密內網鏈路和公網鏈路,但每個集群僅允許加密一條鏈路。您可以修改加密的鏈路,修改后,證書會自動更新,并同時重啟Controller節點。
若需加密公網鏈路,請確保集群已開通公網地址,否則無法對公網地址進行加密。更多操作,請參見申請公網地址。
待SSL加密開啟后,單擊下載證書。
下載的文件為壓縮包,包含如下三個文件:
.p7b格式文件:用于Windows系統中導入CA證書。
.pem格式文件:用于其他系統或應用中導入CA證書。
.jks格式文件:Java中的TrustStore證書存儲文件,密碼為apsaradb,用于Java程序中導入CA證書鏈。
在Java中使用JKS證書文件時,JDK7和JDK8需要修改默認的JDK安全配置,在應用程序所在主機的jre/lib/security/Java.security文件中,修改如下兩項配置:
jdk.tls.disabledAlgorithms=SSLv3, RC4, DH keySize < 224 jdk.certpath.disabledAlgorithms=MD2, RSA keySize < 1024
若不修改JDK安全配置,會報如下錯誤。其它類似報錯,一般也都由Java安全配置導致。
javax.net.ssl.SSLHandshakeException: DHPublicKey does not comply to algorithm constraints
更新SSL證書有效期
登錄云原生數據倉庫AnalyticDB MySQL控制臺,在左上角選擇集群所在地域。在左側導航欄,單擊集群列表。在集群列表上方,選擇產品系列,然后單擊目標集群ID。
在左側導航欄,單擊數據安全。
在SSL配置頁簽下,單擊更新有效期。
關閉SSL加密
登錄云原生數據倉庫AnalyticDB MySQL控制臺,在左上角選擇集群所在地域。在左側導航欄,單擊集群列表。在集群列表上方,選擇產品系列,然后單擊目標集群ID。
在左側導航欄,單擊數據安全。
在SSL配置頁簽下,關閉SSL狀態后的開關。
在彈出的關閉SSL對話框中,單擊確定。
相關API
API | 說明 |
開啟或關閉數倉版集群的SSL加密功能。 | |
查詢數倉版集群的SSL配置信息。 |