0
点赞
收藏
分享

微信扫一扫

Linux防火墙配置

一、实验目的及要求

1.不允许外网不经过防火墙与内网进行通信

2.允许内网用户通过防火墙访问外部HTTP、HTTPS服务器

3.允许内网用户通过防火墙访问外部FTP服务器

二、实验环境

3台Ubuntu虚拟机

Ubuntu 64位:内网(服务器)

Ubuntu 2 :网关(防火墙)

Ubuntu 3:外网

注:Ubuntu的可视化操作较为便利,这里使用Ubuntu易于进行网段和ip地址的设置。

三、实验原理

1.防火墙的概念

       防火墙(firewall)是位于内部网和外部网之间的屏障,它按照系统管理员预先定义好的规则来控制数据包的进出。防火墙是系统的第一道防线,其作用是防止非法用户以及非法数据包进入内部网络。

2.防火墙的分类

包过滤型防火墙:包过滤型防火墙工作在OSI参考模型的网络层。包过滤型防火墙主要是根据数据包的源地址、目的地址、端口号和协议类型等标志来确定是否让数据包通过。

代理型防火墙:代理型防火墙主要工作在OSI的应用层。代理服务在确定客户端连接请求有效后接管连接,代为向服务器发送连接请求。代理型防火墙可以允许或拒绝特定的应用程序或服务,还可以实施数据流量监控、过滤、记录和报告功能。代理型防火墙先将客户端对服务器的请求进行存储,然后再代替客户端向服务器转发客户端的请求,因此,代理服务器通常具有高速缓存功能,代理型防火墙的最大缺点是速度较慢。

状态检测型防火墙:状态检测型防火墙可以动态的根据实际应用需求,自动生成或删除包过滤规则。这种防火墙不但能够根据数据包的源地址、目标地址、协议类型、源端口、目标端口等对数据包进行控制,而且能记录通过防火墙的连接状态,直接对包里的数据进行过滤。

3.Linux防火墙

(1):netfilter

位于Linux内核中的包过滤型防火墙功能体系

称为Linux防火墙的“内核态”

(2):iptables

位于/sbin/iptables,是用来管理防火墙的命令工具

为防火墙体系提供过滤规则/策略,决定如何过滤或处理到达防火墙主机的数据包

称为Linux防火墙的“用户态”

习惯上,上述两种称呼都可以代表Linux防火墙

4.iptables的规则表、规则链

数据包过滤匹配流程

4.1规则表中的优先顺序

依次为raw、mangle、nat、filter表

4.2规则链间的匹配顺序

入站数据:PREROUTING链、INPUT链

出站数据:OUTPUT链、POSTROUTING链

转发数据:PREROUTING链、FORWARD链、POSTROUTING链

4.3规则链内的匹配顺序

按顺序依次进行检查,找到相匹配的规则即停止,若在该链中找不到相匹配的规则,则按该链的默认策略进行处理。

5.管理和设置iptables规则

5.1:iptables命令的语法格式

iptables  [-t  表名]  管理选项  [链名]   [条件匹配]   [-j   目标动作或跳转]

注意事项:

不指定表名时,默认表示filter表

不指定链名时,默认表示该表内所有链

除非设置规则链的缺省策略,否则需要指定匹配条件。

5.2:设置规则内容

-A:在链尾追加一条新的规则

-I(是大写的i):在指定位置(或链首)插入一条新的规则

-R:修改、替换指定位置或内容的规则

-P:设置指定链的默认策略

5.3:列表查看规则

-L:列表查看各条规则信息

--line-numbers:查看规则信息时显示规则的行号

-n:以数字形式显示IP地址、端口等信息

-v:显示数据包个数、字节数等详细信息

5.4:清除规则

-D:删除指定位置或内容的规则

-F:清空规则链中的所有规则

可以看见,所有链中的策略都已经被清除,但是,之前修改的默认策略不会被清除。

四、实验内容及步骤

4.1环境配置

4.1.1概述

(1)网关需要进行数据包的转发,因此需要两张虚拟网卡,一张对内,一张对外,两张网卡设置为不同的网段

(2)内网的IP与网关的对内网卡IP处于同一网段,且内网的网关IP是网关主机的对内网卡IP

(3)外网的IP与网关的对外网卡IP处于同一网段,且外网的网关IP是网关主机的对外网卡IP

4.1.2配置VMware虚拟网络

打开VMware的虚拟网络选项,取消勾选NAT模式的“使用本地DHCP自动分配IP”, DHCP服务会根据配置将所有虚拟机划分到同一网段,这里我们需要两个网络环境,手动设置IP和网段。

