CentOS7中,系统自带的netfilter操作程序由iptables变为firewalld。firewall有zone和service两个概念,网口或者说nmcli下的conection可加入某个zone那么这个con来的数据就会遵循zone下的规则,而每个zone下又有一些service,这些service不受zone默认规则的限制。可以通过con、zone、service的搭配来具体对某一业务进行规划,保证系统安全。

一、firewalld中的9个zone

firewalld中有9个zone,各个zone的说明如下

drop

Any incoming network packets are dropped; there is no reply. Only outgoing network connections are possible.

block

Any incoming network connections are rejected with an icmp-host-prohibited message for IPv4 and icmp6-adm-prohibited for IPv6. Only network connections initiated from within the system are possible.

public

For use in public areas. You do not trust the other computers on the network to not harm your computer. Only selected incoming connections are accepted.

external

For use on external networks with masquerading enabled, especially for routers. You do not trust the other computers on the network to not harm your computer. Only selected incoming connections are accepted.

dmz

For computers in your demilitarized zone that are publicly-accessible with limited access to your internal network. Only selected incoming connections are accepted.

work

For use in work areas. You mostly trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.

home

For use in home areas. You mostly trust the other computers on networks to not harm your computer. Only selected incoming connections are accepted.

internal

For use on internal networks. You mostly trust the other computers on the networks to not harm your computer. Only selected incoming connections are accepted.

trusted

All network connections are accepted.

译文:

由firewalld 提供的区域按照从不信任到信任的顺序排序。

丢弃 drop

任何流入网络的包都被丢弃,不作出任何响应。只允许流出的网络连接。

阻塞 block

任何进入的网络连接都被拒绝,并返回 IPv4 的 icmp-host-prohibited 报文或者 IPv6 的 icmp6-adm-prohibited 报文。只允许由该系统初始化的网络连接。

公开 public

用以可以公开的部分。你认为网络中其他的计算机不可信并且可能伤害你的计算机。只允许选中的连接接入。

外部 external

用在路由器等启用伪装的外部网络。你认为网络中其他的计算机不可信并且可能伤害你的计算机。只允许选中的连接接入。

隔离区dmz

用以允许隔离区(dmz)中的电脑有限地被外界网络访问。只接受被选中的连接。

工作 work

用在工作网络。你信任网络中的大多数计算机不会影响你的计算机。只接受被选中的连接。

家庭 home

用在家庭网络。你信任网络中的大多数计算机不会影响你的计算机。只接受被选中的连接。

内部 internal

用在内部网络。你信任网络中的大多数计算机不会影响你的计算机。只接受被选中的连接。

受信任的 trusted

允许所有网络连接。

二、firewalld的应用

操作前,我们看下当前系统中应用的是哪种防火墙程序。

systemctl list-units --all --type=service |egrep 'firewalld|ip6tables|iptables'

看active那一列,active的就是在用的程序,如果你看到firewalld那一行是inactive的,那我们就用下列命令把他启动

systemctl start firewalld #

systemctl enable firewalld #

如果iptables.service是active的那我们也要把他停用

systemctl stop iptables

systemctl disable iptables

都执行完后可以再重复第一条命令看下服务状态是否跟截图一致。

firewall命令有点像一个英语句子,好理解,但是输入有点烦

比如说

firewall-cmd --get-default-zone

firewall-cmd --set-default-zone=work

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

命令行操作

(一)操作网卡与zone的关系

1、查看新加接口默认的zone

firewall-cmd --get-default-zone

2、设定新接口加入时的默认zone

firewall-cmd --set-default-zone=work

3、查看接口所在的zone

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

4、给指定的网卡设置zone

firewall-cmd --zone=dmz --d-interface=ens33

5、更改某个网卡的zone

firewall-cmd --zone=public --change-interface=ens33

6、查看系统所有网卡所在的zone

firewall-cmd --get-active-zones

(二)操作zone的service

1、列出系统中存在的所有网络服务(比如http、shttp、ssh等等)

firewall-cmd --get-services

2、列出默认zone的service

firewall-cmd --list-service

3、列出特定zone的service

firewall-cmd --zone=trusted --list-service

4、将某个服务加入特定的zone

firewall-cmd --zone=work --add-service=ftp

相对的将某个service移出某个zone

firewall-cmd --zone=work --remove-service=ftp

5、将服务的改动写入配置文件重启后也生效

firewall-cmd --zone=work --add-service=ftp --permanent #就是在末尾加个permanent参数

(三)、通过更改配置文件实现service的控制

firewalld的配置文件保存在,同时程序为我们预备了zone控制的模板与service的模板,其中zone模板保存在/usr/lib/firewalld/zones/下,而service的模板保存在/usr/lib/firewalld/services/目录下,都是一些*.xml的文件。

模板路径

控制文件路径

zone

/usr/lib/firewalld/zones/

/etc/firewalld/zones

service

/usr/lib/firewalld/services/

/etc/firewalld/services

下面我们通过一个例子说明如何用模板控制zone下的service

需求:将FTP service的默认端口改为1121,并且在work zone下放行

首先我们将ftp的模板拷贝到控制文件目录中

cp /usr/lib/firewalld/services/ftp.xml /etc/firewalld/services

