如果您的應用需要進行加密傳輸,您可以創建使用加密連接的HTTPS監聽來轉發來自HTTPS協議的請求。此功能支持在ALB實例與啟動SSL或TLS會話的客戶端之間進行流量加密。
前提條件
操作指引
本文為您提供以下兩種方式創建HTTPS監聽,您可以根據需求選擇其中一種方式創建HTTPS監聽。
創建HTTPS監聽:您可以根據業務定制高級配置功能,如雙向認證功能。
快速創建HTTPS監聽:您可以快速創建監聽,只需配置監聽協議、監聽端口、服務器證書、TLS安全策略和轉發的后端服務器組。
創建HTTPS監聽
步驟一:配置監聽
- 登錄應用型負載均衡ALB控制臺。
在頂部菜單欄,選擇實例所屬的地域。
選擇以下一種方法,打開監聽配置向導。
在實例頁面,找到目標實例,在操作列單擊創建監聽。
在實例頁面,單擊目標實例ID。在監聽頁簽,單擊創建監聽。
在配置監聽配置向導,完成以下配置,然后單擊下一步。
監聽配置
說明
選擇監聽協議
選擇監聽的協議類型。
本示例選擇HTTPS。
監聽端口
輸入用來接收請求并向后端服務器進行請求轉發的監聽端口,本示例輸入443。通常HTTP協議使用80端口,HTTPS協議使用443端口。
端口范圍為1~65535。
說明同一個ALB實例內,相同協議的監聽端口不能重復,且HTTP和HTTPS監聽端口互不重復。
監聽名稱
輸入監聽名稱。
標簽
設置標簽鍵和標簽值。
設置標簽后,您可以在監聽頁簽使用標簽篩選監聽。
高級配置
單擊修改展開高級配置。
啟用HTTP 2.0
選擇是否開啟HTTP 2.0。
連接空閑超時時間
指定連接空閑超時時間,默認取值范圍為1~60秒,如需提升配額,請
前往配額中心申請。
在超時時間內一直沒有訪問請求,負載均衡會暫時中斷當前連接,直到下一次請求來臨時重新建立新的連接。
說明該功能對使用HTTP 2.0的請求暫不生效。
連接請求超時時間
指定請求超時時間,默認取值范圍為1~180秒,如需提升配額,請前往配額中心申請。
在超時時間內后端服務器一直沒有響應,負載均衡將放棄等待,給客戶端返回HTTP 504錯誤碼。
數據壓縮
開啟該配置會對特定文件類型進行壓縮,關閉該配置則不會對任何文件類型進行壓縮。
目前,Brotli支持壓縮所有類型,Gzip支持壓縮的類型包括:
text/xml
、text/plain
、text/css
、application/javascript
、application/x-javascript
、application/rss+xml
、application/atom+xml
、application/xml
和application/json
。查找真實客戶端源IP
允許ALB從X-Forwarded-For頭字段中查找真實客戶端IP開關。開啟后,您需要設置可信IP列表。
可信IP列表設置為
0.0.0.0/0
:表示獲取X-Forwarded-For請求標頭中最左邊的地址,即真實客戶端源IP。可信IP列表設置為
proxy1 IP, proxy2 IP,..
:表示從右往左獲取第一個不在這個列表里面的值,并將其作為真實客戶端源IP。
使用場景說明:
當X-Forwarded-For請求標頭中包含多個IP地址時,例如
X-Forwarded-For: <client-ip-address>, <proxy1>, <proxy2>, …
,最左邊的地址是真實客戶端IP,如果您需要使用ALB轉發規則中基于SourceIp匹配和QPS(基于客戶端源IP限速)功能,您需要打開查找真實客戶端源IP開關,以便ALB從X-Forwarded-For頭字段中查找真實客戶端源IP。更多信息,請參見添加轉發規則。
附加HTTP頭字段
默認已開啟通過X-Forwarded-For頭字段獲取真實客戶端源IP,ALB會將真實客戶端源IP地址添加到HTTP頭字段,并將其傳遞給后端服務器。更多信息,請參見通過ALB獲取客戶端真實IP。
選擇您要添加的自定義HTTP頭字段:
添加
SLB-ID
頭字段獲取負載均衡實例的ID。添加
X-Forwarded-Proto
頭字段獲取實例的監聽協議。添加
X-Forwarded-Clientcert-subjectdn
頭字段獲取訪問負載均衡實例客戶端證書的所有者信息。添加
X-Forwarded-Clientcert-issuerdn
頭字段獲取訪問負載均衡實例客戶端證書的所發行者信息。添加
X-Forwarded-Clientcert-fingerprint
頭字段獲取訪問負載均衡實例客戶端證書的指紋取值。添加
X-Forwarded-Clientcert-clientverify
頭字段獲取訪問負載均衡實例客戶端證書的校驗結果。添加
X-Forwarded-Port
頭字段獲取負載均衡實例的監聽端口。添加
X-Forwarded-Client-srcport
頭字段獲取訪問負載均衡實例客戶端的端口。
開啟QUIC升級
選擇是否開啟QUIC升級,如果開啟QUIC升級,請在關聯的QUIC監聽下拉列表中選擇一個已創建的QUIC監聽。
如果您未創建QUIC監聽,單擊創建監聽,創建一個QUIC監聽。具體操作,請參見添加QUIC監聽。
ALB支持iQUIC和gQUIC,具體使用教程請參見使用QUIC協議提升音視頻業務訪問速度。
步驟二:配置SSL證書
添加HTTPS監聽,您需要配置SSL證書以確保您的業務受到加密保護并得到權威機構的身份認證。下表列出了ALB支持配置的證書及證書說明。
證書 | 說明 | 單向認證是否需要 | 雙向認證是否需要 |
服務器證書 | 用來證明服務器的身份。 您的瀏覽器用來檢查服務器發送的證書是否是由自己信賴的中心簽發的。更多信息,請參見什么是SSL證書。 | 是 您可在證書中心購買或上傳服務器證書,ALB從證書中心獲取該證書并使用。 | 是 您可在證書中心購買或上傳服務器證書,ALB從證書中心獲取該證書并使用。 |
CA證書 | 服務器用CA證書驗證客戶端證書的簽名。如果沒有通過驗證,拒絕連接。 說明 客戶端用戶在與服務器端通信時,客戶端證書用來證明客戶端用戶的真實身份。客戶端證書僅需要在客戶端安裝。 | 否 | 是 您可在證書中心購買或上傳CA證書,ALB從證書中心獲取該證書并使用。 |
如果您有多域名訪問或掛載多個服務器證書的需求,配置完HTTPS監聽后,您可以選擇為該HTTPS監聽添加擴展證書。具體操作,請參見添加擴展證書。
在配置SSL證書配置向導,選擇一個服務器證書。
如果您要開啟HTTPS雙向認證或者設置TLS安全策略,單擊高級配置右側的修改。
開啟高級配置中的啟用雙向認證。
選擇CA證書來源為阿里云簽發,在選擇默認CA證書下拉框中選擇一個CA證書。
如果沒有可選的CA證書,您可以在下拉框中單擊購買CA證書創建新證書。更多信息,請參見購買及啟用私有CA。
選擇CA證書來源為非阿里云簽發,在選擇默認CA證書下拉框中選擇一個CA證書。
如果沒有可選的自簽名CA證書,您可以在下拉框中單擊上傳自簽CA證書,在證書應用倉庫頁面,創建數據來源為上傳CA證書的倉庫,然后通過證書應用倉庫上傳自簽名根CA或自簽名子根CA證書。更多信息,請參見創建并管理證書應用倉庫。
說明僅標準版和WAF增強版的ALB實例支持雙向認證,基礎版ALB實例不支持雙向認證。
開啟雙向認證后,如果您后續需要關閉雙向認證,請參考以下步驟。
在實例頁面,單擊目標實例ID。
在監聽頁簽,單擊目標HTTPS協議監聽ID。
在監聽詳情頁簽,在SSL證書區域關閉雙向認證開關。
選擇TLS安全策略,然后單擊下一步。
如果沒有可選的TLS安全策略,您可以在下拉框中單擊創建TLS安全策略。
TLS安全策略包含HTTPS可選的TLS協議版本和配套的加密算法套件,更多信息,請參見TLS安全策略。
步驟三:選擇服務器組
在選擇服務器組配置向導,選擇服務器組,并查看后端服務器信息,然后單擊下一步。
步驟四:配置審核
在配置審核頁面,確認配置信息,單擊提交。
快速創建HTTPS監聽
選擇快速創建監聽,您只需配置監聽協議、監聽端口、服務器證書、TLS安全策略和轉發的后端服務器組。
- 登錄應用型負載均衡ALB控制臺。
在頂部菜單欄,選擇ALB實例的所屬地域。
在實例頁面,找到目標實例,單擊實例ID。
單擊監聽頁簽,在監聽頁簽單擊快速創建監聽。
在快速創建監聽對話框中,完成以下參數的配置,然后單擊確定。
常見問題
HTTPS支持哪些SSL協議版本?
TLS 1.0、TLS 1.1、TLS 1.2以及TLS 1.3版本,更多信息,請參見TLS安全策略。
后端服務器能否獲取客戶端訪問HTTPS監聽的協議版本?
可以。
HTTPS監聽訪問后端服務器的HTTP協議版本是什么?
客戶端請求的協議為HTTP 1.1或者HTTP 2.0版本時,七層監聽訪問后端服務器的HTTP協議版本是HTTP 1.1。
客戶端請求的協議為除HTTP 1.1和HTTP 2.0以外其他版本時,七層監聽訪問后端服務器的HTTP協議版本是HTTP 1.0。
ALB監聽證書為通配符證書(泛域名證書)時,需滿足哪些規則?
ALB實例添加HTTPS監聽時,若選擇的證書為通配符證書(泛域名證書)時,請注意以下規則。
選擇通配符證書時,ALB僅能夠識別包含一個通配符
*
、且通配符*
放置在最左邊的通配符證書。例如ALB可以識別*.example.com
和*test.example.com
,但不能識別test*.example.com
。通配符域名匹配規則:
通配符級別:通配符域名只能匹配相同級別的任意子域名。例如,
*.example.com
可以匹配test.example.com
,但不能匹配test.test.example.com
(因為該子域名和通配符域名級別不同)。IDNA支持情況:
若通配符證書中通配符是最左側標簽的唯一字符,那么IDNA標簽可與該通配符匹配,例如,
xn--fsqu00a.example.com
可以匹配*.example.com
。若通配符證書中通配符不是最左側標簽的唯一字符,那么IDNA標簽不可與該部分通配符匹配,例如,
xn--fsqu00atest.example.com
不能匹配*test.example.com
。
字符支持情況:通配符證書中的通配符
*
僅支持匹配數字0~9、大小寫字母和中劃線(-)。例如,*.example.com
可以匹配test.example.com
,但不能匹配test_test.example.com
。
相關文檔
ALB提供了豐富的高級轉發規則,具體操作請參見配置監聽轉發規則。
更多場景教程,請參見: