推荐-使用iptables作为网络防火墙构建安全的网络环境

使用iptables作为网络防火墙构建安全的网络环境

前言

一般情况下iptables只作为主机防火墙使用,但是在特殊情况下也可以使用iptables对整个网络进行流量控制和网络安全防护等功能,在本文中,我们使用iptables对三台服务器的安全进行安全防护

网络防火墙的优势

网络防火墙相比于主机防火墙而言,范围更大,不用对网络内的各主机各自设置防火墙规则就可以保证其安全性,但是必须在网络的进出口才能对出入数据包进行限制

实验拓扑图

下载.png

实验环境

主机 IP地址 功用
fire.anyisalin.com 192.168.2.2,192.168.1.112 控制整个网段的数据报文的流入流出及过滤
ns.anyisalin.com 192.168.2.3 提供DNS服务
ftp.anyisalin.com 192.168.2.5 提供FTP服务
www.anyisalin.com 192.168.2.4 提供web服务

除了fire主机,其他主机皆关闭SElinuxiptables

实验步骤

FTP,WEB,DNS服务器安装配置这里就不写了,有兴趣的看我以前的博客AnyISalIn的文章

防火墙未设置前对所有服务器的测试

以下操作在192.168.1.103进行

dns服务能够正常使用 

blob.png

ftp服务能够正常使用 
blob.png

web服务能够正常使用 

blob.png

针对不同服务器进行”非法”访问

我们对dns,web.ftp服务器分别进行ping,ssh等操作 

blob.png

blob.png

定义网络防火墙规则

大家应该够知道,服务器开放的端口越多就越危险,所以我们在网络防火墙对其进行规则定义

[root@fire ~]# iptables -P FORWARD DROP  #设置FORWARD链默认策略为DROP
[root@fire ~]# modprobe nf_conntrack_ftp  #装载追踪FTP被动连接模块
[root@fire ~]# iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT
[root@fire ~]# iptables -A FORWARD -d 192.168.2.0/24 -p tcp -m multiport --dports 21,80 -m state --state NEW -j ACCEPT
[root@fire ~]# iptables -A FORWARD -d 192.168.2.3 -p udp --dport 53 -m state --state NEW -j ACCEPT

解释一下上面几条规则的作用 
第一条规则将
FORWARD链的默认策略设置为DROP,那么默认所有的数据包将不能通过FORWARD的转发 
第二条规则状态
nf_conntrack_ftp模块,使得iptables能够追踪FTP链接的状态,使数据连接得以建立 
第三条意思是状态使
ESTABLISHEDRELATED允许通过,指的是已建立链接或者追踪链接建立能够通过 
第四条意思是允许访问目标地址为
192.168.2.0网段,端口为21/TCP80/TCP状态为NEW能够通过,指的是新的链接能通过 
第五条是为
DNS查询而添加的规则,指的是允许访问目标地址为192.168.2.3的地址且目标端口为53/UDPNEW`状态能够通过,同指新的链接能够通

再次针对不同服务器进行”非法”访问

大家看!现在已经不能对服务器进行非法访问了 

blob.png

测试服务器是否可访问

ftp服务能正常访问 

blob.png 

web服务能正常访问 
blob.png 

dns服务能正常访问 

blob.png

总结

本文只做了一些简单的限制,不过足以限制用户只能访问”该访问”的服务,这当然不能运用于生产环境中,毕竟设计简陋,大家笑笑就好 
作者:AnyISalIn 
感谢:MageEdu

原创文章,作者:Net18-AnyISalIn,如若转载,请注明出处:http://www.178linux.com/13969

(0)
Net18-AnyISalInNet18-AnyISalIn
上一篇 2016-03-31
下一篇 2016-04-01

相关推荐

  • 分区管理

    分区管理     一.磁盘分类 机械硬盘(HDD):该硬盘是传统的普通硬盘。主要有:盘片,磁头,盘片转轴及控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成  固态硬盘(SSD):用固态电子存储芯片阵列而制成的硬盘,由控制单元和存储单元组成。 二.特点 1.     &n…

    Linux干货 2017-08-20
  • awk多分隔符

    awk的-F参数可以指定新的分隔符,有些时候可能需求指定多个分隔符,比如下面的内容 [root@N1 ~]# netstat -an | grep ESTAB udp 0 0 192.168.1.120:35570 212.47.249.141:123 ESTABLISHED udp 0 0 192.168.1.120:55589 108.59.2.24:1…

    Linux干货 2017-08-09
  • 高可用集群基本概念与heartbeat文本配置接口

    一、高可用集群基本概念:     什么是高可用集群:          所谓高可用集群,就是在出现故障时,可以把业务自动转移到其他主机上并让服务正常运行的集群构架     高可用集群的构架层…

    Linux干货 2016-01-13
  • ACL概述

    ACL概述 一、什么是ACL ACL是linux系统中一种被称为访问控制列表的权限控制方法,它是一种权限分配之外的普遍范式。在一般情况下,要确认三个权限组:owner、group和other。而使用ACL则可以增加权限给其他用户或组别,不再仅仅是在“other”中定义权限,可以允许指定的用户拥有不同于其所属组的权限。 ACL支持多种Linux文件系统,包括e…

    2017-07-29
  • Linux中的软链接/硬链接

    Linux链接概念Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。 【硬连接】硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指…

    Linux干货 2016-10-20
  • 文件查找与解压缩

    文件查找 脚本文件名的查询 which(寻找执行文件) which [-a] command -a :将所有由PATH目录中可以找到的命令均列出,而不只是第一个被找到的命令名称 文件名的查找 文件查找:实时查找:遍历所有文件进行条件匹配;(find)非实时查找:根据索引查找;(whereis、locate) whereis whereis [-bmsu] […

    Linux干货 2017-04-08

评论列表(1条)

  • stanley
    stanley 2016-04-05 22:31

    已置顶