在 Windows 中配置防火牆規則以阻止應用程式

  • 防火牆可讓您定義規則來控製或阻止特定應用程式的網際網路存取。
  • 在 Windows 系統上,您可以使用 Windows 防火牆或 ESET 等防火牆套件;而在 Mac 和 Linux 系統上,則有原生機制可以按應用程式或使用者群組過濾流量。
  • 對於 Web 應用程序,WAF 使用高級規則(預先定義和自訂),將正面和負面安全模型結合起來。
  • 不斷更新規則和策略,並輔以自動化和機器學習,是維持有效保護而不阻礙合法流量的關鍵。

窗戶防火牆

控制哪些程式連接到網路是許多使用者容易忽略的任務之一…直到出現問題為止。 自動更新導致功能失效、有煩人廣告的應用程式、讓孩子與陌生人聊天的遊戲,或發送比必要更多帳戶資料的軟體。 以上僅是幾個例子,說明了為什麼掌握防火牆規則以阻止應用程式非常重要。

好消息是,無論是在 Windows 系統中(例如,您可以學習如何…), Windows 11 中的阻止程式就像在 macOS 甚至 Linux 系統中一樣,您有多種方法可以 授權或阻止每個應用程式的網路流量無論是使用系統內建防火牆、第三方安全解決方案(如 ESET)、Web 應用程式防火牆 (WAF),或是透過操作 GNU/Linux 系統上的 iptables,我們都將以清晰實用的語言仔細詳細地進行探討。

為什麼在防火牆中阻止應用程式可以為您省去很多麻煩

防火牆充當過濾器,決定哪些流量可以進入,哪些流量可以離開。 你的團隊或網路成員,遵循你或系統本身定義的一套規則。這通常比喻為邊境管制:所有進出人員都要接受檢查,任何不符合標準的都會被拒於門外。

透過防火牆阻止某些應用程序,您可以 防止未經授權的連接,降低惡意軟體風險,並限制訊息發送。 您不想分享的內容。此外,您還可以阻止某些程式從外部伺服器請求資料或下載可能無關甚至危險的內容。

在日常生活中,這體現在非常具體的事物上: 停止可能破壞相容性的自動更新,並移除某些免費應用程式中嵌入的廣告。 或者,當您連接到安全性存疑的公共 Wi-Fi 網路時,可以阻止程式連線。只需幾個明確的規則,就能解決一系列令人困擾的問題和風險。

如果你家裡有孩子,防火牆也是個強大的幫手: 您可以封鎖來自某些遊戲或社群媒體平台的網路流量。 防止他們在無人監督的情況下與陌生人接觸。這並非全面的家長監護方案,但卻是保護措施的重要組成部分。

在專業和教育環境中,透過防火牆控制應用程式有助於… 防止資料洩露,縮小攻擊面,並限制使用未經授權的工具關鍵在於找到平衡:不是要屏蔽一切,而是只允許你真正需要的東西通過。

Windows 防火牆阻止應用程式

使用 Windows 防火牆阻止 Windows 10 和 11 中的應用程式

在 Windows 系統中,控制哪些程式可以存取 Internet 的最直接方法是使用… 具有進階安全性的 Windows Defender 防火牆雖然它的介面不是世界上最友善的,但它可以透過入站(傳入)和出站(傳出)規則進行非常精細的控制。

阻止特定程式存取互聯網 在 Windows 10 或 11 中,通常的做法是建立一個與應用程式執行檔關聯的出站規則。這樣,即使應用程式嘗試連接,防火牆也會在流量離開電腦之前將其阻止。

通常情況下,需要使用 .exe 檔案的完整路徑。 可執行檔通常位於「C:\Program Files」或「C:\Program Files (x86)」。接下來是應用程式資料夾名稱和主可執行檔。了解此路徑或使用檔案總管找到它,是正確建立規則的關鍵。

找到應用程式後,您可以定義一條規則,該規則 封鎖所有網路設定檔(網域、專用和公有網路)上的連線。這樣可以確保應用程式不會連接到您的家庭 Wi-Fi、工作網路或公共熱點,除非您變更該設定。

如何在 Windows 中建立退出規則以阻止應用程式

在 Windows 防火牆中,使用出站規則來阻止應用程式的經典工作流程是怎樣的? 它基於“高級安全”控制台,您可以在其中建立、編輯和刪除自訂規則。雖然乍看之下可能有點複雜,但操作幾次後就會變得非常熟練。

在這個遊戲機上, 「出站規則」控制您的電腦嘗試傳送給網路的內容。如果您在此處封鎖某個應用,該應用程式的所有出站流量都將被封鎖。您可以查看此列表,記住已封鎖的應用程式,並隨時取消封鎖。

