一、什么是防火墙
防火墙就是通过定义一些有顺序的规则,并管理进入到 络内的主机数据数据包的一种机制,通俗的说就是分析与过滤进出我们主机(或者是我们所管理的 络)的数据包。
二、防火墙分类
防火墙分为:
- 硬件防火墙
- 软件防火墙
软件防火墙主要有:
- iptables
- TCP Wrappers
注:我们经常用的是iptables,而TCP Wrappers是可以根据服务名称进行过滤的,因此与启动的端口无关。他有一个重大的缺点,就是必须是xinetd所能管理到的服务。这里就不多做介绍,我们重点介绍一下iptables。
三、iptables的 络划分
这里介绍三种常用类型的 络划分(依据鸟哥的介绍)
1.第一种
- target:代表操作,ACCEPT是放行,REJECT是拒绝,LOG是符合条件会打印日志到/var/log/messages中,LOG不常用。
- prot:代表协议,比如TCP、UDP、icmp等。
- opt:额外的说明
- source:代表此规则针对的源IP
- destination:代表此规则针对的目的IP
2、清除规则
注:清除已有规则,不会改变默认策略。防火墙会从第一条到最后一条然后到默认规则依次进行匹配。所以防火墙的顺序非常重要,比如:
- 拒绝所有ip访问
- 同意192.168.91.4访问
如上的结果就是192.168.91.4无法访问主机,因为防火墙匹配第一条时就匹配到了,所以不会往下进行匹配。所以我们的drop规则都是放到最后。
3、定义默认策略
2、80端口转到8080
3、对外的 IP 固定为 192.168.1.100
4、对外的 IP 固定为 192.168.1.210~192.168.1.220,轮流使用
8、在最后我稍微介绍一个IPv4的内核管理功能
除了iptables可以阻挡 络攻击外,linux内核也有默认的阻挡机制。
1、/proc/net/ipv4/tcp_syncookies
这个文件是问了阻挡一种阻断式服务(DoS)攻击的,这种攻击是利用TCP数据包的SYN三次握手原理实现的,这种方式成为SYN Flooding。这个方法可以降低SYN等待端口,避免SYN Flooding的DoS攻击。那么如何开启这个模块以这样做:
2、/proc/sys/net/ipv4/icmp_echo_ignore_broadcasts
从名字中可以看出来这是忽略icmp也就是ping包用的,当有人用多台主机去ping你的服务器以后,你的带宽就是被占用,从而达到攻击的效果,这种攻击称为ping flooding。
内核取消ping回应的的设置有两个,分别是/proc/sys/net/ipv4内的icmp_echo_ignore_brocadcasts(仅有ping brocadcast地址时台取消ping的回应)以及icmp_echo_ignore_all(全部的ping都不回应),开启方法:
3、/proc/sys/net/ipv4/conf/ 络接口/*
linux的内核还可以真对不同的 络接口进行不一样的参数设置。 络接口的相关设置放在/proc/sys/net/ipv4/conf/中,每个接口都以以借口代 作为其代表,例如:ech0接口的相关配置放在/proc/sys/net/ipv4/conf/ech0下。那么 络接口的设置数据有哪些需要注意的呢/p>
- send_redirects:与上一个类似,只是此值为发送一个 ICMP
redirect 封包。 同样建议关闭。
虽然你可以使用『 echo “1” > /proc/sys/net/ipv4/conf/rp_filter 』之
类的方法来启动这个项目,不过, 建议修改系统设定值,那就是
/etc/sysctl.conf 这个档案!假设我们仅有 eth0 这个以太接口,而且上述的
功能要通通启动, 那你可以这样做:
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!