firewalld是centos7开始提供的管理防火墙工具,提供了一个动态管理的防火墙,当然低层仍然调用的是 netfilter 。

一、区域(zone)
firewalld将网卡对应到不同的区域(zone),zone默认共有9个,block,dmz,drop,external,home,internal,public,trusted,work。

二、服务(services)
/usr/lib/firewalld/services目录中,保存了另一类配置文件,每个文件对应一项具体的网络服务,如 ssh 服务。
对应的配置文件中记录了各项服务所使用的 tcp/udp 端口,最新的 firewalld 中默认已经定义了 70 多种服务供我们使用。

修改服务的配置只需将/usr/lib/firewalld/services中的配置文件复制到/etc/firewalld/services中修改即可。

三、firewalld常用命令

安装

yum install firewalld

启动

systemctl start firewalld

停止

systemctl stop firewalld

查看版本

firewall-cmd --version

查看状态

firewall-cmd --state

重新载入

firewall-cmd --reload

查看firewalld支持的service

firewall-cmd --get-services

查看当前zone加载的service

firewall-cmd --list-services

查看区域信息

firewall-cmd --get-active-zone

查看活动的区域

firewall-cmd --get-active-zones

查看指定接口所属区域

firewall-cmd --get-zone-of-interface=ens33

查看默认区域

firewall-cmd --get-default-zone

设置默认区域

firewall-cmd --set-default-zone public

获取所有的区域

firewall-cmd --get-zones

拒绝所有包

firewall-cmd --panic-on

取消拒绝状态

firewall-cmd --panic-off

查看是否拒绝

firewall-cmd --query-panic

将接口添加到区域

firewall-cmd --zone=public --add-interface=eth0

将接口从区域中删除

firewall-cmd --zone=public --remove-interface=eth0

修改接口所属区域

firewall-cmd --zone=dmz --change-interface=eth0

查询区域中是否包含某接口

firewall-cmd --zone=public --query-interface=eth0

  

四、打开端口 (最常用)

查看区域打开的所有端口

firewall-cmd --zone=public --list-ports

加入一个端口到区域

firewall-cmd --zone=public --add-port=8080/tcp

从区域中删除一个端口

firewall-cmd --zone=public --remove-port=8080/tcp

永久生效加上 --permanent 然后 reload 防火墙
注意,如果加上 --permanent 参数后,会把该配置写入到指定的区域配置文件中,比如:/etc/firewalld/zones/public.xml

五、如何打开一个服务

打开一个服务,类似端口可视化,服务需要在配置文件中添加,/etc/firewalld/services目录下。

查询区域中启用的服务

firewall-cmd --zone=public --list-services

将ssh服务添加到public区域

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

移除服务

firewall-cmd --zone=public --remove-service=ssh

  

六、如何设置端口转发

要使用端口转发,需开启防火墙伪装

firewall-cmd --add-masquerade --permanent

如:我们想把访问本机192.168.1.222的3306端口转发到192.168.1.111主机的3306端口上

1、先把本机的3306端口放开

firewall-cmd --permanent --zone=public --add-port=3306/tcp

2、把访问本地3306端口的请求转发到192.168.1.111主机的3306上

firewall-cmd --permanent --zone=public --add-forward-port=port=3306:proto=tcp:toaddr=192.168.1.111:toport=3306

这样当我们访问222主机的3306端口时,实际访问的是111主机的3306端口。

