Kumaha cara ngabersihkeun aturan aksés IP anu dikoméntaran sacara otomatis sareng dina jumlah anu sami dina WAF nganggo Cloudflare API sareng Python

Sakali daptar aturan firewall anjeun ngabareuhan nepi ka rébuan entri, ngahapusna sacara manual téh kawas ngitung butiran keusik di gurun pasir—nyita waktu jeung nyeri.

Dina tahap ieu, skrip otomatis janten penyelamat.

Naha aturan beberesih otomatis diperyogikeun?

Nalika nganggo Cloudflare salaku CDN sareng WAF, urang sering ngonpigurasikeun Aturan Aksés IP pikeun meungpeuk pamundut jahat.

Aturan-aturan ieu tiasa kalebet anotasi sapertos "Diblokir ku AI B" , "Singkronisasi Wordfence" , atanapi "Alamat IP panyerang anu dikenal".

Jumlah aturan bakal ningkat gancang kana waktu.

Lamun teu diberesihan, aturan dina konsol bakal numpuk, mangaruhan efisiensi manajemen.

Anu langkung parahna, konsol Cloudflare henteu nawiskeun fitur "hapus batch ku koméntar sakali klik".

Ieu hartina anjeun ngan ukur tiasa milih sareng ngahapus hiji-hiji sacara manual, anu teu efisien pisan.

Solusi

Pikeun ngungkulan masalah ieu, urang tiasa nganggo Cloudflare REST API.

Ku cara nelepon firewall/access_rules/rules Antarmuka sareng skrip tiasa:

  • Kéngingkeun paginationSadaya aturan dina domain ayeuna.
  • Koméntar anu cocogKecap konci dina widang éta.
  • Otomatis ngamimitian pamundut DELETEAturan target beberesih sacara bets.

Metoda ieu henteu ngan ukur efektif, tapi ogé ngahindarkeun kasalahan manusa.

Kumaha cara ngabersihkeun aturan aksés IP anu dikoméntaran sacara otomatis sareng dina jumlah anu sami dina WAF nganggo Cloudflare API sareng Python
Kumaha cara ngabersihkeun aturan aksés IP anu dikoméntaran sacara otomatis sareng dina jumlah anu sami dina WAF nganggo Cloudflare API sareng Python

Padamelan persiapan

Sateuacan anjeun ngamimitian nyerat skrip, anjeun kedah nyiapkeun sababaraha parameter konci.

1. Token API

Buka halaman Token API Cloudflare pikeun nyieun token anyar.

Idin kedah dipasihkeun: Zona → Layanan Firewall → Édit.

2. ID Zona

Lebet ka konsol Cloudflare, buka halaman Tinjauan domain anjeun , teras anjeun tiasa mendakan ID Zona 32 digit di sisi katuhu.

3. Pasang pustaka dependensi

Jalankeun dina PowerShell atanapi terminal:

python -m pip install requests

Ieu bakal ngamungkinkeun anjeun pikeun masangna. requests Perpustakaan mastikeun yén skrip tiasa nyauran API kalayan leres.

Skrip Python lengkep

Di handap ieu aya skrip Python anu siap dianggo.

Simpen salaku cloudflare_clean.pyGanti 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()

Jalankeun naskah

Lebetkeun ieu di handap dina terminal:

python /path/to/cloudflare_clean.py

Skrip bakal otomatis nyeken sareng ngahapus aturan anu ngandung koméntar anu ditangtukeun.

Patarosan anu Sering Ditaroskeun sareng Panduan Ngatasi Masalah

1. Zona vs Idin Akun

  • Aturan tingkat zona: ngan lumaku pikeun hiji domain.
  • Aturan tingkat akun: Larapkeun ka sakumna akun; meryogikeun modifikasi jalur API. /accounts/{ACCOUNT_ID}/....

2. Pelaporan kasalahan auténtikasi

Upami éta némbongan 403 Authentication errorIeu biasana kusabab setélan ruang lingkup idin anu salah.

Pastikeun yén idin Token ngawengku Layanan Firewall → Édit.

3. Mékanisme paginasi

API Cloudflare mulangkeun maksimal 100 aturan sakaligus.

Skripna lulus result_info.total_pages Pambalikan halaman otomatis mastikeun pamindaian anu lengkep.

Naha Otomatisasi mangrupikeun Pilihan anu teu tiasa dihindari

Dina lingkungan produksi anu nyata, jumlah aturan tiasa kalayan gampang ngaleuwihan 5000.

Ngahapus sacara manual teu ngan ukur nyéépkeun waktos, tapi ogé rawan kalalaian.

Ku skrip otomatisasi, anjeun tiasa:

  • Aturan anu parantos kadaluwarsa dihapus unggal dinten.
  • Jaga daptar aturan firewall anjeun tetep bersih sareng teratur.
  • Pikeun nyingkahan salah ngalarang pangguna anu sah.

Pamarekan ieu ngajantenkeun manajemen kaamanan situs wéb langkung efisien.

Dokuméntasi resmi Cloudflare nyatakeun sacara jelas:

"API ieu nyayogikeun aksés programatik pikeun ngatur aturan firewall, kalebet nyieun, ngadaptar, sareng ngahapus."
来源:Dokuméntasi API Cloudflare

Ieu nunjukkeun yén API resmi parantos disayogikeun, tapi fungsi ngahapus sacara angkatan teu acan diimplementasikeun dina konsol.

Kacindekan

Dina dunya kaamanan informasi, efisiensi nyaéta pertahanan.

Ku cara nyauran Cloudflare API ngalangkungan skrip Python, urang henteu ngan ukur ngungkulan watesan konsol, tapi ogé ngawilujengkeun jaman otomatisasi pikeun manajemen aturan firewall.

Ieu mangrupikeun kombinasi téknologi sareng hikmah , sareng tren anu teu tiasa dihindari dina operasi kaamanan situs wéb.

Ahli sajati teu méakkeun waktuna ngaklik beurit dina konsol; maranéhna ngagunakeun kode pikeun nyieun mesin ngalakukeun pagawéan anu ngabosenkeun pikeun maranéhna.

Janten hayu urang laksanakeun tindakan.

Jieun aturan firewall anjeun fungsina kawas jam anu tepat, lain tumpukan runtah digital anu pabalatak.

Inti tina kaamanan nyaéta tatanan. Sareng di tukangeun tatanan aya otomatisasi.

koméntar

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

Ngagulung ka luhur