配置規則時,您將看到選擇規則類型(在本例中為「程式」)、執行檔的路徑、要執行的操作以及適用該規則的網路設定檔的選項。 關鍵操作是「阻止連線」。這就注定了溝通最終會毫無結果。

最後一步是給這條規則一個易於辨識的名稱。 使用清晰一致的名稱可以避免很多麻煩。 一段時間後,你需要找到影響特定應用程式的規則,以便再次允許它。

窗戶防火牆

使用 Windows 防火牆暫時封鎖程式

有些時候你不想 永久阻止應用程式存取互聯網但只是暫時的:例如,當你在做測試時,當你在使用特定網路時,或當你和學生在教室裡。

Windows 防火牆沒有針對應用程式的「暫停」按鈕,但它確實允許您… 透過右鍵單擊來啟動和停用單一規則。實際上,這就像該應用程式的一個開關:當規則開啟時,連接被切斷;當規則關閉時,程式重新獲得對網路的存取權。

這項技術具有以下優點: 您無需刪除該規則或從頭開始重新建立它。 當您想要恢復封鎖功能時,只需根據您的需求切換「啟動規則」和「停用規則」即可。

如果您需要處理多個不同的應用程式和策略,最好保留一個較小的 內部文件記錄了哪些規則是暫時性的,哪些規則是永久性的。以免防火牆充斥著被遺忘的規則,而你也不知道這些規則是否仍然有效。

在 Windows 中建立允許的應用程式「白名單」。

除了封鎖之外,Windows 防火牆還允許您… 明確定義哪些程式擁有通過防火牆的明確權限這通常被稱為“白名單”,是逐一阻止案例方法的理想補充。

在「允許應用程式或功能通過 Windows Defender 防火牆」畫面上,您將看到程式和服務清單。 透過勾選或取消勾選「專用」和「公用」複選框,您可以決定它們可以在哪種類型的網路上進行通訊。完全取消勾選某個應用程式也可以作為快速阻止的方法。

如果您感興趣的課程不在清單中,您可以選擇以下選項: “允許其他應用程式”手動新增其可執行檔。雖然名稱暗示你會允許它,但一旦它被添加到清單中,你隨時可以取消勾選來阻止它。這有點違反直覺,但這就是介面的設計方式。

請記住 在公共網路上啟用應用程式意味著將其暴露於潛在的敵對環境中。例如咖啡館或飯店的Wi-Fi。對於處理敏感資料的服務,最好還是使用可信任的專用網路。

在 Windows 系統中切斷網路連線的其他方法

如果你想要的是完全斷開網路連接,而不需要那麼多細微差別, 飛行模式仍然是最強大、最快捷的快捷方式從操作中心啟動它後,所有連接(Wi-Fi、行動數據等)都會立即斷開,因此任何應用程式都無法與外界通訊。

對於 Windows 防火牆無法應付的情況,市面上存在著相當廣泛的生態系統。 適用於 Windows 的第三方防火牆其中許多都是免費的。這些工具通常提供更直覺的介面、嚮導式規則以及即時連接監控或預先設定檔等額外功能。

值得注意的是,糟糕的高階配置甚至比什麼都不做還要糟糕: 在不完全了解規則的影響的情況下建立、修改或刪除規則可能會留下安全漏洞或破壞關鍵應用程式。最好循序漸進,反覆測試,如果可能的話,最好備份一下設定。

最後,如果事情變得複雜或你開始注意到一些奇怪的行為,你總是可以選擇以下方法: 將防火牆恢復到預設狀態它相當於防火牆的「恢復原廠設定」按鈕,當您不知道哪個變更導致了哪個問題時,它非常有用。

ESET Windows

ESET Windows 產品(家用版和小型辦公室版)中的防火牆規則

如果您使用像以下這樣的安全套件: Windows 版 ESET, 你有一個 產品自備的整合式防火牆 這樣,您可以建立特定規則來允許或阻止應用程式通訊。根據配置的不同,此過濾層可以補充或取代 Windows 原生防火牆。

從程式的主視窗中,您可以訪問 按 F5 鍵進入進階設定在裡面,相關的部分是“網路存取保護”,其中顯示了“防火牆”部分和“規則”旁邊的“編輯”按鈕。

在那裡您可以找到現有規則清單以及以下選項: 點擊“新增”以建立新規則透過這種方式,您可以定義一個描述性名稱,選擇操作(允許、封鎖、請求等),指示受影響的應用程式以及流量方向。

展開“應用”欄位後,您將能夠 在系統中尋找,直到找到要控制的應用程式的可執行檔。在「方向」中,您可以決定該規則是適用於傳入連接、傳出連接還是兩者都適用,這根據您的目標提供了相當大的靈活性。

配置這些參數後,按「確定」按鈕確認,然後按不同的「接受」按鈕確認。 儲存變更並啟動規則。從那一刻起,ESET 防火牆將所選策略應用於該應用程式產生的所有流量,並與套件的其餘部分(威脅偵測、日誌記錄等)整合。

