自創(chuàng)建以來,Cloudflare 發(fā)布了許多強大的防火墻實用程序,例如 IP 規(guī)則、CIDR 規(guī)則、ASN 規(guī)則、國家/地區(qū)規(guī)則和 HTTP 用戶代理阻止等等,Cloudflare Firewall Rules 是最近添加的這些實用程序。這些規(guī)則結合了防火墻實用程序的使用方式,并為用戶提供了更大的靈活性和對防火墻工作方式的控制。
在本文中,您將了解有關防火墻的所有知識、如何開始在您的網(wǎng)站上實施和編輯 Cloudflare 防火墻規(guī)則,以及為什么安全性如此重要。
什么是 Cloudflare 防火墻規(guī)則?
Cloudflare 防火墻規(guī)則是一個靈活且直觀的框架,網(wǎng)站所有者可以使用它來過濾 HTTP 請求——讓您完全控制哪些請求能夠到達您的應用程序。
防火墻規(guī)則與現(xiàn)有的 Cloudflare 工具很好地集成,因為它們允許您將多種技術組合成一組內聚的規(guī)則。例如,您可以創(chuàng)建一個規(guī)則來阻止來自匹配特定模式的用戶的流量,而不必在許多地方使用三個或四個不同的規(guī)則來實現(xiàn)相同的結果。
它們還為您提供持續(xù)檢查站點流量并對威脅做出相應響應的優(yōu)勢。您可以定義表達式,告知 Cloudflare 要查看或不查看的內容,以及在滿足這些特定要求時應采取何種操作。
為什么您的網(wǎng)站需要防火墻?
Cloudflare 主要用于降低網(wǎng)頁加載速度并保護您的站點免受在線威脅。它還可以對抗垃圾郵件發(fā)送者、惡意軟件注入和 DDoS 攻擊。
大約 70% 的 WordPress 安裝容易受到黑客攻擊,因此更有必要使用 Cloudflare 的防火墻來保護您的網(wǎng)站免受不必要的威脅。您的網(wǎng)站需要防火墻的一些原因是:
- Cloudflare 利用三種不同類型的壓縮,JavaScript、CSS 和 HTML,通過刪除不需要的空格、換行符和不必要的字符來減小文件大小并提高加載速度。
- 隨著 HTTP/3 的引入,Cloudflare 支持通過單個 TCP 連接并行處理多個頁面元素以及推送技術和標頭壓縮。
- Cloudflare WAF 保護您的站點免受流行 CMS 工具(WordPress、Joomla 等)容易出現(xiàn)的許多漏洞的影響。Cloudflare WAF 有超過 145 條規(guī)則來保護您的站點免受所有類型的 Web 應用程序攻擊。
- Cloudflare 具有限速功能,有助于緩解 DOS 攻擊、暴力登錄嘗試和其他針對應用程序層的惡意意圖。速率限制功能允許您配置閾值、定義響應并深入了解網(wǎng)站。
如您所見,Cloudflare 不僅通過加速您的網(wǎng)站來改善 SEO,它還提供了一整套高級安全功能來保護您的網(wǎng)站免受攻擊。
Cloudflare 防火墻規(guī)則 – 匹配和操作
Cloudflare Firewall Rules 由兩個主要功能組成:Matching和Actions,前者可讓您定義過濾器以精確匹配您的流量,后者可讓您確定 Cloudflare 在您設置匹配過濾器后將采取的操作。
匹配
匹配可讓您過濾掉任何進入您網(wǎng)站的流量。例如,如果您想限制某些國家/地區(qū)、將訪問者重定向到特定位置的頁面或過濾掉特定的 IP 地址,那么您可以使用匹配規(guī)則來執(zhí)行此操作。
Cloudflare 引入的最重要的功能之一是已知機器人(cf.client.bot) 字段。它為您提供了 Cloudflare 批準的良好機器人列表,這些機器人是通過反向 DNS 查找獲得的。您會找到一份完整的機器人列表,這些機器人已獲得 Google、Yahoo、Bing、Linkedin、Apple 等網(wǎng)站的認可。
注意:由于“允許列表”功能已被刪除,建議您將 cf.client.bot 包含在允許規(guī)則中。這將防止 Cloudflare 防火墻規(guī)則無意中阻止好的爬蟲。
此外,Cloudflare Firewall Rules 還附帶一種算法,通過衡量 IP 的在線聲譽為 IP 提供威脅評分。威脅評分范圍從 0 到 100,分為以下幾類:
- 高——分數(shù)從 0 到 13;
- 中等——分數(shù)從 14 到 23;
- 低——分數(shù)從 24 到 48;
- Essentially Off – 分數(shù)大于 49。
但是,單獨設置匹配規(guī)則不會有太大效果。這就是行動派上用場的地方。
動作
設置匹配過濾器后,您可以指示 Cloudflare 防火墻規(guī)則應用標準 Cloudflare 操作(阻止、JavaScript 挑戰(zhàn)和挑戰(zhàn))以及新的允許操作。
- 阻止:用于阻止流量訪問您的 Web 應用程序。
- JavaScript Challenge:用于阻止不支持 JavaScript 的訪問者的流量,通常是機器人。
- 挑戰(zhàn)(驗證碼):用于設置驗證碼挑戰(zhàn)以阻止?jié)撛诘臋C器人。
- 允許:用于允許訪問者訪問您的 Web 應用程序。
Cloudflare 防火墻規(guī)則的三個實際應用示例
在本節(jié)中,您將找到三種使用儀表板設置 Cloudflare 防火墻規(guī)則的方法,以及它們可能有用的原因。
我們將涵蓋:
- 如何阻止特定國家/地區(qū)訪問您的網(wǎng)站
- 如何使用驗證碼讓您的 WordPress 網(wǎng)站更安全
- 如何防止不良機器人流量進入您的網(wǎng)站
注意:設置這些規(guī)則的另一種方法是使用API和Terraform。
首先,登錄您的 Cloudflare 儀表板。從那里,選擇您要為其設置 Cloudflare 防火墻規(guī)則的域名。

