在 OS X 10.6 上您没有iptables
,那么完整的解决方案是什么,将发送到端口 80 的所有请求永久重定向到另一个端口,比如 8080?
它必须坚持不懈。
答案1
按照@bindbn 的回答使用 ipfw。这是一般的想法。
持久性:
将您的规则放入文件中:
/etc/ipfw.conf
在文件的最顶部添加
flush
确保任何行中都没有前导或尾随空格。
添加到/Library/LaunchDaemons/com.yourdomain.ipfw.plist:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.yourdomain.ipfw</string>
<key>Program</key>
<string>/sbin/ipfw</string>
<key>ProgramArguments</key>
<array>
<string>/sbin/ipfw</string>
<string>-q</string>
<string>/etc/ipfw.conf</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
重新启动,或者
launchctl load -w /Library/LaunchDaemons/com.yourdomain.ipfw.plist
第一次。
之后
launchctl load com.yourdomain.ipfw
答案2
使用 ipfw(阅读http://discussions.info.apple.com/message.jspa?messageID=10945451 http://discussions.apple.com/thread.jspa?messageID=10996939쳋)
ipfw add NUMBER fwd 127.0.0.1,8080 tcp from any to me 80