Centos 7防火墙策略配置指南

—— 清听凌雪慕忆

@

1. 开启防火墙

1.1 user切换到root用户

[user@localhost ~] su root
密码:
[root@localhost home]# cd ~
[root@localhost ~]#

1.2 查看防火墙服务状态

 systemctl status firewalld

1.3 查看firewall的状态

 systemctl firewall state 或 firewall-cmd --state

1.4 启动/关闭防火墙

# 启动防火墙
systemctl start firewalld # 重启防火墙
systemctl restart firewalld 或 systemctl reload firewalld # 关闭
systemctl stop firewalld # 设置开机自启动防火墙
systemctl enable firewalld.service # 查看防火墙设置开机自启是否成功
systemctl is-enabled firewalld.service

如下图所示,即为防火墙设置开机自启是否成功。

2. 防火墙端口配置

在开启防火墙之后,我们有些服务就会访问不到,是因为服务的相关端口没有打开。

2.1 查看已开启端口

 firewall-cmd --list-ports 或 netstat -ntlp

2.2 查看防火墙规则

 firewall-cmd --list-all

2.3 查看允许协议

 firewall-cmd --list-protocals

2.4 开启、关闭、查询端口

本次以开启80端口为例。

# 查询端口是否开放
firewall-cmd --query-port=80/tcp

命令规则:

--permanent:表示永久生效,若没有重启失效;

-- zone :表示作用域

--add-port=80/tcp 表示添加端口,格式为端口/通讯协议

开启端口的关键字:add

移除的关键字:remove

# 永久增加/开启80端口
firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=998/tcp
firewall-cmd --add-port=999/tcp
# 重启防火墙服务
systemctl restart firewalld
# 删除端口
firewall-cmd --remove-port=999/tcp

3. 防火墙ip指向限制配置

3.1 允许指定ip访问所有流量

允许ip访问的关键字:accept

阻止ip访问的关键字:drop

# 开启192.168.43.88访问
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.43.100" accept" # 重启防火墙服务
firewall-cmd --reload # 禁止192.168.43.88访问
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="192.168.43.100" drop"

3.2 允许指定ip访问指定端口

# 允许IPV4 Ip是8.8.8.8 连接端口80 accept表示允许使用
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="8.8.8.8" port protocol="tcp" port="80" accept" # 允许IPV4 Ip是10.168.186.25 连接端口22 accept表示允许使用
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.168.186.25" port protocol="tcp" port="22" accept" firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.168.186.25,10.168.186.211" port protocol="tcp" port="3306" accept" firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.168.186.0/24" port protocol="tcp" port="22" accept" # 以上运行完后提示success则表示配置成功

3.3 允许指定ip访问指定协议

# 阻止ICMP包
firewall-cmd --permanent --add-rich-rule="rule protocol value="icmp" drop" # 允许特定地址通过icmp
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="120.12.23.136" protocol value="icmp" accept"

3.4 允许指定ip访问指定服务

# 允许特定地址可以访问SSH服务
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.168.186.25" service name="ssh" accept"

3.5 防火墙移除某个服务

 firewall-cmd --remove-rich-rule="rule family="ipv4" source address="10.168.186.25" service name="ssh" drop"
#从允许通过防火墙的列表里移除SSH服务
sudo firewall-cmd --remove-service=ssh --permanent firewall-cmd --remove-rich-rule="rule protocol value="icmp" drop" --permanent

3.6 其他

# 重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload # 加入白名单
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="8.8.8.8" port protocol="tcp" port="80" accept" # 查看规则
firewall-cmd --list-rich-rules
# 显示是
rule family="ipv4" source address="8.8.8.8" port port="80" protocol="tcp" accept
# 删除规则
firewall-cmd --permanent --remove-rich-rule="rule family="ipv4" source address="8.8.8.8" port port="80" protocol="tcp" accept" # 注意端口添加,删除后要更新防火墙
firewall-cmd --reload

4. 获取所有支持的服务

firewall-cmd --get-services

4.1 增加、删除和服务

# 增加服务 (临时增加)
firewall-cmd --add-service=http
# 删除服务 (临时删除)
firewall-cmd --remove-service=http
# 查询服务
firewall-cmd --query-service=http

>“不是看到了希望才去坚持,而是坚持了才能看到希望”

