博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
linux防火墙firewall详细讲解
阅读量:2168 次
发布时间:2019-05-01

本文共 2523 字,大约阅读时间需要 8 分钟。

防火墙(firewall)

what

1、简介

1、Centos7 默认的防火墙是 firewall,替代了以前的 iptables

2、firewall 使用更加方便、功能也更加强大一些

3、Firewalld与iptables对比

​ - firewalld 是 iptables 的前端控制器

​ - iptables 静态防火墙 任一策略变更需要reload所有策略,丢失现有链接

​ - firewalld 动态防火墙 任一策略变更不需要reload所有策略 将变更部分保存到iptables,不丢失现有链接

​ - firewalld 提供一个daemon和service 底层使用iptables

​ - 基于内核的Netfilter

2、基本概念

2.1 Zone

  • 区域如同进入主机的安全门,每个区域都具有不同限制程度的规则
  • 网络连接的可信等级,一对多,一个区域对应多个连接
  • 默认情况下,public区域是默认区域,包含所有接口(网卡)
drop 	拒绝所有的连接block	拒绝所有的连接public	 只允许指定的连接 (默认区域)external	 只允许指定的连接dmz		 只允许指定的连接work	 只允许指定的连接home	 只允许指定的连接internal	 只允许指定的连接trusted	 允许所有的连接

2.2 运行时配置和永久配置

–-permanent    永久配置 //需要--reload 重启才能生效–-runtime     运行时配置(默认)

how

1、安装

centos 默认自带firewall,如果没有则需要自行安装

#yum -y install firewalld firewall-config

2、服务使用

systemctl 选项 firewalld选项:    stop:关闭    start:开启    restart:重启    status:状态    is-enabled:查看是否开机自启    enable:  开机自启	disable: 关闭开机自启

3、命令的使用(firewalld-cmd)

firewall 可以看成整个防火墙服务,而 firewall-cmd 可以看成是其中的一个功能,可用来管理端口

3.1 域操作

--get-zones 				查看所有可用区域--get-default-zone					显示网络接口的默认区域--set-default-zone				设置网络接口的默认区域--get-active-zones					显示已激活的所有区域--get-zone-of-interface		显示指定接口绑定的区域[–-zone=区域类型] --add-interface=接口(网卡)		为指定接口绑定区域[–-zone=区域类型] --change-interface=接口(网卡)		为指定的区域更改绑定的网络接口[–-zone=区域类型] --remove-interface=接口(网卡)		为指定的区域删除绑定的网络接口–query-interface=接口(网卡)							查询区域中是否包含某接口--list-all-zones										显示所有区域及其规则[–-zone=区域类型] --list-all							显示所有指定区域的所有规则

eg:

#为指定接口绑定区域(为ens33绑定work区域)firewall-cmd --zone=work --add-interface=ens33

3.2 服务操作

[–-zone=区域类型] --list-services			显示指定区域内允许访问的所有服务[–-zone=区域类型] --add-service			为指定区域设置允许访问的某项服务[–-zone=区域类型] --remove-service	删除指定区域已设置的允许访问的某项服务[–-zone=区域类型] --query-service			查询指定区域中是否启用了某项服务

eg:

要启用或禁用 HTTP 服务:firewall-cmd --zone=public --add-service=http --permanentfirewall-cmd --zone=public --remove-service=http --permanentfirewall-cmd --reload

注意:开启服务等同于开放服务的端口,两者可选其一

3.3 端口/协议 操作

--list-ports       显示指定区域内允许访问的所有端口--add-port        为指定区域设置允许访问的端口号--remove-port     删除指定区域已设置的允许访问端口号

eg:

允许或者禁用 12345 端口的 TCP 流量。firewall-cmd --zone=public --add-port=12345/tcp --permanentfirewall-cmd --zone=public --remove-port=12345/tcp --permanentfirewall-cmd --reload

3.4 端口转发

--query-masquerade     检查是否允许 NAT 转发--add-masquerade       开启 NAT 转发--remove-masquerade    禁止防火墙 NAT 转发 --add-forward-port     增加nat端口转发规则--remove-forward-port  删除nat端口转发规则\语法:port=portid : proto=protocol : toport=portid : [toaddr=address[/mask]]

eg:

#将本机80端口转发到192.168.1.1的8080端口上firewall-cmd --add-forward-port=port=80:proto=tcp:toport=8080:toaddr=192.168.1.1 --permanent

转载地址:http://ifxzb.baihongyu.com/

你可能感兴趣的文章
了解 Sklearn 的数据集
查看>>
用ARIMA模型做需求预测
查看>>
推荐系统
查看>>
TensorFlow-11-策略网络
查看>>
浅谈 GBDT
查看>>
如何选择优化器 optimizer
查看>>
一文了解强化学习
查看>>
CART 分类与回归树
查看>>
seq2seq 的 keras 实现
查看>>
seq2seq 入门
查看>>
什么是 Dropout
查看>>
用 LSTM 做时间序列预测的一个小例子
查看>>
用 LSTM 来做一个分类小问题
查看>>
详解 LSTM
查看>>
按时间轴简述九大卷积神经网络
查看>>
详解循环神经网络(Recurrent Neural Network)
查看>>
为什么要用交叉验证
查看>>
用学习曲线 learning curve 来判别过拟合问题
查看>>
用验证曲线 validation curve 选择超参数
查看>>
用 Grid Search 对 SVM 进行调参
查看>>