為了提高鏈路安全性,您可以啟用SSL(Secure Sockets Layer)加密,並安裝SSL CA認證到需要的應用服務。SSL在傳輸層對網路連接進行加密,能提升通訊資料的安全性和完整性,但會同時增加網路連接回應時間。
前提條件
執行個體需為PolarDB-X且版本為5.4.10或以上,執行個體基本資料頁可查看執行個體版本資訊。
注意事項
SSL的認證有效期間為1年,請及時更新認證有效期間並重新下載配置CA認證,否則使用加密串連的用戶端程式將無法正常串連。
由於SSL加密的實現原理,啟用SSL加密會顯著增加CPU使用率,建議您僅在外網鏈路有加密需求的時候啟用SSL加密。內網鏈路相對較安全,一般無需對鏈路加密。
開啟或關閉SSL加密會重啟執行個體,請謹慎操作。
開啟SSL加密
在頁面左上方選擇目標執行個體所在地區。
在執行個體列表頁,單擊PolarDB-X 2.0頁簽。
找到目標執行個體,單擊執行個體ID。
- 在左側導覽列選擇 。
單擊SSL配置頁簽,開啟SSL配置的開關。
說明開啟SSL加密時,預設選擇內網地址為SSL受保護的地址。您也可以將受保護的地址修改為公網地址,詳情請參見修改SSL受保護地址。
在彈出的對話方塊中,單擊確定。
重要開啟或關閉SSL加密會重啟執行個體,建議在業務低峰期操作,並確保您的應用具備自動重連機制。
開通成功後,單擊下載CA認證。
下載的檔案為壓縮包,包含如下三個檔案:
.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 CA認證
開通SSL加密後,應用或者用戶端串連PolarDB-X時需要配置SSL CA認證。本文以MySQL Workbench和Navicat為例,介紹SSL CA認證安裝方法。其它應用或者用戶端請參見對應產品的使用說明。
MySQL Workbench配置方法
開啟MySQL Workbench。
選擇 。
啟用Use SSL,並匯入SSL CA認證。
Navicat配置方法
開啟Navicat。
在目標資料庫上單擊滑鼠右鍵,選擇編輯串連。
選擇SSL頁簽,選擇.pem格式CA認證的路徑。
單擊確定。
說明如果報
connection is being used
錯誤,是由於之前的會話未斷開,請關閉Navicat重新開啟。雙擊目標資料庫測試能否正常串連。
更新認證有效期間
更新有效期間操作將會重啟執行個體,建議在業務低峰期操作,並確保您的應用具備自動重連機制。
更新有效期間後需要重新下載及配置CA認證。
修改SSL受保護地址
在頁面左上方選擇目標執行個體所在地區。
在執行個體列表頁,單擊PolarDB-X 2.0頁簽。
找到目標執行個體,單擊執行個體ID。
- 在左側導覽列選擇 。
單擊SSL配置頁簽。
單擊設定SSL。
在彈出的對話方塊中,選擇目標地址為受保護的地址。
說明開通SSL時,預設選擇內網地址為SSL受保護的地址,您可以將其修改為公網地址。
修改SSL受保護地址操作將會重啟執行個體,建議在業務低峰期操作,並確保您的應用具備自動重連機制。
修改SSL受保護地址後需要重新下載及配置CA認證。
單擊確定即可。
關閉SSL加密
關閉SSL加密會重啟執行個體,建議您在業務低峰期操作,並確保您的應用具備自動重連機制。
SSL加密關閉後,資料庫訪問效能會有一定程度提升,但安全性上有削弱,故非安全環境下不建議關閉SSL加密。
在頁面左上方選擇目標執行個體所在地區。
在執行個體列表頁,單擊PolarDB-X 2.0頁簽。
找到目標執行個體,單擊執行個體ID。
- 在左側導覽列選擇 。
單擊SSL配置頁簽。
關閉SSL配置的開關。
在彈出的對話方塊中單擊確定即可。