全部產品
Search
文件中心

API Gateway:設定指定HTTPS加密套件

更新時間:Jun 09, 2026

HTTPS(超文本傳輸安全性通訊協定)是HTTP協議的安全版本,它通過SSL/TLS協議為傳輸的資料提供加密保護。HTTPS加密套件(Cipher Suite)是一組密碼編譯演算法和協議,用於在用戶端(如瀏覽器)和伺服器之間建立安全的通訊串連。為了進一步滿足您在使用網關時,對於安全性、相容性、效能最佳化以及其他合法合規的要求,雲原生API Gateway支援用戶端選擇指定的加密套件。

概述

一個HTTPS加密套件通常包括以下幾個組成部分:

  1. 金鑰交換演算法:用於安全地交換加密通訊的密鑰。常見的金鑰交換演算法包括RSA、Diffie-Hellman(DH)和ECDHE(橢圓曲線Diffie-Hellman)。

  2. 訊息認證碼(MAC)演算法:用於確保資料的完整性和認證,常見的MAC演算法包括HMAC-SHA256、HMAC-SHA384等。

  3. 對稱式加密演算法:用於加密資料本身性,常見的對稱式加密演算法包括AES(進階加密標準)、ChaCha20等。

使用限制

雲原生API Gateway版本為2.0.0及以上。

支援範圍

雲原生API Gateway支援的套件及對應支援TLS版本。

套件名稱

支援的TLS版本列表

ECDHE-ECDSA-AES128-SHA

TLS 1.0、TLS 1.1、TLS 1.2、TLS 1.3

ECDHE-ECDSA-AES256-SHA

TLS 1.0、TLS 1.1、TLS 1.2、TLS 1.3

ECDHE-RSA-AES128-SHA

TLS 1.0、TLS 1.1、TLS 1.2、TLS 1.3

ECDHE-RSA-AES256-SHA

TLS 1.0、TLS 1.1、TLS 1.2、TLS 1.3

AES128-SHA

TLS 1.0、TLS 1.1、TLS 1.2、TLS 1.3

AES256-SHA

TLS 1.0、TLS 1.1、TLS 1.2、TLS 1.3

ECDHE-ECDSA-AES128-GCM-SHA256

TLS 1.2、TLS 1.3

ECDHE-ECDSA-CHACHA20-POLY1305

TLS 1.2、TLS 1.3

ECDHE-RSA-AES128-GCM-SHA256

TLS 1.2、TLS 1.3

ECDHE-RSA-CHACHA20-POLY1305

TLS 1.2、TLS 1.3

AES128-GCM-SHA256

TLS 1.2、TLS 1.3

ECDHE-ECDSA-AES256-GCM-SHA384

TLS 1.2、TLS 1.3

ECDHE-RSA-AES256-GCM-SHA384

TLS 1.2、TLS 1.3

AES256-GCM-SHA384

TLS 1.2、TLS 1.3

操作步驟

  1. 登入雲原生API Gateway控制台

  2. 在左側導覽列,選擇域名,並在頂部功能表列選擇地區。

  3. 若尚未建立網域名稱,單擊添加網域名稱。若已建立網域名稱,可單擊目標網域名稱操作列下方编辑

    添加網域名稱

    1. 添加網域名稱頁面域名下拉式清單中選擇HTTPS協議。

    2. 單擊進階選項,在加密算法套件單選框中選擇自訂。在可選演算法列表中勾選需要設定的演算法,單擊创建

    編輯網域名稱

    1. 编辑域名頁面域名下拉式清單中選擇HTTPS協議。

    2. 單擊進階選項,在加密算法套件單選框中選擇自訂。在可選演算法列表中勾選需要設定的演算法,單擊确定

結果驗證

  1. 設定HTTPS網域名稱為指定加密套件,如本例將加密套件指定為:ECDHE-ECDSA-AES128-GCM-SHA256並設定成功。

  2. 指定加密套件為ECDHE-ECDSA-AES128-GCM-SHA256訪問。

    curl -iv --ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256' https://bantian.alijam.top/get --resolve "bantian.alijam.top:443:8.154.33.131"
  3. 指定套件ECDHE-ECDSA-AES128-GCM-SHA256請求正常返回成功,雙方協商使用加密套件 ECDHE-ECDSA-AES128-GCM-SHA256

    ~ curl -iv --ciphers 'ECDHE-ECDSA-AES128-GCM-SHA256' https://bantian.alijam.top/get --resolve "bantian.alijam.top:443:8.xxx"
    * Added bantian.alijam.top:443:8 xxx to DNS cache
    * Hostname bantian.alijam.top was found in DNS cache
    *   Trying 8.154.33.131:443...
    * Connected to bantian.alijam.top (8.154.33.131) port 443 (#0)
    * ALPN, offering h2
    * ALPN, offering http/1.1
    * Cipher selection: ECDHE-ECDSA-AES128-GCM-SHA256
    * successfully set certificate verify locations:
    *  CAfile: /etc/ssl/cert.pem
    *  CApath: none
    * TLSv1.2 (OUT), TLS handshake, Client hello (1):
    * TLSv1.2 (IN), TLS handshake, Server hello (2):
    * TLSv1.2 (IN), TLS handshake, Certificate (11):
    * TLSv1.2 (IN), TLS handshake, Server key exchange (12):
    * TLSv1.2 (IN), TLS handshake, Server finished (14):
    * TLSv1.2 (OUT), TLS handshake, Client key exchange (16):
    * TLSv1.2 (OUT), TLS change cipher, Change cipher spec (1):
    * TLSv1.2 (OUT), TLS handshake, Finished (20):
    * TLSv1.2 (IN), TLS change cipher, Change cipher spec (1):
    * TLSv1.2 (IN), TLS handshake, Finished (20):
    * SSL connection using TLSv1.2 / ECDHE-ECDSA-AES128-GCM-SHA256
    * ALPN, server accepted to use h2
    > GET /get HTTP/2
    > Host: bantian.alijam.top
    >
    < HTTP/2 200
  4. 指定套件ECDHE-ECDSA-AES256-GCM-SHA256請求異常,返回失敗。

    →  ~ curl -iv --ciphers 'ECDHE-ECDSA-AES256-GCM-SHA256' https://bantian.alijam.top/get --resolve "bantian.alijam.top:443:8.154.33.131"
    * Added bantian.alijam.top:443:8.154.33.131 to DNS cache
    * Hostname bantian.alijam.top was found in DNS cache
    *   Trying 8.154.33.131:443...
    * Connected to bantian.alijam.top (8.154.33.131) port 443 (#0)
    * ALPN, offering h2
    * ALPN, offering http/1.1
    * failed setting cipher list: ECDHE-ECDSA-AES256-GCM-SHA256
    * Closing connection 0
    curl: (59) failed setting cipher list: ECDHE-ECDSA-AES256-GCM-SHA256