配置IP黑白名單
通過配置IP黑白名單過濾用戶請求,攔截或允許特定IP的訪問,可以有效限制訪問來源,解決惡意IP盜刷、攻擊等問題。
注意事項(xiàng)
該功能默認(rèn)關(guān)閉,IP黑名單與IP白名單二選一,不可同時(shí)配置。
配置IP黑名單后,黑名單中的IP請求仍可訪問到CDN節(jié)點(diǎn),但會(huì)被CDN節(jié)點(diǎn)拒絕并返回403狀態(tài)碼,CDN日志中仍會(huì)記錄黑名單中這些IP的請求記錄。
由于IP黑白名單功能采用的是七層HTTP協(xié)議的IP識別技術(shù),因此在惡意請求被CDN節(jié)點(diǎn)攔截的同時(shí),會(huì)產(chǎn)生少量的流量費(fèi)用,如果客戶端使用HTTPS協(xié)議訪問,還會(huì)產(chǎn)生HTTPS請求數(shù)費(fèi)用(因?yàn)閿r截惡意IP的時(shí)候,也同時(shí)消耗了CDN節(jié)點(diǎn)的處理資源)。
少數(shù)ISP在特定區(qū)域可能會(huì)分配私有IP地址給用戶端,導(dǎo)致CDN節(jié)點(diǎn)接收到的是用戶的私有IP地址。
說明私有IP地址范圍有以下三個(gè):
A類私有IP地址:10.0.0.0~10.255.255.255,子網(wǎng)掩碼:10.0.0.0/8
B類私有IP地址:172.16.0.0~172.31.255.255,子網(wǎng)掩碼:172.16.0.0/12
C類私有IP地址:192.168.0.0~192.168.255.255,子網(wǎng)掩碼:192.168.0.0/16
IP地址校驗(yàn)?zāi)J?/h2>客戶端與CDN節(jié)點(diǎn)建立連接時(shí),是否經(jīng)過代理服務(wù)器,會(huì)影響客戶端真實(shí)IP、客戶端與CDN節(jié)點(diǎn)建連IP。假設(shè)客戶端真實(shí)IP為10.10.10.10
,代理服務(wù)器IP為192.168.0.1
。
沒有經(jīng)過代理服務(wù)器:
用戶請求中x-forwarded-for請求頭值:10.10.10.10
。
客戶端真實(shí)IP(即x-forwarded-for請求頭攜帶的第一個(gè)IP)=客戶端與CDN節(jié)點(diǎn)建連IP=10.10.10.10
。
經(jīng)過代理服務(wù)器:
用戶請求中x-forwarded-for請求頭值:10.10.10.10,192.168.0.1
。
客戶端真實(shí)IP(即x-forwarded-for請求頭攜帶的第一個(gè)IP)=10.10.10.10
。
客戶端與CDN節(jié)點(diǎn)建連IP=代理服務(wù)器IP=192.168.0.1
。
客戶端真實(shí)IP(即x-forwarded-for請求頭攜帶的第一個(gè)IP)≠客戶端與CDN節(jié)點(diǎn)建連IP。
客戶端與CDN節(jié)點(diǎn)建立連接時(shí),是否經(jīng)過代理服務(wù)器,會(huì)影響客戶端真實(shí)IP、客戶端與CDN節(jié)點(diǎn)建連IP。假設(shè)客戶端真實(shí)IP為10.10.10.10
,代理服務(wù)器IP為192.168.0.1
。
沒有經(jīng)過代理服務(wù)器:
用戶請求中x-forwarded-for請求頭值:
10.10.10.10
。客戶端真實(shí)IP(即x-forwarded-for請求頭攜帶的第一個(gè)IP)=客戶端與CDN節(jié)點(diǎn)建連IP=
10.10.10.10
。
經(jīng)過代理服務(wù)器:
用戶請求中x-forwarded-for請求頭值:
10.10.10.10,192.168.0.1
。客戶端真實(shí)IP(即x-forwarded-for請求頭攜帶的第一個(gè)IP)=
10.10.10.10
。客戶端與CDN節(jié)點(diǎn)建連IP=代理服務(wù)器IP=
192.168.0.1
。客戶端真實(shí)IP(即x-forwarded-for請求頭攜帶的第一個(gè)IP)≠客戶端與CDN節(jié)點(diǎn)建連IP。
對于不同的IP地址校驗(yàn)對象,阿里云CDN的IP黑白名單功能支持三種IP地址校驗(yàn)?zāi)J健?/p>
IP地址校驗(yàn)?zāi)J?/b> | 說明 |
使用用戶的x-forwarded-for請求頭作為判斷依據(jù) | 該模式為默認(rèn)模式。該模式校驗(yàn)的是用戶請求中x-forwarded-for請求頭攜帶的左邊第一個(gè)IP,這個(gè)IP對應(yīng)客戶端真實(shí)IP。 如果客戶端與CDN節(jié)點(diǎn)之間有經(jīng)過代理服務(wù)器,那么客戶端與CDN節(jié)點(diǎn)建連使用的IP為代理服務(wù)器的IP,這種情況下使用“使用用戶的x-forwarded-for請求頭作為判斷依據(jù)”模式進(jìn)行IP黑白名單訪問控制可能會(huì)存在不準(zhǔn)確的情況。 |
使用真實(shí)建連IP作為判斷依據(jù) | 該模式校驗(yàn)的是客戶端與CDN節(jié)點(diǎn)之間建連使用的IP。 |
同時(shí)使用x-forwarded-for和真實(shí)建連IP作為判斷依據(jù) | 同時(shí)校驗(yàn)以下兩個(gè)IP地址信息:
|
操作步驟
登錄CDN控制臺。
在左側(cè)導(dǎo)航欄,單擊域名管理。
在域名管理頁面,找到目標(biāo)域名,單擊操作列的管理。
在指定域名的左側(cè)導(dǎo)航欄,單擊訪問控制。
單擊IP黑/白名單頁簽。
在IP黑/白名單區(qū)域,單擊修改配置。
根據(jù)界面提示,配置IP黑名單或白名單。
參數(shù)
說明
名單類型
IP名單類型如下:
黑名單
黑名單內(nèi)的IP無法訪問加速域名下的所有資源。
白名單
只有白名單內(nèi)的IP能訪問加速域名下的資源,白名單以外的IP均無法訪問。
規(guī)則
規(guī)則格式要求
支持輸入IP地址或者IP地址段。
輸入多個(gè)IP地址或者IP地址段時(shí),使用換行符分隔。
支持IPv4類型的地址或者地址段:
IPv4地址示例:
192.168.0.1
。IPv4地址段示例:
192.168.0.0/24
。不支持輸入通配網(wǎng)絡(luò)地址
0.0.0.0/0
,如果需要表示全量IPv4地址,可以用以下兩個(gè)子網(wǎng)來表示:0.0.0.0/1
128.0.0.0/1
支持IPv6類型的地址或者地址段:
IPv6地址示例:
FC00:AA3:0:23:3:300:300A:1234
。IPv6地址段示例:
FC00:0AA3:0000:0000:0000:0000:0000:0000/48
。地址中的英文字母不區(qū)分大小寫,即支持全大寫、全小寫或者大小寫混合,例如:
FC00:AA3:0:23:3:300:300A:1234
或fc00:0aa3:0000:0023:0003:0300:300a:1234
。不支持
: :
縮寫格式,例如:不支持FC00:0AA3::0023:0003:0300:300A:1234
。不支持輸入通配網(wǎng)絡(luò)地址
0000:0000:0000:0000:0000:0000:0000:0000/0
,如果需要表示全量IPv6地址,可以用以下兩個(gè)子網(wǎng)來表示:0000:0000:0000:0000:0000:0000:0000:0000/1
8000:0000:0000:0000:0000:0000:0000:0000/1
規(guī)則長度限制
規(guī)則輸入框最大支持輸入30 KB長度的字符,考慮到IP地址或者IP地址段的字符串長度有長有短,如果按平均長度來算,最多可配置大約700個(gè)IPv6地址/地址段或者2000個(gè)IPv4地址/地址段。如果您有更多的IP地址封禁需求,請開通DCDN安全防護(hù)功能(支持海量IP封禁服務(wù)),具體操作方法,請參見開通DCDN服務(wù)和配置區(qū)域封禁。
IP規(guī)則
支持選擇以下三種規(guī)則:
使用用戶的x-forwarded-for請求頭作為判斷依據(jù)
使用真實(shí)建連IP作為判斷依據(jù)
同時(shí)使用x-forwarded-for和真實(shí)建連IP作為判斷依據(jù)
如果x-forwarded-for請求頭沒有攜帶IP的話,將使用建聯(lián)IP。
規(guī)則條件
規(guī)則條件能夠?qū)τ脩粽埱笾袛y帶的各種參數(shù)信息進(jìn)行識別,以此來決定某個(gè)配置是否對該請求生效。
不使用:不使用規(guī)則條件。
選擇已配置的規(guī)則引擎,新增或修改規(guī)則引擎請參見規(guī)則引擎。
單擊確定,完成配置。
配置示例
白名單
規(guī)則:
192.168.2.0/24
結(jié)果:只有客戶端IP在
192.168.2.1
~192.168.2.254
地址范圍(包含192.168.2.1
和192.168.2.254
)時(shí),才能訪問該加速域名下的資源。黑名單
規(guī)則:
192.168.0.1
結(jié)果:當(dāng)客戶端IP為
192.168.0.1
時(shí),禁止訪問該加速域名下的所有資源。
常見問題
相關(guān)API
BatchSetCdnDomainConfig - 批量配置域名:調(diào)用BatchSetCdnDomainConfig進(jìn)行批量域名配置,通過設(shè)置ip_black_list_set和ip_allow_list_set分別指定IP黑名單和IP白名單。