配置iptables防火墙
实验名称:配置iptables实现主机防火墙和网络防火墙
任务目标:配置iptables实现主机防火墙和网络防火墙
作为主机防火墙实现外部网络与主机之间的访问控制
作为网络防火墙实现外部网络与内部网络的访问控制
作为网关服务器实现网络地址转换(NAT)功能,实现内部网络通过网关主机共享访问外部网络
当然,linux内核所实现的网络防火墙功能远不止以上3种类型,根据不同的网络应用需要,通过iptables进行设置,linux系统可以相当灵活地满足常见的网络防火墙应用需求。
环境描述:以真机为客户端,虚拟机A为网关,虚拟机B为服务器。
虚拟机B网络设置为 eth0 IP: 172.16.0.125 MASK: 255.255.255.0 网关 172.16.0.1
虚拟机A网络设置为 第一块网卡为eth0,第二块为eth1,
设为桥接的网络配置如下
IP:192.168.0.1 MASK:255.255.255.0
设为VMnet2的为 IP:172.16.0.1 MASK:255.255.255.0
真机设为: IP:192.168.0.2 MASK:255.255.255.0 网关 192.168.0.1
。
网络拓扑:
实验操作过程及配置说明:
任务1:配置iptables实现主机防火墙和网络防火墙
步骤1:确认环境搭建成功
在linux的网络防火墙管理中,netfilter功能是由linux内核实现的,而iptables管理工具需要安装名为iptables的软件包,该软件包在RHEL4系统中默认安装的。
真机要和虚机B能相互PING通。
虚机A中必需开启IP转发,否则真机和虚机B是不通的。
这种方法重启网络或重启机器后就失效了。
也可以修改/etc/sysctl.conf文件。注意:是L不是1。
将等号后的0改成1,重启网络就会生效,重启机器后仍生效。
步骤2:在虚机B中启动Apache服务。
步骤3:在真机中验证可以访问虚机B的Apache服务
步骤4:在虚机B中用iptables添加默认策略。在真机中验证能否访问。(默认策略不允许数据包通过)
步骤5:在虚机B中添加策略允许客户端访问。在真机中验证能否访问。
步骤6:清空所有策略,以免影响后面的实验。
步骤7:确认在真机中现在可以访问Apache服务。
步骤8:在虚机A中设置默认策略,在真机中验证能否访问。
步骤9:在虚机A中添加策略允许真机访问虚机B。在真机中验证是否能访问。
步骤10:清空策略以免影响后面的实验。
任务2:配置iptables实现SNAT他DNAT
步骤1:在虚机B中创建一个验证用的PHP页面。/var/www/html/index.php
内容如下:
建好之后在真机访问这个页面,应该会显示两行内容,第一行为客户端IP地址,第二行为服务器IP地址。
http://172.16.0.125
CLIENT IP:192.168.0.2
SERVER IP:172.16.0.125
步骤2:在虚机A中运行iptables设置SNAT
为防止其它策略干扰,请确保虚机A和B中的其它策略已经全部清空。可用如下方法:
步骤3:在真机中通过IE访问index.php,查看并记录结果。(客户端变成了172.16.0.1因为做snat转换)
步骤4:清空刚才设置的策略
步骤5:在虚机A中运行iptables设置DNAT
步骤6:在真机中用IE访问虚拟机A,查看并记录结果。
转载于:https://blog.51cto.com/sjdwm/155856