WEB开发网
开发学院网络安全防火墙 用Linux防火墙构建DMZ 阅读

用Linux防火墙构建DMZ

 2006-07-04 12:35:53 来源:WEB开发网   
核心提示: 对于防火墙,原则之一就是默认禁止所有数据通信,用Linux防火墙构建DMZ(3),然后再打开必要的通信,所以在防火墙脚本的最初,通常的思路是,只允许外网访问DMZ中服务器所提供的特定服务,需要清空系统原有的规则,然后将INPUT、OUTPUT、FORWARD的默认规则设置为丢弃所有数据包

对于防火墙,原则之一就是默认禁止所有数据通信,然后再打开必要的通信。所以在防火墙脚本的最初,需要清空系统原有的规则,然后将INPUT、OUTPUT、FORWARD的默认规则设置为丢弃所有数据包。

对应的防火墙脚本片段如下: # Flush out the tables and delete all user-defined chains

/sbin/iptables -F

/sbin/iptables -X

/sbin/iptables -t nat -F

/sbin/iptables -t nat -X

# Drop every packet

/sbin/iptables -P INPUT DROP

/sbin/iptables -P OUTPUT DROP

/sbin/iptables -P FORWARD DROP

六种策略的实现。

1.内网可以访问外网

对应的防火墙脚本片段如下:

/sbin/iptables -t nat -A POSTROUTING -s [内网地址] -d [外网地址] -o eth0 -j SNAT --to [NAT的真实IP]

当数据从连接外网的eth0流出时,要将来自内网的数据包的源地址改成Internet上的真实IP,这样才能和外网的主机进行通信。“[NAT的真实IP]”表示分配给NAT用户的真实IP,有几个就写几个,以空格分开,但至少要写一个。

2.内网可以访问DMZ

对应的防火墙脚本片段如下:

/sbin/iptables -A FORWARD -s [内网地址] -d [DMZ地址] -i eth2 -j ACCEPT

以上命令允许所有来自内网、目的地为DMZ的数据包通过。

3.外网不能访问内网

对应的防火墙脚本片段如下:

/sbin/iptables -t nat -A PREROUTING -s [外网地址] -d [内网地址] -i eth0 -j DROP

以上命令将来自外网、去往内网的数据包全部丢弃。

4.外网可以访问DMZ

为了保护DMZ中的服务器,外网对DMZ的访问也要加以限制。通常的思路是,只允许外网访问DMZ中服务器所提供的特定服务,比如HTTP。

上一页  1 2 3 4  下一页

Tags:Linux 防火墙 构建

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接