前言
一般情况下iptables
只作为主机防火墙使用,但是在特殊情况下也可以使用iptables
对整个网络进行流量控制和网络安全防护等功能,在本文中,我们使用iptables
对三台服务器的安全进行安全防护
网络防火墙的优势
网络防火墙相比于主机防火墙而言,范围更大,不用对网络内的各主机各自设置防火墙规则就可以保证其安全性,但是必须在网络的进出口才能对出入数据包进行限制
实验拓扑图
一般情况下iptables
只作为主机防火墙使用,但是在特殊情况下也可以使用iptables
对整个网络进行流量控制和网络安全防护等功能,在本文中,我们使用iptables
对三台服务器的安全进行安全防护
网络防火墙相比于主机防火墙而言,范围更大,不用对网络内的各主机各自设置防火墙规则就可以保证其安全性,但是必须在网络的进出口才能对出入数据包进行限制
实验拓扑图
实验环境
主机 | 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
主机,其他主机皆关闭SElinux
和iptables
实验步骤
FTP
,WEB
,DNS
服务器安装配置这里就不写了,有兴趣的看我以前的博客AnyISalIn的文章
防火墙未设置前对所有服务器的测试
FTP
,WEB
,DNS
服务器安装配置这里就不写了,有兴趣的看我以前的博客AnyISalIn的文章
以下操作在192.168.1.103进行
dns
服务能够正常使用
ftp
服务能够正常使用
web
服务能够正常使用
针对不同服务器进行”非法”访问
我们对dns,web.ftp
服务器分别进行ping
,ssh
等操作
![1459434847247823.png blob.png](https://ftp.serverspc.com/2021/01/160410203045485.png)
![1459434852625530.png blob.png](https://ftp.serverspc.com/2021/01/160410203045486.png)
定义网络防火墙规则
我们对dns,web.ftp
服务器分别进行ping
,ssh
等操作
大家应该够知道,服务器开放的端口越多就越危险,所以我们在网络防火墙对其进行规则定义
[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
链接的状态,使数据连接得以建立
第三条意思是状态使ESTABLISHED
和RELATED
允许通过,指的是已建立链接或者追踪链接建立能够通过
第四条意思是允许访问目标地址为192.168.2.0
网段,端口为21/TCP
和80/TCP
状态为NEW能
够通过,指的是新的链接能通过
第五条是为DNS
查询而添加的规则,指的是允许访问目标地址为192.168.2.3的地址且目标端口为
53/UDP的
NEW`状态能够通过,同指新的链接能够通过
再次针对不同服务器进行”非法”访问
大家看!现在已经不能对服务器进行非法访问了
![1459434860159795.png blob.png](https://ftp.serverspc.com/2021/01/160410203045487.png)
测试服务器是否可访问
ftp
服务能正常访问
web
服务能正常访问
dns
服务能正常访问
![1459434888801560.png blob.png](https://ftp.serverspc.com/2021/01/1604102030454810.png)
总结
本文只做了一些简单的限制,不过足以限制用户只能访问”该访问”的服务,这当然不能运用于生产环境中,毕竟设计简陋,大家笑笑就好
大家看!现在已经不能对服务器进行非法访问了
ftp
服务能正常访问
![]()
web
服务能正常访问![]()
dns
服务能正常访问
总结
本文只做了一些简单的限制,不过足以限制用户只能访问”该访问”的服务,这当然不能运用于生产环境中,毕竟设计简陋,大家笑笑就好
本文只做了一些简单的限制,不过足以限制用户只能访问”该访问”的服务,这当然不能运用于生产环境中,毕竟设计简陋,大家笑笑就好
更多iptables相关教程见以下内容:
CentOS 7.0关闭默认防火墙启用iptables防火墙 http://www.linuxidc.com/Linux/2015-05/117473.htm
iptables使用范例详解 http://www.linuxidc.com/Linux/2014-03/99159.htm
Linux防火墙iptables详细教程 http://www.linuxidc.com/Linux/2013-07/87045.htm
iptables的备份、恢复及防火墙脚本的基本使用 http://www.linuxidc.com/Linux/2013-08/88535.htm
Linux下防火墙iptables用法规则详解 http://www.linuxidc.com/Linux/2012-08/67952.htm
Linux下iptables防火墙设置 http://www.linuxidc.com/Linux/2015-10/123843.htm
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-04/130032.htm