防火墙是指设置在不同网络或网络安全域之间的一系列部件,它能够增强内部网络的安全性。
防火墙可以实现以下功能:
1、可以保护易受攻击的服务;
2、控制内外网之间的访问;
3、集中管理内网的安全性;
4、提供网络的保密性和隐私性;
5、记录网络的使用状态,为安全规划和网络维护提供依据。
iptables简介:
netfilter/iptables(简称:iptables)组成Linux平台下的包过滤防火墙,iptables是用来管理netfilter防火墙的程序,防火墙本身是Linux内核中集成的,iptables只是用来管理的。
在使用iptables之前,我们必须理解3个慨念:规则、链、表。
规则:这是我们自己定义的一些条件,如果数据符合这样的条件,这个数据包将被处理。
链:这是数据包传播的路径。
表:提供特定的功能,iptables内置了3个表:
filter:用于实现包过滤,这是一个主表默认就是它。
nat:网络地址转换
mangle:包重构的功能
Filter 表:
INPUT链:负责输入到防火墙数据流
OUTPUT链:负责从防火墙到别的地方的数据流
FORWARD链:负责被防火墙转发的数据流,从一个接口进,再从另一个接口出去
总结:规则是定义在链上的,链是建立在表中的。
命令:
-P(定义默认策略)
-L(查看)
-A(添加)
-I(插入)
-R(替换)
-D(删除)
-F(删除表中所有规则)
-X(清空用户链)
-Z(计数器归零)
-i(指定流入接口)
-o(指定流出接口)
-s(指定源地址)
--sport(指定源端口)
-d(指定目标地址)
--dport(指定目标端口)
iptables完整命令:
iptables [-t(表名)] [-A | I | D | R] [链名] [规则编号] [-i | o 网卡名称] [-p 协议类型] [-s 源IP地址 | 源子网] [- -sport 源端口] [-d 目标IP地址 | 目标子网] [- -dport 目标端口] [-j 动作
#初始化filter表和nat表
iptables -F #删除表中所有规则(filter表)
iptables -X #清空用户链(filter表)
iptables -Z #计数器归零(filter表)
iptables -F -t nat #删除表中所有规则(nat表)
iptables -X -t nat #清空用户链(nat表)
iptables -Z -t nat #计数器归零(nat表)
#设置规则链的默认策略
iptables -P INPUT DROP
iptables -P OUTPUT DROP
#保存iptables的配置
service iptables save
#重新启动iptables
service iptables restart