firewalld防火墙

firewalld 防火墙 ----包过滤防火墙。工作在:网络层。是centos7自带的默认防火墙,主要目的就是取代iptables
firewalld的两种配置模式:
1.运行时配置
2.永久配置
iptables是静态防火墙。firewalld是动态防火墙。

   systemctl status firewalld.service :查看防火墙状态

firewalld是按照区域进行划分的:一共有9个区域。
firewalld防火墙_第1张图片
每个区域的作用:
trusted:信任区域,允许所有的流量传入
public:公共区,默认区域,只允许ssh和dhcpv6这两个预定义服务的流量可以传入,其余都是拒绝的。
external:外部区域,只允许ssh和dhcpv6这两个预定义服务的流量可以传入,其余都是拒绝的。如果通过此区域转发的ipv4流量可以进行地址伪装。
home:家庭区域,只允许ssh和dhcpv6这两个预定义服务的流量可以传入,其余都是拒绝的。
internal:内部区域,作为默认值和home是一个作用。
work:工作区域,只允许ssh和dhcpv6这两个预定义服务的流量可以传入,其余都是拒绝的。
dmz:隔离区域,也成为非军事区域,只允许ssh和dhcpv6这两个预定义服务的流量可以传入,其余都是拒绝的。
block:限制区域,所有的流量都拒绝。
drop:丢弃区域,直接丢弃,没有回显信息。
linux自带的预定义服务:
ssh:远程连接协议
dhcpv6:通过dhcpv6服务器进行报文交互,获取ipv6的地址。
ipp:编程语言交互 java python
samba:打印机
mdns:主机名地址解析。主要解析小型网络ip地址。
调用方式:
方式一:使用远程连接工具MobaXterm,输入命令:

使用命令行进行更改:
查看系统防火墙默认区域:
注意要确保防火墙属于开启状态!!!

firewall-cmd --get-default-zone 查看系统防火墙默认区域

切换默认区域:

firewall-cmd --set-default-zone=block 修改系统防火墙默认区域切换为block 
firewall-cmd --list-all  查看默认区域的全部规则

添加单个服务:

firewall-cmd --add-service=http --zone=public

添加多个服务:
firewall-cmd --add-service=http --add-serviceftp --zone=public

5、同时添加httpd、ftp服务到默认区域,设置成永久生效
firewall-cmd --add-service=http --add-service=ftp --permanent
firewall-cmd --add-service={ftp,http} --zone=public --permanent #两种方式
firewall-cmd --reload
firewall-cmd --list-all
添加使用 --permanent选项表示设置成永久生效,需要重新启动firewalld服务或执行firewall-cmd --reload命令
重新加载防火墙规则时才会生效。若不带有此选项,表示用于设置运行时规则,
但是这些规则在系统或firewalld服务重启、停止时配置将失效。
6.删除public区域的httpd 服务
firewall-cmd --remove-service=http --zone=public
#删除永久规则
[root@localhost ~]# firewall-cmd --remove-service=ftp --zone=public --permanent
success
[root@localhost ~]# firewall-cmd --remove-service=http --zone=public --permanent
success
[root@localhost ~]# firewall-cmd --reload
success
[root@localhost ~]# systemctl restart firewalld.service
[root@localhost ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: ens33
sources:
services: ssh dhcpv6-client
ports:
protocols:
masquerade: no
forward-ports:
source-ports:
icmp-blocks:
rich rules:

永久添加
方式一:firewall-cmd --add-service=http --add-service=ftp --permanent
方式二:firewall-cmd --add-service={ftp,http} --zone=public --permanent
修改完成后:firewall-cmd --reload 重启
注意:在生产环境中不要轻易关闭防火墙,或重启防火墙,否则会出大乱子!!!!
端口管理
1、允许TCP的443端口到internal区域
firewall-cmd --zone=internal --add-port=443/tcp
firewall-cmd --list-all --zone=internal

2、从internal 区域将TCP的443端口移除
firewall-cmd --zone=internal --remove-port=443/tcp

3、允许UDP的2048~2050端口到默认区域
firewall-cmd --add-port=2048-2050/udp
firewall-cmd --list-all

你可能感兴趣的:(linux,运维,防火墙)