Làm cách nào để sử dụng pf / IceFloor để chặn kết nối gửi đến địa chỉ IP?


2

Tôi đang chạy một ứng dụng thường xuyên gọi điện về nhà và báo cáo nhiều thông tin hơn tôi thấy thoải mái. Tôi thường sẽ thêm tên máy chủ của máy chủ báo cáo vào / etc / hosts, nhưng ứng dụng không thực hiện tra cứu DNS và kết nối trực tiếp bằng IP. Tôi đang tìm cách sử dụng tường lửa PF tích hợp của Lion để đạt được điều này.

Tôi hiểu rằng một tiện ích thương mại như LittleSnitch sẽ biến điều này thành một nỗ lực tầm thường. Tuy nhiên, đây không phải là một giải pháp khả thi cho tôi. Tôi thấy giá yêu cầu của họ quá cao và tường lửa tích hợp sẽ có thể thực hiện được mánh khóe.

Tôi đã sử dụng IceFloor để sửa đổi cấu hình PF để chặn các kết nối đến rất thành công. Tuy nhiên, tôi đang gặp phải một số vấn đề về việc chặn các kết nối đi. Từ những gì tôi đã đọc, quy tắc sau đây phải chính xác:

block return-rst out quick on en0 inet proto tcp from any to xxx.xxx.230.191

Nó chỉ chặn các gói TCP tới IP đó và trả lời với gói RST. Nó dường như đang chặn các gói một cách chính xác, nhưng thay vì trả lại một gói RST, nó đang âm thầm thả các gói đi. Điều này khiến ứng dụng bị treo trong khi nó chờ kết nối hết thời gian chờ.

Là quy tắc này được viết chính xác để đạt được những gì tôi muốn đạt được? Có ai khác đã thử một cái gì đó như thế này bằng cách sử dụng PF?


1
Bạn có thể thiết lập tuyến ưa thích cho IP (suy nghĩ ngẫu nhiên). thấy man route. làm cho tất cả các kết nối đến IP cụ thể cố gắng định tuyến qua logiao diện.
Tên giả

Câu trả lời:


1

Bạn của tôi, nếu bộ nhớ phục vụ tốt cho tôi, bạn sẽ cần thêm

net.inet.tcp.icmp_may_rst=0

thành /etc/sysctl.conf, sau đó sửa đổi kernel đang chạy-

sudo sysctl -w net.inet.tcp.icmp_may_rst=0

Điều đó sẽ làm các trick. Nếu không có /etc/sysctl.conf tồn tại, đây là một phím tắt:

sudo echo “net.inet.tcp.icmp_may_rst=0” >> /etc/sysctl.conf
sudo chmod 644 /etc/sysctl.conf

Hy vọng rằng giải quyết sự không nhất quán với PF.

F.


Có ai cần phải vô hiệu hóa Bảo vệ toàn vẹn hệ thống để sửa đổi sysctl.conf không?
kccricket

Một câu trả lời không đủ điều kiện là câu trả lời của tôi. Tôi sẽ bị sốc nếu điều này là cần thiết.
Phanxicô từ
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.