centos7之firewalld防火墙的配置与使用的更多相关文章

  1. CentOS7使用firewalld防火墙配置端口

    安装启用firewalld防火墙 CentOS7默认的防火墙是firewalld 如果没有firewalld防火墙,可以执行yum install firewalld 命令进行安装 firewalld ...

  2. Centos7 iptables firewalld防火墙与selinux配置

    一.iptables防火墙 1.基本操作 # 查看防火墙状态 service iptables status # 停止防火墙 service iptables stop # 启动防火墙 service ...

  3. Centos7.5 firewalld防火墙配置

    CentOS 7.0默认使用的是firewall作为防火墙 1.查看firewall服务状态 systemctl status firewalld 2.查看firewall的状态 firewall-c ...

  4. CentOS7使用firewalld防火墙

    firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status fir ...

  5. Centos7下Firewalld防火墙配置命令

    前    言 服务端口日常被拦截,记录一下常用的命令便于查询 Firewalld服务管理 查看防火墙状态   1 systemctl status firewalld 开机启用/禁用防火墙   1 s ...

  6. Centos7 下的防火墙端口配置

    如果外部不能访问,需要查看防火墙以及服务器的端口安全设置. 防火墙的操作 查看所有打开的端口: firewall-cmd --zone=public --list-ports 添加 firewall- ...

  7. CentOS 7 打开关闭FirewallD防火墙端口命令

    CentOS 7 使用firewalld代替了原来的iptables,使用方法如下: >>>关闭防火墙 systemctl stop firewalld.service        ...

  8. firewalld防火墙基础

    目录 一.firewalld 概述 二.firewalld与iptables 的区别 三.firewalld 区域概念 四.Firewalld数据处理流程 五.Firewalld检查数据包的源地址的规 ...

  9. Firewalld防火墙——基础认知

    Firewalld防火墙 1.Firewalld概述 2.firewalld与iptables 的区别 3.firewalld区域的概念 4.firewalld数据处理流程 5.firewalld检查 ...

随机推荐

  1. 手机投屏工具与HOSTS切换工具

    ApowerMirror windows -->switchhosts

  2. Codeforces Round #607 (Div. 1)

    A. Cut and Paste 题解 在计算答案的时候,我们发现只需要知道这个字符串前\(l\) 个具体是啥就行了.所以对于每一组询问,我们暴力把这个字符串前\(l\) 的位都算出来,然后剩下的就推 ...

  3. SA详细注释不压行代码

    ){ //变量含义:m是字符集大小,n是字符串长度,c是一个桶数组,a[i]是字符串(下标从1开始) //rk[i]就是suffix(i)的字典序排名,sa[i]就是要求的排名为i的后缀的起始位置,即 ...

  4. libwebrtc & libmediasoupclient编译

    本文简单介绍在Ubuntu下libwebrtc的编译过程. 由于网速限制,实际编译过程是在远程vps上编译滴. 系统环境 Ubuntu 18.04系统的虚拟主机. root@vultr:~# pwd ...

  5. Python time.time()方法

    描述 Python time time()返回当前时间的时间戳. 时间戳:时间戳是指格林威治时间1970年01月01日00时00分00秒(背景时间1970年01月01日08时00分00秒)起至现在的总 ...

  6. form表单中的button自动刷新页面问题

    form表单中如果存在button的话,有可能会出现一个问题:点击button,触发了页面的自动刷新事件. 原因是因为<button>标签默认的类型是submit,即默认的button点击 ...

  7. 100本Python机器学习、深度学习电子书,免费送!

    此套电子书收集于网络,如有侵权请联系删除!!! 此套电子书仅用于个人学习,请勿用于商业获利,造成后果自负!!! 这套电子书包括:机器学习.深度学习.数据科学入门.神经网络等 获取资源地址:链接: ht ...

  8. MySQLl存储过程学习总结

    1.简介 : 逻辑处理一般不是一条语句组成,需要多条之间相互配合使用              这时,存储过程就是为了以后使用而保存的的一条或多条Mysql语句的集合 2.为何 : 1)简单:将处理单 ...

  9. 网络协议 15 - P2P 协议

    大家说起种子,应该都知道是用来下载资源的.那么资源下载都有哪些方式?种子下载又有什么优势呢? 下载电影的两种方式     第一种是通过 HTTP 进行下载.这种方式,有过经历的人应该体会到,当下载文件 ...

  10. vue之虚拟DOM、diff算法

    一.真实DOM和其解析流程? 浏览器渲染引擎工作流程都差不多,大致分为5步,创建DOM树——创建StyleRules——创建Render树——布局Layout——绘制Painting 第一步,用HTM ...