接下來,單擊頂部部分的防火墻,然后單擊防火墻規(guī)則。

此部分允許您設置新的防火墻規(guī)則、瀏覽和過濾現(xiàn)有規(guī)則、激活、停用、修改和刪除規(guī)則。要嘗試以下示例,請單擊創(chuàng)建防火墻規(guī)則。

示例 1 – 阻止除美國以外的所有國家
要阻止除一個國家以外的所有國家(在我們的示例中為美利堅合眾國),請按照以下步驟操作:
- 首先,為您的規(guī)則命名。
- 從字段下拉列表中,選擇國家/地區(qū)。
- 接下來,從運算符下拉列表中選擇不等于。
- 在值下拉列表中,選擇美國。
- 最后,選擇一個操作下拉菜單,選擇阻止,然后單擊右下角的藍色部署按鈕。

相反,如果您想阻止單個國家/地區(qū),請從“運營商”下拉列表中?選擇“等于” ,然后按照上述步驟進行操作。
表達式編輯器:
(ip.geoip.country ne “US”)
示例 2 – WordPress 安全
WordPress 安全性是網(wǎng)站所有者不會考慮太多的重要事情。每天,Google 都會將大約 10,000 多個惡意軟件網(wǎng)站列入黑名單,每周將大約 50,000 多個網(wǎng)站列入網(wǎng)絡釣魚黑名單。確保您的 WordPress 網(wǎng)站免受惡意軟件和威脅的侵害并避免您的網(wǎng)站被封鎖至關重要。
為什么 WordPress 安全性很重要?
不管你的網(wǎng)站是大是小,黑客都不管。無論哪種方式,他們都可以找到不同的方式來使用這些信息來對付您。他們通常會查找您的個人和財務信息,然后試圖利用收集到的信息對您和您的公司造成損害。
Top Writers Review營銷經(jīng)理 Mark Ronso說:“企業(yè)的聲譽可能會因網(wǎng)站被黑而受到嚴重損害。黑客通常會安裝惡意軟件或病毒以在后臺提取數(shù)據(jù),這可能會導致對您的業(yè)務失去信任,并導致客戶轉向競爭對手。”
因此,為了確保您的業(yè)務安全可靠,您需要通過 WordPress 插件或 Cloudflare 防火墻來保護您的網(wǎng)站。那么,哪個最好,兩者之間有什么區(qū)別?
WordPress 插件與 Cloudflare 防火墻 – 哪個更好?
許多人選擇安裝免費插件來處理他們網(wǎng)站的安全性,而不是必須使用像 Cloudflare 這樣的第三方工具——通常是因為它太復雜或為了省錢。實際上,Cloudflare 的安裝時間并不長,并且為您提供的功能比任何其他 WordPress 插件都要多。
以下是您應該了解的主要區(qū)別:
云火防火墻:
- Cloudflare 防火墻與 WordPress 等 CDN 無縫集成
- Cloudflare 的自動平臺優(yōu)化 (APO) 緩存您的網(wǎng)站并優(yōu)化資產,從而提高您網(wǎng)站的速度。
- Cloudflare 防火墻提供免費的 SSL 證書和 DNS 服務,以及強大的 DDoS 保護。
- 通過將不安全的 URL 動態(tài)地重寫為安全對應的 URL,提高網(wǎng)站的速度和性能。
- 免費開始
WordPress 安全插件:
- 定期掃描您的站點以查找惡意軟件代碼,并具有實時防火墻功能,可保護您的站點免受已知和未知威脅。
- 許多免費插件不提供 IP 阻止、國家/地區(qū)阻止和防止暴力登錄等功能。
- 一些 WordPress 插件允許您重命名登錄網(wǎng)關以避免潛在的攻擊。
- 您永遠不知道您放棄了插件開發(fā)人員的哪些權限。
考慮到所有因素,大多數(shù) WordPress 插件不會提高您網(wǎng)站的速度或提供 Cloudflare 防火墻提供的許多高級功能。推薦使用 Cloudflare 防火墻而不是免費的安全插件,以保護您的網(wǎng)站免受任何攻擊。
如何使用 Cloudflare 防火墻保護您的 WordPress 網(wǎng)站
重復上面提到的創(chuàng)建新防火墻規(guī)則并為其命名的過程,但這一次,單擊“編輯”表達式。