Windows 防火牆:網路設定檔、其他設定和安全

除了針對特定程式的規則外,Windows 防火牆還允許您進行調整 它的行為取決於你連接的網路類型。:網域(通常是企業環境)、私人(你的家、你的小型辦公室)或公共(開放或不受信任的網路)。

將網路標記為私有或公開的主要區別在於您所接受的暴露程度: 在專用網路中,您通常允許其他裝置看到您,甚至連接到您。而在公共網路上,你則希望盡可能不引人注目。

在每個設定檔中,您可以啟用或停用防火牆,並調整諸如以下選項: “阻止所有傳入連接,包括來自允許應用程式清單的連接”此框會將個人資料設定為極其嚴格的模式:任何嘗試進入的內容都會被拒絕,即使該應用程式被標記為允許。

還有一些快捷方式可以存取諸如以下功能: 允許特定應用程式通過防火牆、執行網路故障排除程式、設定阻止通知或進入「進階設定」。 修改入口、出口和連接安全規則。

如果設定過程變得複雜,或者您懷疑某些內容未經您同意而被更改,系統本身提供了一個選項: 將防火牆重設為預設值如果是在託管環境中,此操作將清除自訂規則並恢復到出廠設定或組織規定的策略。

WAF規則

WAF(Web應用程式防火牆)中的規則及其在保護線上服務中的作用

當我們談論運行在互聯網上的應用程式(網頁、API、SaaS 服務…)時,另一個關鍵因素就發揮作用了: WAF 或 Web 應用程式防火牆與系統防火牆不同,WAF 專注於檢查發送至 Web 應用程式的 HTTP/HTTPS 請求,並決定如何處理這些請求。

WAF 的規則描述 系統應該檢查每個請求中的哪些內容(標頭、參數、正文、IP 位址、路由等),啟動哪些條件,以及採取什麼動作? 當滿足上述條件時,就會觸發安全策略。安全策略是由若干條規則組成,這些規則經過組織和優先排序。

因為網頁應用程式不斷變化,而且 每天都會出現新的威脅。WAF策略不能一成不變。必須不斷更新和完善這套規則,以涵蓋新的路由、參數、服務和攻擊途徑。

WAF提供者通常包括 預先定義的「即用型」規則集基於已知攻擊的特徵、惡意 IP 清單、注入模式等。初始資料集越完整、越新,初始產品提供的保護等級就越高。

在高級解決方案中,這些規則由…提供。 全球威脅情報(惡意 IP 資訊流、蜜罐、欺騙網路、機器學習) 它可以即時偵測可疑行為,並自動調整安全策略以應對攻擊者。

WAF 規則中的元資料、條件、操作和優先權

WAF規則的設計通常包含以下幾個模組: 元資料、條件和操作理解這項方案有助於建立更清晰、更易於維護的規則。

在元資料中,您定義了一個 清晰的名稱、描述以及規則狀態(已啟用或已停用)這些資訊也會記錄在安全事件中,以便當觸發某些事件時,您可以快速了解應用了哪條規則以及原因。

這些條件表示「如果發生這種情況…」。 每個規則可以配置多個條件例如:如果路徑為 /login,方法為 POST,參數「user」包含可疑字符,且 IP 位址在特定範圍內,則該規則才會生效。只有當所有這些條件都滿足時,該規則才會生效。

操作是「執行另一項操作」。根據規則的類型,您可以 阻止請求、允許請求、重定向請求、修改請求頭、限制流量速率、統計請求次數或應用其他控制措施每類操作通常被歸類為不同類型的規則(重定向、安全性、重寫、速率限制等)。

在執行層面,WAF通常會建立一個 規則類型的優先順序例如,先處理重定向規則,然後是安全性規則,最後是重寫規則…並在每個規則群組中為規則分配內部優先權。這樣,當多個規則可能適用於相同請求時,您就可以控制哪些規則優先執行。

預定義規則、自訂規則以及正/負安全模型

像 Radware 這樣的供應商透過結合以下方式組織其 WAF 策略: 預定義規則(由製造商自動維護)與自訂規則(由客戶定義)為了在非常特定的環境下微調行為。

可以從以下途徑產生預定義規則 機器學習演算法、海量流量資料分析以及來自活躍攻擊者的資訊流這樣一來,保護措施就可以適應新的漏洞和攻擊模式,而無需管理員花費一整天的時間來調整配置。

另一方面,自訂規則是指您自己建立的規則。 根據應用程式的具體邏輯調整 WAF。:保護特定路由、對 API 端點套用配額、屏蔽特定國家/地區、控制回應交付、管理機器人等。

