阻擋與防護
網路過濾器、新 App、威脅與追蹤器防護、阻擋清單,以及 App 的連線去向。
它連到哪裡
「連線」會在地球上顯示每條開啟中的連線,連向其位址註冊的國家,最忙碌的國家列在清單中,連線端點則在下方。按一下國家即可篩選。國家資料來自 App 內建的 DB-IP 免費資料庫,所以不會有任何位址離開你的 Mac。這是註冊國家:CDN 或 VPN 的位址顯示的是擁有者的國家,而不是伺服器所在的地方。
這是什麼?
點選連線、遭阻擋的嘗試、核准提示或 AI 代理程式網路記錄列上的 ⓘ,了解程序是什麼;Kilobat 有主機名稱時也會說明主機。它顯示正常流量、程序何時使用大量流量、阻擋是否安全及哪些功能會失效,並連結完整的程序和主機頁面。只有位址的連線會顯示其網路和國家,而不會猜測主機名稱。答案來自 App 內建的 Kilobat 資料庫,因此不會線上查詢。對於未知程序或主機,它會顯示 Kilobat 掌握的資訊:程式碼簽章、路徑以及位址所屬網路和國家。在開啟 Apple Intelligence 的 macOS 26 或更新版本上,它還會加入 Apple 裝置端模型產生的簡短最佳推測,並標明其性質;沒有資訊離開 Mac。免費。在終端機中使用 kilobat explain nsurlsessiond gateway.icloud.com;AI 代理程式使用 explain_connection MCP 工具。
阻擋與過濾
監控不需要開啟過濾。要強制執行規則,請在 Kilobat 中打開過濾設定,並在 macOS 詢問時核准延伸功能和內容過濾器。在目前的 macOS 上,延伸功能位於「系統設定」→「一般」→「登入項目與延伸功能」→「網路延伸功能」。
過濾只影響新的連線;既有的連線可能會持續到重新連線為止。如果某條規則中斷了重要的事情,請切換到「不受限」,或在「設定」中關閉過濾。
新 App:允許、詢問或阻擋
App 列表上方的膠囊按鈕決定「旅行」和「工作」如何處理沒有規則的 App。允許讓它們連線。詢問會攔住 App 的第一批連線,並打開一個視窗,顯示簽署者、路徑和它想連去哪裡;允許或阻擋一次,Kilobat 就會儲存規則。沒有回應的連線會在一分鐘後放棄,App 會再問一次。阻擋只讓你允許過的 App 連線。打開允許 Apple 軟體,macOS 服務和 Apple 的 App 就能直接通過、不必詢問。你的阻擋列表和連線規則在每種模式下都有效;Kilobat 沒在執行時,新 App 會被允許,而不是被攔住。
防護:威脅、追蹤器和代理程式守衛
開啟網路過濾器後,「設定」›「防護」會阻擋所有 App 連到已知的惡意目的地,並指出是哪個 App 在嘗試。Kilobat 每天一次從發布者把公開列表下載到你的 Mac(使用發布者提供的快取驗證資訊,所以列表沒變時不耗用流量),檢查每次下載,下載失敗時保留上一份可用的副本。關於你連線的任何資訊都不會被傳送到任何地方。
- 阻擋威脅(Pro,有 Pro 時預設開啟):來自 HaGeZi 的 Threat Intelligence Feeds(網域和 IP)和 HaGeZi Fake,以及透過 malware-filter 提供的 URLhaus 中的惡意軟體、網路釣魚和詐騙主機與位址。列表中的網域也涵蓋其子網域。
- 代理程式守衛(Pro,預設關閉):適用於 Claude Code、Codex、Cursor 和 Kilobat 認得的其他代理程式,以及它們透過 shell、npm、pip 或 curl 啟動的一切。已知威脅對代理程式一律會被阻擋;守衛還會阻擋貼上網站、檔案分享服務、通道和請求擷取服務,以及直接輸入指令中的公用裸 IP 位址,並切斷向這台 Mac 上從沒有代理程式用過的主機傳送超過 10 MB(可選 50 或 200)資料的連線。被切斷的上傳無法暫停等你確認:對方會逾時,所以 Kilobat 會阻擋它並告訴你,之後用「允許網站」就能讓它下次通過。
- 阻擋 App 中的追蹤器(免費,預設關閉):從 HaGeZi Multi Light、HaGeZi Multi Normal、OISD small 或 StevenBlack 的 hosts 中選一個列表。
誰優先。VPN 斷網保護最優先。其次是已知威脅和代理程式守衛,它們優先於所有允許規則和設定檔,包括「不受限」;只有區域網路、Apple 自己的服務、Kilobat 本身和你允許的網站永遠不會被阻擋。追蹤器排在你自己的允許規則之後:「不受限」、目的地規則或「允許網站」都能讓追蹤器通過。
在哪裡顯示。「連線」›「已阻擋的嘗試」會列出每次阻擋的類型(惡意軟體、網路釣魚、詐騙、已知威脅、追蹤器或代理程式守衛)、列表和代理程式,並提供允許網站。每個 App、主機每天只通知一次,例如「已阻擋:npm(由 Claude Code 啟動)試圖連到已知的惡意軟體主機」;追蹤器不會發通知。代理程式網路日誌會把這一列標記為「已阻擋」,「健康狀態」顯示「防護已開啟 · 263,000 個已知威脅 · 2 小時前更新」,選單只有在過去一小時內有東西被阻擋時才會顯示一列。
它看不到什麼。它不是防毒軟體,也不掃描檔案;請讓 XProtect 保持開啟。當 App 提供連線的名稱時,它就能知道;否則從加密交握中的伺服器名稱(TLS SNI)或 HTTP 的 Host 行得知,對於不帶名稱抵達的連線,Kilobat 會從最初幾個位元組讀取這些資訊。不帶名稱的 QUIC 連線,以及使用自己的加密 DNS、再依位址連線的 App,只能依位址檢查。另一條連線對同一位址用過的名稱只用於判斷威脅,從不用於追蹤器,因為一個 CDN 位址會服務許多網站。代理程式是沿著發起連線之程序的父程序往上查找來辨識的,所以代理程式啟動後交給 launchd 的伺服器,不再算是該代理程式的。
在終端機中:kilobat protect 查看狀態,以及 kilobat protect on --agents、kilobat protect on --trackers --list oisd-small、kilobat protect check downloads.example.com、kilobat protect allow example.com 和 kilobat protect update。代理程式讀取 check_host_reputation 和 get_protection_status;set_protection 會先詢問你。
為什麼獲准或遭阻擋?
在「連線 › 遭阻擋的嘗試」中的遭阻擋嘗試上,或「連線」中的開啟連線上選擇為什麼?,即可依過濾器檢查順序查看所有符合的 Kilobat 規則,首先顯示決定結果的規則:「由防護阻擋:login.example 在網路釣魚列表中(HaGeZi Threat Intelligence Feeds)」,然後顯示「也相符:Slack 在計量的 iPhone 網路上暫停,直到連接到不計量的網路」。每條規則都連結到更改位置,「稍後傳送」的暫緩提供「立即傳送」。
順序由過濾器決定:VPN 斷線保護、防護的威脅和 AI 代理程式防護、不受限設定檔、目的地規則(最新的優先)、阻擋列表、追蹤器,然後是 App 本身的規則:定時規則(你的規則,或由稍後傳送、通話模式或開始直播設定的規則)、網路流量預算、App 配額、已暫停的更新程式、目前設定檔中的 App 規則、詢問時給出的回答,最後是設定檔對沒有規則的 App 的預設處理。符合但排在後面的規則會列為「也相符」:更改決定結果的規則後,它可能改為決定結果。註記(例如允許網站繞過防護,或斷線保護允許本機網路通過)只說明,不決定結果。
對於遭阻擋的嘗試,過濾器會在阻擋時記錄規則,因此即使規則或 VPN 此後改變,答案仍反映當時的情況;此功能推出前的記錄,以及過濾器無法關聯到 App 的連線,則根據目前規則檢查,並註明這一點。獲准的連線始終根據目前規則檢查。只有過濾器阻擋的連線才會記錄,因此允許的流量不會產生這項負擔。
在終端機中:kilobat verdict api.example.com --app com.tinyspeck.slackmacgap;kilobat verdict --app com.example.App 查看 App 本身的規則;kilobat verdict --blocked 10 查看最近遭阻擋的嘗試,每條都附有更改規則的命令。AI 代理程式呼叫 explain_verdict,傳回與 --json 相同的 JSON。
阻擋網域和 IP
在 App 的開啟中連線上按右鍵,就能只對這個 App 或對所有 App 阻擋該主機。阻擋列表接受網域(包含子網域,*.example.com 也可以)、IP 位址和 CIDR 網段,也能搭配匯入的 hosts 列表。在終端機中:kilobat block-host ads.example.com。