tường lửa ứng dụng cho Mac
cập nhật · tác giả Anton Shakirov
hop hiện mọi chương trình lên mạng, cùng các địa chỉ nó đã tới, rồi cho bạn tắt bất kỳ chương trình nào trong số đó — cả chương trình, hoặc chỉ một địa chỉ của nó. nó chạy trên bộ lọc mạng mà macOS cung cấp đúng cho việc này, cùng loại mà LuLu và Little Snitch dùng, và không giải mã gì cả.

| what it is | app firewall inside hop, a menu bar app for macOS |
|---|---|
| price | free — no trial, no pro tier, no account |
| licence | MIT, source on GitHub |
| requires | macOS 14 or later, Apple silicon or Intel |
| works offline | yes |
| data sent anywhere | none |
ai cần một tường lửa theo từng chương trình
lý do thường gặp là nhận ra một chương trình nói chuyện với internet nhiều hơn mức cần thiết: một tiện ích gọi đến máy chủ giấy phép mỗi lần mở, một trợ lý nền đồng bộ thứ gì đó chẳng ai yêu cầu, một trò chơi kết nối tới các địa chỉ chẳng liên quan gì đến việc chơi. bản thân macOS không cho bạn biết chương trình nào đang kết nối ngay lúc này, hay tới đâu — tab mạng trong Activity Monitor chỉ hiện số byte đã truyền, không phải địa chỉ.
lý do khác là muốn đặt quy tắc từ trước: chặn một máy chủ cho chương trình bạn không hoàn toàn tin tưởng, hoặc cắt hẳn mạng của một chương trình đã cài nhưng không dùng — mà không phải đụng đến router, dns, hay một vpn sẽ ảnh hưởng đến tất cả cùng lúc.
nó hiện gì, và một cú nhấp làm được gì
mọi chương trình từng kết nối đều xuất hiện trong danh sách cùng các địa chỉ nó đã tới. một cú nhấp vào nhãn của chương trình cắt toàn bộ chương trình đó khỏi mạng; mở nó ra, và một địa chỉ riêng lẻ có thể bị chặn — chẳng hạn kiểm tra giấy phép, trong khi phần còn lại của lưu lượng vẫn tiếp tục đi qua. quy tắc địa chỉ luôn thắng quy tắc chương trình, nên một ngoại lệ không đòi hỏi bật lại toàn bộ công tắc.
quy tắc không cần chương trình phải kết nối trước. mọi ứng dụng đã cài đều có trong danh sách, dù đã từng lên mạng hay chưa, nên một chương trình có thể bị chặn trước cả khi nó có cơ hội thử.
- chặn cả chương trình, hoặc chỉ một địa chỉ của nó, chỉ bằng một cú nhấp
- đặt quy tắc trước cả khi chương trình từng kết nối — chọn từ danh sách hoặc thư mục Ứng dụng
- nạp danh sách địa chỉ từ tệp (mỗi dòng một địa chỉ, hoặc tệp hosts) và chặn cho mọi chương trình cùng lúc — một dòng cũng có thể ghi tên chương trình: `com.example.app license.example.com`
- lưu các quy tắc hiện tại của bạn trở lại tệp
- sắp xếp danh sách theo thời điểm xuất hiện, theo tên, hoặc gần đây trước
phần hướng dẫn đầy đủ — ý nghĩa từng nhãn và mục trong cửa sổ — nằm trong chỉ dẫn, bằng ngôn ngữ của bạn: chặn lưu lượng trong chỉ dẫn
bản thân bộ lọc hoạt động thế nào
hop làm điều này bằng bộ lọc mạng mà macOS cung cấp đúng cho việc này — một tiện ích mở rộng hệ thống, cùng loại mà LuLu và Little Snitch được xây trên đó. lần đầu mô-đun chạy, macOS sẽ hỏi bạn cho phép nó trong cài đặt hệ thống; đây là hộp thoại hệ thống chỉ xuất hiện một lần, mà hop không thể bỏ qua hay tự phê duyệt trước.
bộ lọc quyết định ở gói tin đầu tiên của một kết nối và không bao giờ nhìn vào bên trong: nó chặn cả một máy chủ, không bao giờ chặn một trang trên đó, vì đó là mức sâu nhất mà một bộ lọc hoạt động ở tầng kết nối có thể thấy. nếu bộ lọc từng dừng lại — một bản cập nhật macOS, một lần treo máy, bất cứ điều gì — internet vẫn hoạt động; không có gì bị chặn cho đến khi bộ lọc quay lại. tắt mô-đun trong cài đặt chỉ dừng đúng các lệnh chặn của bạn, không phải quyền truy cập mạng của Mac.
mô tả chính thức của Apple về khung tiện ích mở rộng mạng mà loại ứng dụng này được xây dựng trên đó (trang tiếng Anh): Network Extension, Apple Developer documentation
im lặng theo mặc định, và một câu hỏi tùy chọn
mô-đun bật theo mặc định và tự nó không chặn gì cả: không có quy tắc nào được đặt thì mọi kết nối đi qua y hệt như khi không cài hop. nó không mang theo danh sách trình theo dõi hay máy chủ quảng cáo để chặn sẵn, và sẽ không âm thầm bắt đầu cắt các chương trình — mọi lệnh chặn trong danh sách đều do chính bạn đặt.
hỏi về kết nối mới là một cài đặt riêng, mặc định tắt. khi bật, một thẻ ở góc trên bên phải sẽ hỏi về kết nối chưa có quy tắc nào bao phủ — chỉ cho địa chỉ đó, hay cả chương trình — thay vì để hop tự quyết định.
nó không phải là gì, và giới hạn ở đâu
hop không phải vpn và không định tuyến hay kiểm tra lưu lượng của bạn trên đường đi đến bất cứ đâu: một kết nối hoặc đi qua không đổi, hoặc bị từ chối ngay ở gói tin đầu tiên. nó không thể lọc theo url hay trang bên trong một kết nối đã mã hóa — https ẩn mọi thứ ngoài địa chỉ máy chủ, nên "chỉ chặn trang này thôi" là quy tắc mà loại bộ lọc này không thể diễn đạt, dù ở hop hay ở bất kỳ tường lửa ứng dụng nào được xây theo cùng cách.
nó cũng không phải trình chặn dns hay bộ lọc nội dung cho những gì một tab trình duyệt hiển thị: những thứ đó hoạt động bằng cách phân giải hoặc viết lại tên miền, một tầng khác với những đánh đổi khác. và nó không thu thập bất cứ điều gì nó thấy: danh sách địa chỉ và các quy tắc bạn đặt vẫn ở lại trên chiếc Mac này.
| bạn muốn gì | tường lửa của hop có làm được không | nên dùng gì thay thế |
|---|---|---|
| xem chương trình nào hôm nay đã lên mạng, và đi đến đâu | có — đó là toàn bộ màn hình đầu tiên | — |
| chặn hoàn toàn một chương trình khỏi mạng | có — một cú nhấp vào nhãn của nó | — |
| để chương trình vẫn tới được dịch vụ riêng của nó nhưng chặn một địa chỉ bên thứ ba mà nó gọi | có — chỉ chặn địa chỉ đó, phần còn lại giữ nguyên | — |
| chặn một trang hay mục trong một trang web nói chung là đáng tin | không — bộ lọc thấy máy chủ, không thấy url | một tiện ích mở rộng trình duyệt, thứ đọc được chính trang đó |
| giấu lưu lượng của bạn khỏi nhà mạng hay nhà cung cấp internet | không — hop không có máy chủ và không định tuyến gì cả | một vpn thực sự |
| chặn quảng cáo và trình theo dõi ở mọi nơi, kể cả trong trình duyệt | không theo mặc định — hop không mang theo danh sách chặn | trình chặn ở tầng dns hoặc tiện ích mở rộng trình duyệt |
frequently asked questions
- hop có thấy hay lưu lưu lượng của tôi không?
- không. bộ lọc quyết định ở gói tin đầu tiên của một kết nối và không bao giờ nhìn vào bên trong; hop không giải mã gì cả, và danh sách địa chỉ vẫn ở lại trên chiếc Mac này.
- đây có giống vpn không?
- không. hop không định tuyến gì cả và không có máy chủ. nó hoặc cho một kết nối đi qua không đổi, hoặc chặn nó ở gói tin đầu tiên — những gì xảy ra bên trong một kết nối được cho phép, nó không thấy cũng không chạm vào.
- có thể chặn một địa chỉ mà không chặn cả ứng dụng không?
- có. mở chương trình để xem các địa chỉ của nó, và chặn riêng bất kỳ địa chỉ nào — quy tắc địa chỉ luôn thắng công tắc của chính chương trình.
- chuyện gì xảy ra nếu bộ lọc mạng ngừng hoạt động?
- internet của bạn vẫn hoạt động. không có gì bị chặn cho đến khi bộ lọc quay lại, và tắt mô-đun chỉ dừng các lệnh chặn bạn đã đặt — không bao giờ ảnh hưởng đến quyền truy cập mạng của Mac.
- tôi có phải cho phép gì để nó hoạt động không?
- chỉ một lần. lần đầu mô-đun chạy, macOS sẽ yêu cầu cho phép bộ lọc mạng của hop trong cài đặt hệ thống — cùng một yêu cầu một lần mà bất kỳ tường lửa ứng dụng loại này cũng cần.
- nó có làm chậm internet không?
- bộ lọc chỉ cần nhìn vào gói tin đầu tiên của mỗi kết nối mới, không phải bản thân lưu lượng, nên các lượt truyền đang diễn ra không bị ảnh hưởng.
- nó khác gì với LuLu hay Little Snitch?
- cùng một ý tưởng, và bên dưới là cùng loại bộ lọc macOS. phiên bản của hop sống trên thanh menu cạnh các mô-đun khác thay vì là một ứng dụng riêng, và giữ nguyên giới hạn tương tự: chặn cả máy chủ, không bao giờ chặn trang, và không giải mã gì cả.
về tác giả

Anton Shakirovlàm ra hop
làm ra hop và mọi trang trên website này. 19 công cụ dưới một biểu tượng trên thanh menu, giấy phép MIT, mã nguồn mở. tự đọc và tự trả lời issue lẫn email.