通過這樣做,您可以直接訪問表達式編輯器。在該字段中,粘貼以下內容:
((http.request.uri.path 包含“/xmlrpc.php”)或(http.request.uri.path 包含“/wp-login.php”)或(http.request.uri.path 包含“/wp- admin/”而不是 http.request.uri.path 包含“/wp-admin/admin-ajax.php”而不是 http.request.uri.path 包含“/wp-admin/theme-editor.php”))和ip.geoip.country ne “US”
之后,從Choose an action下拉列表中選擇Challenge (Captcha) ,然后單擊Deploy。

現(xiàn)在,您將為所有試圖訪問 WordPress xmlrpc.php、wp-login.php 和 /wp-admin(admin-ajax.php 和 theme-editor.php 除外)的美國境外訪問者設置驗證碼挑戰(zhàn),為了阻止?jié)撛诘暮诳驮L問您的 WordPress 網(wǎng)站。
如果您的登錄或管理 URL 已更改,請隨意編輯原始表達式以匹配。
示例 3 – 阻止惡意機器人流量
不良機器人被??指派進行許多欺詐行為和惡意活動,例如廣告詐騙、惡意軟件攻擊和數(shù)據(jù)盜竊。大約40% 的互聯(lián)網(wǎng)流量由不良機器人流量組成,在大流行期間, 2020 年 9 月至 2020 年 10 月期間,全球零售網(wǎng)站的不良機器人流量增加了 788%,導致旺季損失 8200 萬美元。
阻止不良流量有助于避免攻擊者試圖對您的站點發(fā)起 DDoS 攻擊。大多數(shù) DDoS 攻擊通過將大量流量引導至您的站點、使服務器過載并使其脫機來減慢您的站點。
這里的過程類似于前面的示例。唯一的區(qū)別是您應該從“選擇操作”下拉列表中選擇“阻止”并將以下內容粘貼到表達式編輯器中:
(http.user_agent 包含“Yandex”)或(http.user_agent 包含“muckrack”)或(http.user_agent 包含“Qwantify”)或(http.user_agent 包含“Sogou”)或(http.user_agent 包含“BUbiNG”)或(http.user_agent 包含“知識”)或(http.user_agent 包含“CFNetwork”)或(http.user_agent 包含“Scrapy”)或(http.user_agent 包含“SemrushBot”)或(http.user_agent 包含“AhrefsBot”)或(http.user_agent 包含“Baiduspider”)或(http.user_agent 包含“python-requests”)或(http.user_agent 包含“crawl”而不是 cf.client.bot)或(http.user_agent 包含“Crawl”而不是 cf .client.bot)或(http.user_agent 包含“bot”而不是 http.user_agent 包含“bingbot”而不是 http.user_agent 包含“Google”而不是 http.user_agent 包含“Twitter”而不是 cf.client.bot)或(http.user_agent 包含“Bot”而不是 http.user_agent 包含“Google”而不是 cf.client。 bot)或(http.user_agent 包含“蜘蛛”而不是 cf.client.bot)或(http.user_agent 包含“蜘蛛”而不是 cf.client.bot)

