Kijan pou netwaye otomatikman e an gwoup règ aksè IP ki gen kòmantè nan yon WAF lè l sèvi avèk API Cloudflare ak Python.

Yon fwa lis règ firewall ou a rive nan plizyè milye antre, efase yo manyèlman se tankou konte grenn sab nan dezè a—li pran anpil tan epi li fè mal.

Nan pwen sa a, script otomatik yo vin tounen yon sovtaj.

Poukisa règ netwayaj otomatik yo nesesè?

Lè n ap itilize Cloudflare kòm yon CDN ak WAF, nou souvan konfigire Règ Aksè IP pou bloke demann move yo.

Règ sa yo ka gen ladan anotasyon tankou "Bloke pa AI B" , "Wordfence Sync" , oswa "Adrès IP atakè li te ye a".

Kantite règ yo ap ogmante rapidman avèk tan.

Si yo pa netwaye yo, règ yo nan konsòl la ap anpile, sa ap afekte efikasite jesyon an.

Pou agrave sitiyasyon an, konsòl Cloudflare a pa ofri yon fonksyon "sipresyon an gwoup yon sèl klike pa kòmantè".

Sa vle di ou ka sèlman chwazi epi efase yo youn pa youn manyèlman, ki pa efikas ditou.

Solisyon

Pou rezoud pwoblèm sa a, nou ka itilize API REST Cloudflare la.

Lè w rele firewall/access_rules/rules Entèfas ak script yo kapab:

  • Jwenn pajinasyonTout règ anba domèn aktyèl la.
  • Kòmantè ki koresponnMo kle nan domèn nan.
  • Lanse yon demann DELETE otomatikmanRèg sib pou netwayaj an gwoup.

Metòd sa a pa sèlman efikas, men tou li evite erè imen.

Kijan pou netwaye otomatikman e an gwoup règ aksè IP ki gen kòmantè nan yon WAF lè l sèvi avèk API Cloudflare ak Python.
Kijan pou netwaye otomatikman e an gwoup règ aksè IP ki gen kòmantè nan yon WAF lè l sèvi avèk API Cloudflare ak Python.

Travay preparasyon

Anvan ou kòmanse ekri senaryo a, ou bezwen prepare plizyè paramèt kle.

1. Jeton API

Ale nan paj Jeton API Cloudflare yo pou kreye yon nouvo jeton.

Fòk ou akòde pèmisyon yo: Zòn → Sèvis Firewall → Modifye.

2. ID Zòn

Konekte sou konsole Cloudflare la, ale nan paj Apèsi sou domèn ou an , epi ou ka jwenn ID Zòn 32 chif la sou bò dwat la.

3. Enstale bibliyotèk depandans yo

Kouri nan PowerShell oubyen nan tèminal la:

python -m pip install requests

Sa ap pèmèt ou enstale li. requests Bibliyotèk la asire ke script la ka rele API a kòrèkteman.

Senaryo Python konplè

Anba la a se yon script Python ki pare pou itilize.

Anrejistre kòm cloudflare_clean.pyRanplase API_TOKEN 和 ZONE_ID OK.

import requests

API_TOKEN = "你的_API_TOKEN"
ZONE_ID = "你的_ZONE_ID"
TARGET_NOTE = "Blocked by AIB"

headers = {
    "Authorization": f"Bearer {API_TOKEN}",
    "Content-Type": "application/json",
}

def delete_matching_ip_rules_zone():
    page = 1
    deleted_count = 0

    while True:
        url = f"https://api.cloudflare.com/client/v4/zones/{ZONE_ID}/firewall/access_rules/rules?page={page}&per_page=100"
        response = requests.get(url, headers=headers)

        if response.status_code != 200:
            print(f"请求失败: {response.text}")
            break

        data = response.json()
        rules = data.get("result", [])
        if not rules:
            break

        for rule in rules:
            rule_id = rule.get("id")
            rule_value = rule.get("configuration", {}).get("value")
            rule_notes = rule.get("notes", "")

            if TARGET_NOTE in rule_notes:
                del_url = f"{url}/{rule_id}"
                del_res = requests.delete(del_url, headers=headers)
                if del_res.json().get("success"):
                    print(f"✅ 删除成功: {rule_value}")
                    deleted_count += 1

        result_info = data.get("result_info", {})
        total_pages = result_info.get("total_pages", 1)
        if page >= total_pages:
            break
        page += 1

    print(f"清理完成,共删除 {deleted_count} 条规则。")

if __name__ == "__main__":
    delete_matching_ip_rules_zone()

Kouri script la

Antre sa ki annapre yo nan tèminal la:

python /path/to/cloudflare_clean.py

Script la pral otomatikman chèche epi efase règ ki gen kòmantè espesifye yo.

Kesyon yo poze souvan ak Gid depanaj

1. Otorizasyon Zòn vs Otorizasyon Kont

  • Règ nivo zòn: aplike sèlman nan yon sèl domèn.
  • Règ nivo kont: Aplike nan tout kont lan; mande pou modifikasyon chemen API a. /accounts/{ACCOUNT_ID}/....

2. Rapò erè otantifikasyon

Si li parèt 403 Authentication errorSa a anjeneral akòz yon move konfigirasyon nan dimansyon pèmisyon an.

Asire w ke pèmisyon Jeton an gen ladan l Sèvis Pare-feu → Modifye.

3. Mekanis pajinasyon

API Cloudflare la retounen yon maksimòm de 100 règ alafwa.

Senaryo a pase result_info.total_pages Vire paj otomatik la asire yon eskanè konplè.

Poukisa Otomatizasyon se yon Chwa Envitab

Nan yon anviwònman pwodiksyon reyèl, kantite règ yo ka fasilman depase 5000.

Sipresyon manyèl pa sèlman pran anpil tan, men tou, li gen tandans pou omisyon.

Avèk script automatisation yo, ou kapab:

  • Règ ki ekspire yo efase chak jou.
  • Kenbe lis règ pare-feu ou pwòp.
  • Pou evite entèdi itilizatè lejitim yo pa erè.

Apwòch sa a fè jesyon sekirite sit entènèt la pi efikas.

Dokimantasyon ofisyèl Cloudflare a di klèman:

API a bay aksè pwogramatik pou jere règ pare-feu yo, tankou kreyasyon, lis ak sipresyon.
sous:Dokimantasyon API Cloudflare la

Sa endike ke API ofisyèl la te founi, men fonksyon sipresyon an pakèt la pa te aplike nan konsole a.

Konklizyon

Nan mond sekirite enfòmasyon an, efikasite se defans.

Lè nou te rele API Cloudflare a atravè script Python, nou pa sèlman simonte limitasyon konsole a, men nou te inogire tou yon epòk automatisation pou jesyon règ pare-feu yo.

Sa a se yon konbinezon teknoloji ak sajès , epi yon tandans inevitab nan operasyon sekirite sit entènèt.

Vrè mèt yo pa pase jounen yo ap klike ak sourit la nan konsole a; yo itilize kòd pou fè machin yo fè travay fatigan an pou yo.

Ann pran aksyon.

Fè règ pare-feu ou yo fonksyone tankou yon revèy presi, pa tankou yon melanj fatra dijital.

Esans sekirite a se lòd. Epi dèyè lòd la gen automatisation.

kòmantè

您的邮箱地址不会被公开。必填项已用*标注

Ki gen tèt