Centos 7防火墙策略配置指南的更多相关文章

  1. 【转】CentOS 6 服务器安全配置指南

    原文连接: CentOS 6 服务器安全配置指南(通用) Linux 是一个开放式系统,可以在网络上找到许多现成的程序和工具,这既方便了用户,也方便了黑客,因为他们也能很容易地找到程序和工具来潜入 L ...

  2. [转帖]CentOS 6 服务器安全配置指南(通用)

    CentOS 6 服务器安全配置指南(通用) http://seanlook.com/2014/09/07/linux-security-general-settings/  发表于 2014-09- ...

  3. CentOS 7防火墙服务FirewallD指南

    CentOS 7防火墙服务FirewallD指南 作者:chszs,未经博主同意不得转载.经许可的转载需注明作者和博客主页:http://blog.csdn.net/chszs 防火墙是一种位于内部网 ...

  4. CentOS 7 防火墙端口配置

    CentOS 7 防火墙端口配置查看防火墙是否开启systemctl status firewalld 若没有开启则开启systemctl start firewalld 查看所有开启的端口firew ...

  5. Linux Centos 开启防火墙 FirewallD is not running

    转载自:http://www.z4zr.com/page/1006.html CentOS7用firewall命令“替代”了iptables.在这里我们需要区分“iptables服务”和“iptabl ...

  6. 双机冗余备份和负载均衡策略(Mysql Cluster入门安装配置指南)

    MySQL Cluster 是MySQL适合于分布式计算环境的高实用.高冗余版本.它采用了NDB Cluster 存储引擎,允许在1个 Cluster 中运行多个MySQL服务器.MySQL Clus ...

  7. abbix通过JMX监控Tomcat(被监控端安装Tomat的服务器防火墙策略iptables配置)

    原文地址:http://jaychang.iteye.com/blog/2214830 一.目前的环境 被监控端192.168.153.191 /usr/local/tomcat 下载了catalin ...

  8. CentOS 7 个性化配置指南

    博客原文地址:CentOS 7 个性化配置指南 - Wind Spirit 0x00 前言 该教程主要安装了如下软件包 iptables MySQL PHP PHP 相关模块 Nginx 主要配置实现 ...

  9. CentOS 7 防火墙和端口配置

    centos 7 防火墙和端口配置--解决 RHEL 7/ CentOS 7/Fedora 出现Unit iptables.service failed to load # 第一步,关闭firewal ...

随机推荐

  1. innodb和myisam

    在Mysql数据库中,常用的引擎主要就是2个:Innodb和MyIASM.这篇文章将主要介绍这两个引擎,以及该如何去选择引擎,最后在提一下这2种引擎所使用的数据结构是什么. 首先介绍一下Innodb引 ...

  2. spring-boot-learning-Web开发知识

    1).创建SpringBoot应用,选中我们需要的模块: 2).SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运行起来 3).自己编写业务代码: 文件名的功能 x ...

  3. 如何运行exe文件

    有三种方式 第一种:找到所在文件双击运行. 第二种:在命令行里面运行所在文件夹的位置,在输入文件名. 第三种:加到环境变量里面执行

  4. java中如何获得src路径

    代码 解析: 类名.class.get类加载器().getResourceAsStream("文件名"); 案例代码: Demo.class.getClassLoader().ge ...

  5. Linux ftp服务器部署(最简单的ftp教程)

    之前在阿里云领了一个ECS服务器(顺便说一句,白嫖的,真香~),就想着做点什么,然后试着做个 ftp 站点,因为第一次尝试,结果走了不少弯路.最后终于完成了,研究了两天(哎~,脑壳笨没办法)就想着记录 ...

  6. 解决 css 浮动后 父元素高度失效问题

    应用场景 子元素标签使用 浮动后,会出现浮在父元素上层,脱离了.导致父元素没办法根据子元素的高度而变化,提供以下解决方案. 解决代码 把 '.clearfix ' Class 样式添加到 父元素即可. ...

  7. 【Weex笔记】-- Animate.css的使用

    animate.css是一个使用CSS3的animation制作的动画效果的CSS集合,里面预设了很多种常用的动画,且使用非常简单.本文将详细介绍animate.css的使用. 一,安装辅助依赖 np ...

  8. 每日所学之自学习大数据的Linux环境的配置

    今天开始配置环境,因为下载镜像文件需要很长时间,加上训练,所以Linux环境之配置了一半 VMware下载及安装教程(Window) 在安装虚拟机时需要下载镜像文件 下面是我下载的镜像文件的地址 Ce ...

  9. 关于websocket 的原理与应用

    WebSocket是HTML5出的东西(协议),也就是说HTTP协议没有变化,或者说没关系,但HTTP是不支持持久连接的(长连接,循环连接的不算) http协议和websocket协议的关系如图 We ...

  10. 掌握JavaScript中的迭代器和生成器,顺便了解一下async、await的原理

    掌握JavaScript中的迭代器和生成器,顺便了解一下async.await的原理 前言 相信很多人对迭代器和生成器都不陌生,当提到async和await的原理时,大部分人可能都知道async.aw ...