Netfilter/Iptables(以下简称Iptables)是unix/linux自带的一款优秀且开放源代码的完全自由的基于包过滤的防火墙工具,它的功能十分强大,使用非常灵活,可以对流入和流出服务器的数据包进行很精细的控制.特别是它可以在一台非常低的硬件配置服务器上跑的非常好。iptables是linux2.4及2.6内核中集成的服务,其功能与安全性比其老一蜚ipfwadm,ipchains 强大的多,iptables主要工作在0SI七层的二、三、四层,如果重新编译内核,iptables也可以支持 7 层控制(squid代理+iptables)。
四表五链:
表\链INPUTFORWARD OUTPUT PREROUTING POSTROUTINGFilter(过滤流入流出主机的数据包)√√√××NAT(负责网络地址转换,即来源与目的的ip地址和port的转换)××√√√Managle(主要负责修改数据包中特殊的路由标记,如TTL、TOS、MARK等)√√√√√raw(RAW表可以应用在那些不需要做nat的情况下,以提高性能。如大量访问的web服务器,可以让80端口不再让iptables做数据包的链接跟踪处理,以提高用户的访问速度)××√√×说明: √表示对应的表有该链,× 表示无。
1、防火墙是一层层过滤的。实际是按照配置规则的顺序从上到下,从前到后进行过滤的。
2、如果匹配上了规则,即明确表明是阻止还是通过,此时数据包就不在向下匹配新规则了。
3、如果所有规则中没有明确表明是阻止还是通过这个数据包,也就是没有匹配上规则,向下进行匹配,直到匹配默认规则得到明确的阻止还是通过。
4、防火墙的默认规则是对应链的所有的规则执行完以后才会执行的(最后执行的规则)
1、尽可能不给服务器配置外网ip ,可以通过代理转发或者通过防火墙映射.并发不是特别大情况有外网ip,可以开启防火墙服务;
2、大并发的情况,不能开iptables,影响性能,利用硬件防火墙提升架构安全。
一般用到的功能
1、NAT功能
1)局域网上网共享(路由和网关),使用NAT的POSTROUTING链。
2)外部IP和端口映射为内部IP和端口(DMZ功能),使用NAT的PREROUTING链
2、FILTER功能,即防火墙功能FILTER INPUT FORWARD
主要应用就是主机服务器防火墙,使用FILTER的INPUT链
配置实例一:配置22/ssh端口访问控制规则
iptables -A INPUT -p tcp --dport 22 -j DROP # 禁止所有人访问22端口iptables -I INPUT -p tcp --dport 22 -j ACCEPT # 恢复连接方法iptables -I INPUT 2 -p tcp --dport 22 -j ACCEPT # 通过插入指定行号信息,指定将规则插入到第几行iptables -D INPUT -p tcp --dport 22 -j ACCEPT # 删除指定规则iptables -D INPUT 2 # 根据规则行号,删除相应的规则只允许10.0.0.1的ip通过ssh连接这台服务器
iptables -I INPUT -s 10.0.0.1 -p tcp --dport 22 -j ACCEPT配置实例二:禁止网段连入(禁止172.16.1.0网段访问172.16.1.188)
iptables -A INPUT -s 172.16.1.0/24 -d 172.16.1.188 -j DROP配置实例三:禁止某个172.16.1.0网段访问服务器主机的22端口
iptables -A INPUT -s 172.16.1.0/24 -d 172.16.1.188 -p tcp --dport 22 -j DROPiptables -A INPUT -p tcp --dport 22:80 -j DROP # 设置连续多端口控制策略iptables -A INPUT -p tcp -m multiport --dport 22,80 -j DROP # 设置不连续多端口控制策略
指定类型禁止icmp
iptables -A INPUT -p icmp --icmp-type 8iptables -A INPUT -p icmp --icmp-type 8 -j DROPiptables -A INPUT -p icmp -m icmp --icmp-type any -j ACCEPTiptables -A FORWARD -s 192.168.1.0/24 -p icmp -m icmp --icmp-type any -j ACCEPT说明:只有类型8是真正会影响ping,或者也可以采用any;了解很多icmp类型iptables -p icmp -h
转载于:https://www.cnblogs.com/qxrm/p/qxrm_0.html