然后把默认的21端口改为1121端口

sed -i 's/21/1121/g' ftp.xml

然后把work zone的模板拷贝到控制文件目录下

cp -v /usr/lib/firewalld/zones/work.xml /etc/firewalld/zones #建议加个-v参数,方便检查操作正误

修改控制目录下的work.xml 把ftp服务加入白名单

(玩个花活^^)

sed -i '7i \ \ ' work.xml

重载配置文件让添加的规则生效

firewall-cmd --reload #重新加载firewalld配置文件

firewall-cmd --zone=work --list-services #检查配置结果

linux 进程防火墙连接管理,Linux系统管理初步(五)系统防火墙控制程序firewalld...相关推荐

  1. linux进程的高级管理,Linux高级程序设计(第2版) PDF扫描版[94MB]

    Linux高级程序设计(第2版)以Linux操作系统(内核为2.6版本)为开发平台.GCC 4.0/GDB 6.3为开发调试环境,详细介绍了Linux系统下编程环境及编程工具.文件管理(文件类型.AN ...

  2. linux进程的高级管理,Linux进程查看,管理工具

    浅谈linux下进程查看,管理工具 1.pstree 显示进程树. 显示各个进程之间的关系[root@test ~]# pstree init─┬─abrtd ├─acpid ├─atd ├─cons ...

  3. linux进程与服务管理,linux基础之进程管理与服务

    进程的状态 进程被称作任务,有4种状态 运行态 运行或准备运行 等待态 可中断(TASK_ITERRUPTIBLE) 不可中断(TASK_UNITERRUPTIBLE) 停止态(TASK_STOPPE ...

  4. 第3章 远程连接管理Linux实践

    第3章 远程连接管理Linux实践 3.1 远程连接Linux系统管理 3.1.1 为什么要远程连接Linux系统 在很多机构的培训教学中,教员通常会直接在虚拟机界面或者虚拟机里的图形界面讲解知识,这 ...

  5. Linux进程查看与管理

    Linux进程查看与管理(2) htop: 交互式命令: u: 过滤 s:跟踪选用的进程所发起系统调用 l:显示选定进程所打开的文件 t:显示进程的层次数 a:设定进程的cpu亲缘性:(将选定的进程绑 ...

  6. Linux进程 管理,Linux进程查看与管理以及作业控制

    Linux进程查看与管理 静态结构:重底层开始往上 底层:硬件 kernel(OS):各硬件接口封装成简洁的接口 库:将内核功能封装成功能模块,供程序员研发使用 OS的基本功能:文件系统.网络功能.进 ...

  7. 其它综合-使用Putty远程连接管理Linux实践

    使用Putty远程连接管理Linux实践 1.获取putty 获取 putty有很多方法,以下是我为大家提供的下载地址: 个人网盘地址,提取码:tz83 官方下载地址 解释: 官方下载的是 zip 压 ...

  8. linux进程属主6,20150917 Linux进程查看与管理以及作业管理

    第一.基础知识 MBR引导--内核--内核程序-->协调其它程序 一般内核运行在硬件之上,各应用也在硬件之前 1)OS的基本功能:文件系统.网络功能.进程管理.内存管理.驱动程序.安全功能 以上 ...

  9. Linux基础篇——Linux进程、服务管理

    文章目录 1. 什么是进程 2. Linux下进程与执行者的关系(多人多任务环境) 3. 工作(Job)管理 3.1 将指令丢到后端执行 & 3.2 将目前的工作暂停 Ctrl+z 3.3 j ...

最新文章

  1. poj3304(线段相交问题)
  2. IHttpHandler的妙用之防盗链
  3. CSS响应式:根据分辨率加载不同CSS的几个方法
  4. [HDU 1015] Safecracker
  5. laravel 数据库操作(表、字段)
  6. DJango — URL的Reverse和Resolve
  7. OpenShift 4 之在不同的项目之间推送Image
  8. CSP202012-2 期末预测之最佳阈值(100分)【序列处理】
  9. 云存储20181101-16讲
  10. 计算机网络的简单概述以及在浏览器中输入一个网址后如何执行
  11. Win10首次开机设置
  12. mini2440的串口在Qt上实现
  13. 银河麒麟V10下载安装使用体验(上)
  14. install pecl php_Linux下 PHP 安装pecl_http方法
  15. 数学表达式基础——1 基本符号与术语
  16. Java写时复制CopyOnWriteArrayList
  17. python案例:股民福利,采集股票数据~
  18. 美格智能助力映翰通与Teltonika Networks工业互联网产品加速落地,用连接构建智能工厂
  19. 计算方法实验(三):四阶龙格-库塔方法
  20. 台式机机械硬盘的安装

热门文章

  1. Visual Studio 智能提示功能消失解决办法
  2. C#Winform版获取Excel文件的内容
  3. Hello Android – 迈出android开发第一步
  4. pydev eclipse插件安装
  5. UA MATH567 高维统计III 随机矩阵6 亚高斯矩阵的范数
  6. UA MATH523A 实分析3 积分理论例题 Fubini定理计算一元积分
  7. Python pip工具初步学习
  8. matlab input函数学习
  9. 汇编排序算法代码总结
  10. 面向对象数据库和关系数据库的区别