本文以調用DDoS原生防護ListPolicy
接口查詢防護策略為例,為您介紹使用阿里云CLI調用DDoS原生防護的操作步驟。
前置概念
阿里云CLI(Alibaba Cloud Command Line Interface)是基于OpenAPI構建的通用命令行工具,您可以通過阿里云CLI實現自動化管理和維護DDoS原生防護。更多信息,請參見什么是阿里云CLI。
暫不支持使用阿里云CLI調用DDoS代播防護(DDoS原生防護
2023-07-01
版本OpenAPI)。若您需要產品提供相關支持,可提交工單反饋。
步驟一:安裝阿里云CLI
使用阿里云CLI前,您需要先安裝阿里云CLI。阿里云CLI為用戶提供了Windows、Linux和macOS三種操作系統下的安裝服務,請根據您使用設備的操作系統選擇對應的安裝服務。
Windows:在Windows上安裝阿里云CLI。
Linux:在Linux上安裝阿里云CLI。
macOS:在macOS上安裝阿里云CLI。
云命令行(Cloud Shell)中預裝了阿里云CLI,且會定期更新軟件版本。您可在云命令行中快速調試阿里云CLI命令。更多信息,請參見什么是云命令行。
步驟二:配置阿里云CLI
阿里云賬號(主賬號)擁有所有產品OpenAPI的管理和訪問權限,風險很高。強烈建議您創建RAM用戶(子賬號),并依據最小化權限原則授予權限,使用RAM用戶身份訪問OpenAPI。DDoS原生防護支持的權限策略,請參見DDoS原生防護系統權限策略參考及DDoS原生防護自定義權限策略參考。
使用阿里云CLI之前,您需要在阿里云CLI中配置身份憑證、地域ID等信息。阿里云CLI支持多種身份憑證,詳情請參見身份憑證類型。阿里云CLI支持使用RAM用戶的AccessKey信息配置AK類型身份憑證,具體操作步驟如下:
創建一個RAM用戶,并創建AccessKey,以便后續配置身份憑證使用。具體操作,請參見創建RAM用戶及創建AccessKey。
為RAM用戶授權。本文示例需授予RAM用戶只讀訪問DDoS原生防護的權限
AliyunYundunAntiDDoSBagReadOnlyAccess
。具體操作,請參見為RAM用戶授權。獲取可用的地域ID,以便后續配置身份憑證使用。阿里云CLI將使用您指定的地域發起OpenAPI調用,DDoS原生防護的可用地域請參見服務接入點。
說明使用阿里云CLI過程中,您可以使用
--region
選項指定地域發起命令調用,該選項在使用時將忽略默認身份憑證配置及環境變量設置中的地域信息。更多信息,請參見API命令可用選項。使用RAM用戶的AccessKey配置AK類型憑證,配置文件命名為
AkProfile
。具體操作,請參見配置示例。
步驟三:生成CLI命令示例
在OpenAPI門戶中,訪問ListPolicy調試地址。
在參數配置中輸入請求參數,單擊CLI示例頁簽,查看生成的CLI示例。
復制CLI示例或在云命令行中快速執行:
單擊運行命令按鈕,可喚出云命令行并快速完成命令調試。
單擊復制按鈕,將CLI示例復制到剪貼板中,可粘貼至本地Shell工具中運行。
說明復制CLI示例到本地Shell工具中進行調試時請注意參數格式。關于阿里云CLI命令參數使用格式的詳細信息,請參見參數格式說明。
OpenAPI門戶生成示例中會默認添加
--region
選項,復制命令到本地調用時阿里云CLI將忽略默認身份憑證配置及環境變量設置中的地域信息,優先使用指定的地域調用命令,您可根據需要對該選項進行刪除或保留。
步驟四:調用DDoS原生防護OpenAPI
示例一:獲取支持阿里云CLI調用的DDoS原生防護OpenAPI列表
以下示例將為您展示如何使用--help
選項獲取支持阿里云CLI調用的DDoS原生防護OpenAPI列表。更多信息,請參見API概覽。
執行命令。
aliyun ddosbgp --help
輸出結果。
示例二:查詢防護策略
以下示例將為您展示如何使用阿里云CLI調用DDoS原生防護的ListPolicy
接口,查詢適用于云服務器 ECS的防護策略。
執行命令。
aliyun ddosbgp ListPolicy --ProductType ecs
輸出結果。
{ "RequestId": "B4B379C2-9319-4C6B-B579-FE36831B09F4", "PolicyList": [ { "Id": "877afbdf-3982-4d36-9886-f043********", "Name": "test**", "Type": "l3", "Remark": "test", "AttachedCount": 0, "Content": { "BlackIpListExpireAt": 1716878000, "EnableIntelligence": true, "IntelligenceLevel": "default", "WhitenGfbrNets": false, "EnableDropIcmp": false, "RegionBlockCountryList": [ 11 ], "RegionBlockProvinceList": [ 2 ], "SourceLimit": { "Pps": 64, "Bps": 2048, "SynPps": 64, "SynBps": 2048 }, "SourceBlockList": [ { "Type": 3, "BlockExpireSeconds": 120, "EverySeconds": 60, "ExceedLimitTimes": 5 } ], "ReflectBlockUdpPortList": [ 123 ], "PortRuleList": [ { "Id": "8f3c3062-6c20-425d-8405-2bd1********", "Protocol": "udp", "SrcPortStart": 0, "SrcPortEnd": 65535, "DstPortStart": 0, "DstPortEnd": 65535, "MatchAction": "drop", "SeqNo": 1 } ], "FingerPrintRuleList": [ { "Id": "2c0b09cd-a565-4481-9acb-418b********", "Protocol": "udp", "SrcPortStart": 0, "SrcPortEnd": 65535, "DstPortStart": 0, "DstPortEnd": 65535, "MinPktLen": 1, "MaxPktLen": 1500, "Offset": 0, "PayloadBytes": "abcd", "MatchAction": "drop", "RateValue": 1000, "SeqNo": 1 } ], "EnableL4Defense": true, "L4RuleList": [ { "Name": "test**", "Priority": 1, "Method": "char", "Match": "1", "Action": "2", "Limited": 0, "ConditionList": [ { "Arg": "test", "Position": 0, "Depth": 32 } ] } ] } } ], "Total": 10 }
說明如果調用DDoS原生防護OpenAPI后返回錯誤,您需要根據返回的錯誤碼提示檢查傳入的請求參數及其取值是否正確。
您可以記錄下調用返回的RequestID或SDK報錯信息,通過阿里云OpenAPI診斷平臺進行自助診斷。