在Mac osx中的pfctl端口转发?

Modified on: Mon, 11 Feb 2019 07:00:03 +0800
-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

上面的代码是我用来转发linux流量的代码。

现在我需要在Mac OSX中做同样的事情。 10.8如果重要。

所以,这是交易。

之前,我使用代理连接到linux机器并使用该代理我能够使用mitmproxy监控流量

现在,在Mac上,我使用内置的互联网共享,并希望使用只能侦听来自端口8080的东西的mitmproxy。

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

以上是我需要转发的“共享连接”我相信。

作者:cripto

最佳答案

假设您的所有网络流量请求都来自192.168.2.0/24和接口bridge0

将以下规则添加到/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

快速提示

  1. 测试pf.conf是否存在语法错误

    pfctl -v -n -f /etc/pf.conf
    
  2. 申请/重新加载规则

    pfctl -f /etc/pf.conf
    
  3. 醇>

    这是备忘单

作者:,John Siu

相关问答

添加新评论