当前位置:Linux教程 - Linux - Linux IP Masquerade mini HOWTO 中译版(3)

Linux IP Masquerade mini HOWTO 中译版(3)

Linux IP Masquerade mini HOWTO 中译版(3)

4.4 IP Firewall Administration (ipfwadm) 这一节提供关於 ipfwadm 更深入的使用指引.

这是一个给在固定 PPP 位址之 PPP 连线後面的防火墙/伪装系统使用的设定.信赖(trusted) 界面为 192.168.255.1, PPP 界面已经修改过以避免犯错 .我分别列出每一个进入(incoming)以及送出(outgoing)界面来抓出变更递送路径(stuffed routing) 以及/或是伪装(masquerading)等等这些个 IP spoofing 技巧.同时任何没有明确允许的东西都是禁止的!


#!/bin/sh # # /etc/rc.d/rc.firewall, 定义防火墙配置,从 rc.local 执行. #
PATH=/sbin:/bin:/usr/sbin:/usr/bin
# 测试用,等待一段时间然後清除所有的防火墙规则. # 如果你希望防火墙十分钟之後自动关闭就取消下列几行的注解. # (sleep 600; # ipfwadm -I -f; # ipfwadm -I -p accept; # ipfwadm -O -f; # ipfwadm -O -p accept; # ipfwadm -F -f; # ipfwadm -F -p accept; # ) &
# 进入伪装闸道的设定,更新以及设定拒绝的策略(policy).事实上 # 预设的策略没什麽关系,因为原先就希望拒绝以及记录所有规则 ipfwadm -I -f ipfwadm -I -p deny # 伪装闸道的本地(local) 界面,区域网路里的机器,允许连往任何 # 地方 ipfwadm -I -a accept -V 192.168.255.1 -S 192.168.0.0/16 -D 0.0.0.0/0 # 伪装闸道的远端(remote)界面,声称是区域网路里的机器,IP spoofing # 拒绝 ipfwadm -I -a deny -V your.static.PPP.address -S 192.168.0.0/16 -D 0.0.0.0/0 -o # 伪装闸道的远端界面,任何来源,允许送往固定 (permanent) PPP # 位址 ipfwadm -I -a accept -V your.static.PPP.address -S 0.0.0.0/0 -D your.static.PPP.address/32 # 回授(loopback)界面是允许的 ipfwadm -I -a accept -V 127.0.0.1 -S 0.0.0.0/0 -D 0.0.0.0/0 # 捕捉所有规则,任何其它的进入方式都会被拒绝并记录.可惜没有 # 记录用的选项但这可以代替 ipfwadm -I -a deny -S 0.0.0.0/0 -D 0.0.0.0/0 -o
# 送出伪装闸道的设定,更新以及设定拒绝的策略(policy).事实上 # 预设的策略没什麽关系,因为原先就希望拒绝以及记录所有规则 ipfwadm -O -f ipfwadm -O -p deny # 本地界面,允许任何来源送出至区域网路 ipfwadm -O -a accept -V 192.168.255.1 -S 0.0.0.0/0 -D 192.168.0.0/16 # 远端界面送出至区域网路,stuffed routing ,拒绝 ipfwadm -O -a deny -V your.static.PPP.address -S 0.0.0.0/0 -D 192.168.0.0/16 -o # 区域网路的机器从远端界面送出,stuffed masquerading,拒绝 ipfwadm -O -a deny -V your.static.PPP.address -S 192.168.0.0/16 -D 0.0.0.0/0 -o # 区域网路的机器从远端界面送出,stuffed masquerading,拒绝 ipfwadm -O -a deny -V your.static.PPP.address -S 0.0.0.0/0 -D 192.168.0.0/16 -o # 任何其它远端界面送出的东西都是允许的 ipfwadm -O -a accept -V your.static.PPP.address -S your.static.PPP.address/32 -D 0.0.0.0/0 # 回授(loopback)界面是允许的 ipfwadm -O -a accept -V 127.0.0.1 -S 0.0.0.0/0 -D 0.0.0.0/0 # 捕捉所有规则,任何其它的送出方式都会被拒绝并记录.可惜没有 # 记录用的选项但这可以代替 ipfwadm -O -a deny -S 0.0.0.0/0 -D 0.0.0.0/0 -o
# 伪装闸道的转送设定,更新以及设定拒绝的策略(policy).事实上 # 预设的策略没什麽关系,因为原先就希望拒绝以及记录所有规则 ipfwadm -F -f ipfwadm -F -p deny # 伪装区域网路的机器从本地界面送出至任何地方的资料 ipfwadm -F -a masquerade -W ppp0 -S 192.168.0.0/16 -D 0.0.0.0/0 # 捕捉所有规则,任何其它的转送方式都会被拒绝并记录.可惜没有 # 记录用的选项但这可以代替 ipfwadm -F -a deny -S 0.0.0.0/0 Linux IP Masquerade mini HOWTO 中译版(3)
4.4 IP Firewall Administration (ipfwadm) 这一节提供关於 ipfwadm 更深入的使用指引.
这是一个给在固定 PPP 位址之 PPP 连线後面的防火墙/伪装系统使用的设定.信赖(trusted) 界面为 192.168.255.1, PPP 界面已经修改过以避免犯错 .我分别列出每一个进入(incoming)以及送出(outgoing)界面来抓出变更递送路径(stuffed routing) 以及/或是伪装(masquerading)等等这些个 IP spoofing 技巧.同时任何没有明确允许的东西都是禁止的!