设置子网IP,需要和物理机的网络适配器中的网关同一网段,否则无法联网

IP范围:192.168.159.0/24,网关:192.168.159.2

4.1.3配置网关

(1)这里点击虚拟机设置,添加网络适配器,设置NAT模式

(2)设置对内网卡(网卡1-ens33)

直接在设置中修改网络

设置网卡一,选择IPv4方式为手动(Manual)在地址栏输入

IP地址:192.168.159.16

子网掩码:255.255.255.0

网关:192.168.159.2

DNS:8.8.8.8

(3)对外网卡(网卡2-ens37)

这里设置时IP不能与内网卡在同一网段

IP地址:192.168.137.11

子网掩码:255.255.255.0

网关:192.168.137.2

DNS:8.8.8.8

(4)开启默认IP转发功能,将ip_forward文件内的值改为1则为开启

输入以下指令: echo "1" > /proc/sys/net/ipv4/ip_forward             

 cat /proc/sys/net/ipv4/ip_forward

4.1.4配置内网与外网

(1)内网

IP地址:192.168.159.12(与网关的内网卡IP处于同一网段)

子网掩码:255.255.255.0

网关:192.168.159.16(网管主机的对内IP)

DNS:8.8.8.8(此处的网关需要填网关主机的对内网卡IP,因为是把其作为内外环境的网关,让数据包经过网关主机)

(2)外网

IP地址:192.168.137.12(与网关的外网卡IP处于同一网段)

子网掩码:255.255.255.0

网关:192.168.37.11(网管主机的对外IP)

DNS:8.8.8.8

4.2环境测试

重启网卡服务或者虚拟机,通过互相ping来测试环境是否配置成功

4.2.1内网ping外网和网关(成功)

4.2.2外网ping内网和网关(成功)

4.2.3网关ping内网和外网(成功)

4.2.4问题

内网ping不通外网 100%包丢失

解决办法查看网关防火墙配置,发现FORWARD后的属性为DROP

解决方案:开启转发服务输入:

iptables -P FORWARD ACCEPT
echo "1" > /proc/sys/net/ipv4/ip_forward             
cat /proc/sys/net/ipv4/ip_forward

4.3iptables规则配置

查看当前规则表,确定为空,且都为接受

iptables -L

4.3.1阻止内外网直接通信

将转发链的默认策略改为DROP
iptables -P FORWARD DROP

测试内网访问外网失败

测试外网访问内网失败

内网无法与外部网络连接,成功阻断

4.3.2允许内网用户通过防火墙访问外部HTTP、HTTPS服务器

思路:开始不设置任何规则,内网可以访问外网,增加防火墙策略,限制80和443端口,此时,浏览器无法访问。注意,最后使用浏览器去访问,不要ping外网,因为ping使用的是ICMP数据包。

清空上一步的防火墙策略 

  iptables -F
  iptables -P FORWARD ACCEPT
  iptables -L

HTTP协议

(1):没有添加防火墙策略前,可以访问外网(使用80端口访问,西邮使用的是HTTP协议)

(2):添加防火墙策略如下(注意,因为是在网关上进行转发的。所以必须禁掉FORWARD链中的80端口,内网才不能通过HTTP协议访问外网)

(3):添加了防火墙策略后,无法访问外网 

HTTPS协议

(1):没有添加防火墙策略前,可以访问外网(使用443端口访问,百度使用的是HTTPS协议)

(2): 防火墙策略如下(注意,因为是在网关上进行转发的。所以必须禁掉FORWARD链中的80端口,内网才不能通过HTTPS协议访问外网)

(3)添加了防火墙策略后,无法访问外网

4.3.3 允许内网用户通过防火墙访问外部FTP服务器

一个可以使用的FTP服务器网站:ftp://ftp.scene.org/music/groups/

(1):未添加防分享火墙策略前,可以访问FTP服务器

在文件中打开其他位置下边框输入网址

(2):防火墙策略如下

(3):配置了防火墙策略后,不可以访问FTP服务器

最后清空防火墙规则,输入以下命令

五、实验总结及心得体会

通过这次实验,我们学到了Linux防火墙配置的相关操作,这个实验做之前需要提前理解防火墙的概念和Linux中iptables配置规则,理解四表五链,否则很难理解网关的配置,ip的设置,在做实验时也遇到了很多困难,开始时内外网无法互通,后来发现是网关防火墙的默认配置,转发功能没有开启,设置好环境后,然后通过测试,内外网可以互通,通过iptables规则,阻止内外网互通,并且允许内网用户通过防火墙访问外部HTTP、HTTPS服务器,允许内网用户通过防火墙访问外部FTP服务器。

举报

相关推荐

0 条评论