一個好的WAF政策結合了 負面安全模型(定義什麼是禁止的)和正面安全模型(定義什麼是允許的)傳統的防禦方法是依賴已知的惡意特徵碼和模式清單。而傳統的防禦方法是為每個參數定義有效的輸入類型,並阻止任何超出這些範圍的輸入,這對於阻止零時差攻擊至關重要。

如果僅使用肯定或否定規則進行手動操作,成本會非常高且容易出錯。這就是為什麼現代 Web 應用防火牆 (WAF) 會整合這些規則的原因。 自動化和自動策略生成觀察合法交易,分析正常流量,並根據這種行為提出「權限」規則。

WAF策略的自動產生和持續優化

為了最大限度地減少人工勞動和降低安全漏洞的風險,許多工作場所安全設施 (WAF) 都實施了以下措施 利用機器學習的自動策略產生機制該系統觀察合法流量的行為方式、參數通常具有的值、使用的路線以及使用方式,並據此建議或創建規則,將此模式描述為可接受的。

這種方法允許 調整積極的安全指標,而不必過度依賴人眼觀察。最大程度地減少可能導致應用程式暴露或過度阻礙正常用戶的配置錯誤。

同時,WAF進行定期審查至關重要。 活動日誌並產生持續優化建議其理念是在保持高安全性的同時減少誤報,從而使保護措施不會幹擾正常的流量。

機器學習、日誌審查和外部威脅情報的結合,使得WAF能夠發揮作用。 它會隨著您的應用程式及其周圍的攻擊生態系統而不斷發展。無需每隔幾個月就強迫您從頭開始重新制定政策。

Linux 系統中的應用程式屏蔽:iptables、使用者群組和目標過濾器

在Linux系統中,方法有所不同: 雖然沒有通用的圖形面板,但有一個基於 iptables 或 nftables 的強大的資料包過濾子系統。根據發行版和版本,您可以全域封鎖流量、按使用者封鎖流量、按使用者群組封鎖流量或按目標位址封鎖流量。

阻止特定程式運行的第一個想法可能是: 切斷對您使用的地址或網域的訪問要發現這些目的地,您有幾個選擇:在應用程式連接時使用 netstat(或 ss),或使用 dnsmasq 等服務以詳細模式運行來監控 DNS 請求。

一旦確定了域名,您可以透過新增以下類型的條目將它們重新導向到您自己的電腦: /etc/hosts 檔案中的“127.0.0.1 domain_to_block”因此,任何解析該網域的嘗試都將局限於本地,應用程式將無法聯繫到真正的伺服器。

如果您喜歡直接操作 IP 位址,您也可以建立 iptables 規則,例如: “iptables -I OUTPUT -s ip_a_block -j DROP”這些規則會丟棄所有發送到該位址的出站流量。為了確保這些規則在重新啟動後仍然有效,通常的做法是將它們新增至啟動腳本(例如 /etc/rc.local,位於「exit 0」行之前),或使用規則儲存/復原系統。

這種方法的缺點是: 堵塞影響整個系統任何需要與這些網域名稱或 IP 位址通訊的應用程式都會受到影響,而不僅僅是您感興趣的應用程式。此外,這些位址可能屬於您在其他情況下所需的共享服務。

在 Linux 系統中按使用者群組進行過濾,以僅阻止某些應用程式

更好的選擇是依靠 Linux 使用者權限和群組系統其想法是為「過濾」進程建立一個特殊群組,並告訴 iptables 阻止來自該群組中運行的進程的所有流量。

典型的流程大致如下:首先 您可以使用 groupadd 建立一個新群組(例如,「filtered」)。然後,您可以使用 adduser 命令將要控制的使用者(例如「學生」)新增至該群組,以便這些使用者也屬於該群組。

接下來,您需要定義 iptables 規則,例如 “iptables -A OUTPUT -m owner --gid-owner filtered -j REJECT”這告訴系統,任何由有效組被「過濾」的程序所產生的輸出資料包都應該被拒絕。

要在該特定群組下啟動程序,可以使用以下命令 “sg 已過濾 «programname»”這會將進程的主要分組變更為「已篩選」。從那時起,iptables 限制僅適用於這些進程,而不會影響系統的其餘部分。

這種方法允許 設計具有不同存取權限的不同群體這樣一來,某些應用程式就可以只向特定目的地或協定發送流量,而其他流量則會被完全阻止。這在教育或共享環境中尤其有用,因為在這些環境中,多個使用者共享一台計算機,而您需要將流量限制在特定工具範圍內。

當您將此技術與域名和連接埠過濾結合使用時, 您可以針對每種使用場景建立非常精確的策略。但代價是管理上的複雜性增加,以及需要對每項變更進行徹底測試。

相關文章:
了解如何使用 Windows 防火牆阻止程序

在 Google 中將其新增為首選來源