chuyển tiếp cổng pfctl trong Mac osx?


16
-A PREROUTING -s 10.0.10.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080
-A PREROUTING -s 10.0.10.0/24 -p tcp -m tcp --dport 443 -j REDIRECT --to-ports 8080
-A POSTROUTING -s 10.0.10.0/24 -o eth0 -j MASQUERADE
COMMIT

Đoạn mã trên là mã Ive được sử dụng để chuyển tiếp lưu lượng trong linux.

Bây giờ tôi cần phải làm điều tương tự trong Mac OSX. 10.8 nếu có vấn đề.

Vì vậy, đây là thỏa thuận.

Trước đây, tôi đã sử dụng proxy để kết nối với máy linux và sử dụng proxy đó, tôi có thể theo dõi lưu lượng truy cập bằng cách sử dụng mitmproxy

Bây giờ, trên mac, tôi đang sử dụng tính năng chia sẻ internet tích hợp và muốn sử dụng mitmproxy chỉ nghe nội dung từ cổng 8080.

bridge0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
    ether ac:de:48:81:1d:4a 
    inet 192.168.2.1 netmask 0xffffff00 broadcast 192.168.2.255
    Configuration:
        priority 0 hellotime 0 fwddelay 0 maxage 0
        ipfilter disabled flags 0x2
    member: en0 flags=3<LEARNING,DISCOVER>
             port 5 priority 0 path cost 0

Trên đây là "kết nối chia sẻ" mà tôi cần chuyển tiếp tôi tin.

Câu trả lời:


23

Giả sử tất cả yêu cầu lưu lượng truy cập web của bạn sẽ đến từ 192.168.2.0/24và giao diệnbridge0

Thêm quy tắc sau vào /etc/pf.conf

rdr pass on bridge0 inet proto tcp from 192.168.2.0/24 to any port http -> 127.0.0.1 port 8080
rdr pass on bridge0 inet proto tcp from 192.168.2.0/24 to any port https -> 127.0.0.1 port 8080

Mẹo nhanh

  1. Kiểm tra lỗi pf.conf

    pfctl -v -n -f /etc/pf.conf
    
  2. Áp dụng / Tải lại các quy tắc

    pfctl -f /etc/pf.conf
    

Đây là một cheat-sheet cho OS X pfctl.


3
pfdường như không được bật theo mặc định, vì vậy bạn có thể phải thêm -ecờ : pfctl -ef /etc/pf.conf.
Webthusiast

4
nó báo lỗi cú pháp
Hitesh Joshi

@HiteshJoshi: Tôi gặp vấn đề tương tự. Đối với tôi, việc di chuyển các đường giữa các dòng với "ndr-anchor" và "dummynet-anchor" đã cố định nó.
Albin
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.