作者介绍:简历上没有一个精通的运维工程师。请点击上方的蓝色《运维小路》关注我,下面的思维导图也是预计更新的内容和当前进度(不定时更新)。
我们想象一下把每台服务器当成一个小区,我们去访问另外一个小区的朋友,我们需要经过什么步骤:
首先我要出我们自己的小区,会经过保安看的大门,这个一般不会做限制,但是如果有特殊情况,比如疫情期间小区封闭,保安就不会让我出去。
当我们正常走出去小区以后,怎么到朋友的小区这个以后讲网络的时候来具体讲。
其次我们到达朋友所在的小区,肯定会经过小区门口,小区门口的保安就会问我:你找谁?然后我会告诉他我找谁,他会翻看本子看看这个人对外来的人是怎么规定的,是让他进,还是不让他进。
最后这个小区不仅仅是一个封闭的小区,他还可以通向其他小区,而不仅仅通向本小区。我到门口的时候,他会首先问我你到我们小区,还是到其他小区,然后又翻个本本确认让不让我通行。
小区的门卫就是防火墙,他不仅控制着我能否出小区(这个限制比较少),甚至可以控制我能到隔壁的小区A,但是不能到隔壁的小区B。也可以控制外面的人能否进入我小区,或者经过我们小区去隔壁小区,大概流程就是下面这样的。
门卫不仅控制出门,也控制进门,门卫也就相当于防火墙,记录在门卫小本本里面的东西就是具体防火墙规则。
Linux 防火墙是用于管理进出 Linux 系统网络流量的软件或服务,具有以下关键作用:
一、访问控制
二、安全防护
三、网络管理
Linux 防火墙常见实现方式有以下几种:
iptables/netfilter:
netfilter
框架,通过 iptables
命令行工具管理规则。firewalld:
netfilter
,采用区域概念简化配置。ufw(Uncomplicated Firewall):
1.在centos6及以前的版本默认就是iptables。
2.在centos7里面默认是firewalld,但是同时也支持iptables。
3.这两种模式可根据个人习惯来使用,但是iptables相对通用性会更高一点,而且我们后面要讲docker和k8s就会使用到iptabels,所以我们主要也讲解iptables。
4.我们这里讲的是Linux系统自带的软件防火墙,实际上还有硬件防火墙,waf防火墙等等。