利用Linux Ipables配置防火墙

一、实验目的

利用linux自带的iptables配置防火墙;完成如下配置:

  1. 阻止任何外部世界直接与防火墙内部网段直接通讯。
  2. 允许内部用户通过防火墙访问外部HTTP服务器,允许内部用户通过防火墙访问外部HTTPS服务器。
  3. 允许内部用户通过防火墙访问外部ftp服务器。

二、实验原理

IPTABLES相关语法与使用:

 

三、实验环境

三台linux RED HOT 6.5,一台作为外网,一台作为网关,一台作为内网。

利用Linux Ipables配置防火墙

外网:169.254.144.201

网管网卡1:169.254.42.101

网管网卡2:169.254.144.101

内网:169.254.42.201

 

四、实验步骤

1、配置网关

设置网卡为双网卡,设置具体模式

路径:虚拟机-设置-网络适配器-添加-网络适配器

利用Linux Ipables配置防火墙

这里的网络适配器共有两种,将vmnet8设置为连接外网的网卡,vmnet1设置为连接内网的网卡。

关闭VM虚拟机dhcp服务,设置子网信息

在虚拟网络编辑器中分别关闭DHCP服务

利用Linux Ipables配置防火墙

利用Linux Ipables配置防火墙

设置子网地址,子网掩码

利用Linux Ipables配置防火墙

利用Linux Ipables配置防火墙

这里的适配器子网地址需要与物理机相应网卡地址相对应,处于同一网段中。

利用Linux Ipables配置防火墙

挂载镜像

在虚拟机设置中,指定其所需的镜像文件

利用Linux Ipables配置防火墙

终端运行 mount dev/sr0 /mnt  ,实现挂载镜像

利用Linux Ipables配置防火墙

查看配置文件

终端输入ifconfig查看配置信息,这里的网卡物理信息后面会用到

利用Linux Ipables配置防火墙

cd /etc/sysconfig/network-scripts/  转到网卡配置文件下

利用Linux Ipables配置防火墙

这里目前只有一个网卡配置信息,复制生成另一个网卡配置信息

利用Linux Ipables配置防火墙

网卡配置信息重命名,这里为了和ifconifg查到的网卡名对应

利用Linux Ipables配置防火墙

修改网卡1(连接内网的)eth1配置文件内容

Vim编辑:i:进入编辑     esc:退出编辑     :wq保存并退出

输入vim ifcfg-eth1 进入vim编辑器修改ifcfg-eth1

利用Linux Ipables配置防火墙

修改网卡2(连接外网的)eth2配置文件内容

利用Linux Ipables配置防火墙

重启网络服务

输入service network restart重启网络服务,成功

利用Linux Ipables配置防火墙

设置转发功能

vim /etc/sysctl.conf  将转发由0改为1

利用Linux Ipables配置防火墙

利用Linux Ipables配置防火墙

此时网关已经可以登录互联网,若不能,再次输入iptables –F和 sentenforce 0,否,则证明上述操作有输错!

2、配置内网

设置网卡模式

①修改网卡为vmnet1

②指定并挂载镜像文件

利用Linux Ipables配置防火墙

查看并修改配置文件

①查看

利用Linux Ipables配置防火墙

利用Linux Ipables配置防火墙

②修改ifcfg-eth0为ifcfg-eth1,与网卡名一致

利用Linux Ipables配置防火墙

③修改ifcfg-eth1

利用Linux Ipables配置防火墙

Ipaddr后面修改为了169.254.42.201

重启网络服务

尝试ping网卡1

利用Linux Ipables配置防火墙

此时虚拟机也可以访问互联网,若不能则检查内网和网关的防火墙规则,或检查上述操作是否出错。

3、配置外网

设置网卡模式

利用Linux Ipables配置防火墙

查看并修改配置文件

利用Linux Ipables配置防火墙

利用Linux Ipables配置防火墙

重启网络服务

Service network restart

尝试ping通网卡2、ping通内网

利用Linux Ipables配置防火墙

利用Linux Ipables配置防火墙

此时外网也应可以访问互联网,若不能,输入iptables –F和setenforce 0 检查;

 

五、实验结果验证

根据策略设置防火墙规则:

阻止任何外部世界直接与防火墙内部网段直接通讯。

①未设置防火墙规则时,内网可以ping通“外网”、ping通物理机

②网关设置防火墙规则,禁止内网ping物理机(阻止物理机icmp包通过)

利用Linux Ipables配置防火墙

③这时内网可以ping通外网、ping不通物理机,证明数据包都是经过网关的,不能直接与内网通讯。

Ping物理机:

利用Linux Ipables配置防火墙

Ping外网:

利用Linux Ipables配置防火墙

允许内部用户通过防火墙访问外部HTTP服务器,允许内部用户通过。

①网关设置防火墙规则,阻止80端口通信

利用Linux Ipables配置防火墙

②这时内网上不了网

利用Linux Ipables配置防火墙

③证明内网访问外部http服务器都是通过防火墙(网关)的

防火墙访问外部HTTPS服务器。

①内网可以访问https服务器

利用Linux Ipables配置防火墙

②网关设置防火墙规则,阻止443端口通信

利用Linux Ipables配置防火墙

③此时内网无法再登录采用了HTTPs协议的网站

允许内部用户通过防火墙访问外部ftp服务器。

①网关设置防火墙规则,阻止20、21端口通信

利用Linux Ipables配置防火墙

②这时内网无法访问ftp服务器

利用Linux Ipables配置防火墙

③删除规则后,内网可正常访问

利用Linux Ipables配置防火墙