此規(guī)則將阻止包含字符串“crawl”、“bot”、“spider”和一些其他自定義用戶代理的用戶代理的機器人流量。
您可以按以下方式使用嵌套括號重寫相同的規(guī)則:
(http.user_agent 包含“Yandex”)或(http.user_agent 包含“muckrack”)或(http.user_agent 包含“Qwantify”)或(http.user_agent 包含“Sogou”)或(http.user_agent 包含“BUbiNG”)或(http.user_agent 包含“知識”)或(http.user_agent 包含“CFNetwork”)或(http.user_agent 包含“Scrapy”)或(http.user_agent 包含“SemrushBot”)或(http.user_agent 包含“AhrefsBot”)或(http.user_agent 包含“Baiduspider”)或(http.user_agent 包含“python-requests”)或((http.user_agent 包含“crawl”)或(http.user_agent 包含“Crawl”)或(http.user_agent 包含“bot” “而不是 http.user_agent 包含“bingbot”而不是 http.user_agent 包含“Google”而不是 http.user_agent 包含“Twitter”)或(http.user_agent 包含“Bot”而不是 http.user_agent 包含“Google”)或(http.user_agent 包含“Spider”)或(http.user_agent 包含“spider” ) 而不是 cf.client.bot)
如何測試您的防火墻規(guī)則是否有效
完成所有設置后,您應該檢查您的 Cloudflare 防火墻規(guī)則是否有效。為此,您可以返回防火墻的概述部分來訪問防火墻事件活動日志。在那里,您可以看到防火墻事件列表以及與它們相關的詳細信息。

請注意,如果您的流量不多,檢查您的防火墻規(guī)則可能需要一些時間。如果是這種情況,請等待幾天并監(jiān)控 Google Analytics 以確保在返回 Cloudflare 并檢查活動日志之前沒有異常。
要注意的最重要的事情是挑戰(zhàn)和阻止事件。
當挑戰(zhàn)和阻止事件出現(xiàn)在列表中時,花點時間仔細檢查它們,看看是否有任何好的機器人在它們不應該被阻止時被阻止,或者是否有任何已知的壞機器人通過了。您需要確保沒有正流量因為設置防火墻規(guī)則的錯誤而被拒絕訪問您的站點。