筆記一下,最近研究怎麼設定 Windows 內建的防火牆(現在叫做「具有進階安全性的 Windows Defender 防火牆」 XD),讓他可以把所有外部進來的連線都擋掉,只允許自己信任的 IP 可以進來。
如果使用功能比較強大的第三方防火牆(Heresy 這邊之前比較常用 Comodo、官網),其實大多都有相對方便的方法,可以設定這樣的條件;一般都是設定把連入全擋掉,然後把信任的 IP 設成排外條件就可以了。
但是,Windows Firewall 在建立規則的時候,並沒有「例外條件」的功能可以設定,而根據官方的文件,防火牆內部的處理順序,又是先處理封鎖、再處理允許(參考);所以要滿足這邊的需求,也不能靠兩個條件的組合來達成。
稍微研究了一下,看來要達成這個目標,最簡單的方法,應該是使用一般的防火牆規則,再搭配「連線安全性規則」(IPSec)了。
這個方法在 Windows 10 或是 Windows Server 2019 上看來都是可以使用的。
目前設定的方法:
-
之後就一路下一步完成,只有最後要輸入名稱。
(這邊是取名成「BlockAll」) -
繼續下一步,設定名稱後完成規則的新增
理論上,這樣應該就可以只讓自己允許的 IP 連進來,其他的都擋掉了。
至於有沒有其他更好的設定方法…可能要再研究看看了。
Windows內建的防火牆,輸入連線是預設封鎖,輸出連線是預設允許,
所以只要選取左邊的「輸入規則」,然後點選右邊的「新增規則」,
並在領域的遠端IP位址,輸入(允許連入)IP即可,
但為什麼設定不能正常發揮作用呢?
在我的經驗中,
一般在設定之前,往往有手動執行過程式,防火牆會詢問是否允許,
允許後,防火牆自動新增規則較寬鬆造成的,
所以要去找到它並刪除(先由規則名稱找看看有沒有程式名),
可以試看看這作法。
讚讚
感謝提供建議,不過在現行方案確定沒問題的狀況下,應該不會再去測試其他方法。
讚讚