#!/bin/sh # # /etc/rc.d/rc.firewall, 定义防火墙配置,从 rc.local 执行. #
PATH=/sbin:/bin:/usr/sbin:/usr/bin
# 测试用,等待一段时间然後清除所有的防火墙规则. # 如果你希望防火墙十分钟之後自动关闭就取消下列几行的注解. # (sleep 600; # ipfwadm -I -f; # ipfwadm -I -p accept; # ipfwadm -O -f; # ipfwadm -O -p accept; # ipfwadm -F -f; # ipfwadm -F -p accept; # ) &
# 进入伪装闸道的设定,更新以及设定拒绝的策略(policy).事实上 # 预设的策略没什麽关系,因为原先就希望拒绝以及记录所有规则 ipfwadm -I -f ipfwadm -I -p deny # 伪装闸道的本地(local) 界面,区域网路里的机器,允许连往任何 # 地方 ipfwadm -I -a accept -V 192.168.255.1 -S 192.168.0.0/16 -D 0.0.0.0/0 # 伪装闸道的远端(remote)界面,声称是区域网路里的机器,IP spoofing # 拒绝 ipfwadm -I -a deny -V your.static.PPP.address -S 192.168.0.0/16 -D 0.0.0.0/0 -o # 伪装闸道的远端界面,任何来源,允许送往固定 (permanent) PPP # 位址 ipfwadm -I -a accept -V your.static.PPP.address -S 0.0.0.0/0 -D your.static.PPP.address/32 # 回授(loopback)界面是允许的 ipfwadm -I -a accept -V 127.0.0.1 -S 0.0.0.0/0 -D 0.0.0.0/0 # 捕捉所有规则,任何其它的进入方式都会被拒绝并记录.可惜没有 # 记录用的选项但这可以代替 ipfwadm -I -a deny -S 0.0.0.0/0 -D 0.0.0.0/0 -o
# 送出伪装闸道的设定,更新以及设定拒绝的策略(policy).事实上 # 预设的策略没什麽关系,因为原先就希望拒绝以及记录所有规则 ipfwadm -O -f ipfwadm -O -p deny # 本地界面,允许任何来源送出至区域网路 ipfwadm -O -a accept -V 192.168.255.1 -S 0.0.0.0/0 -D 192.168.0.0/16 # 远端界面送出至区域网路,stuffed routing ,拒绝 ipfwadm -O -a deny -V your.static.PPP.address -S 0.0.0.0/0 -D 192.168.0.0/16 -o # 区域网路的机器从远端界面送出,stuffed masquerading,拒绝 ipfwadm -O -a deny -V your.static.PPP.address -S 192.168.0.0/16 -D 0.0.0.0/0 -o # 区域网路的机器从远端界面送出,stuffed masquerading,拒绝 ipfwadm -O -a deny -V your.static.PPP.address -S 0.0.0.0/0 -D 192.168.0.0/16 -o # 任何其它远端界面送出的东西都是允许的 ipfwadm -O -a accept -V your.static.PPP.address -S your.static.PPP.address/32 -D 0.0.0.0/0 # 回授(loopback)界面是允许的 ipfwadm -O -a accept -V 127.0.0.1 -S 0.0.0.0/0 -D 0.0.0.0/0 # 捕捉所有规则,任何其它的送出方式都会被拒绝并记录.可惜没有 # 记录用的选项但这可以代替 ipfwadm -O -a deny -S 0.0.0.0/0 -D 0.0.0.0/0 -o
# 伪装闸道的转送设定,更新以及设定拒绝的策略(policy).事实上 # 预设的策略没什麽关系,因为原先就希望拒绝以及记录所有规则 ipfwadm -F -f ipfwadm -F -p deny # 伪装区域网路的机器从本地界面送出至任何地方的资料 ipfwadm -F -a masquerade -W ppp0 -S 192.168.0.0/16 -D 0.0.0.0/0 # 捕捉所有规则,任何其它的转送方式都会被拒绝并记录.可惜没有 # 记录用的选项但这可以代替 ipfwadm -F -a deny -S 0.0.0.0/0 -D 0.0.0.0/0 -o 你可以使用 -I, -O 或是 -F 来控制到某特定节点的流量.记得这些规则集是由上往下扫描的而 -a 代表""附加(append)""到目前现有的规则集中所以任何限制必须在全域(global)规则之前出现.例如(没测试过) :-
使用 -I 规则.可能是速度最快的但是它只能阻止区域网路里的机器,防火墙本身仍然可以存取""禁止""的节点.当然你可能想允许这样的组合.


... start of -I rules ... # 拒绝并记录本地界面,区域网路里的机器通往 204.50.10.13 ipfwadm -I -a rej