架构师_程序员

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 79|回复: 1

[linux] CentOS7 查看和关闭防火墙

[复制链接]
跳转到指定楼层
楼主
发表于 2019-7-5 11:25:08
zu
CentOS 7.0默认使用的是firewall作为防火墙


查看防火墙状态

  1. firewall-cmd --state
复制代码

或者

  1. systemctl status firewalld.service
复制代码


running表示防火墙开启状态,not running表示防火墙未启动。

开启防火墙

  1. systemctl start firewalld.service
复制代码


关闭防火墙

  1. systemctl stop firewalld.service
复制代码


禁止firewall开机启动

  1. systemctl disable firewalld.service
复制代码


防火墙随系统开启启动

  1. systemctl enable firewalld.service
复制代码

重启或重新加载防火墙配置文件,是新的策略生效。

  1. service firewalld restart
  2. firewall-cmd --reload
复制代码



使用firewall-cmd命令设置规则

1、查看状态

firewall-cmd --state

2、获取活动的区域

firewall-cmd --get-active-zones

3、 获取所有支持的服务

firewall-cmd --get-service

4、应急模式(阻断所有的网络连接)

firewall-cmd --panic-on #开启应急模式

firewall-cmd --panic-off #关闭应急模式

firewall-cmd --query-panic #查询应急模式

5、修改配置文件后 使用命令重新加载

firewall-cmd --reload

6、启用某个服务/端口

firewall-cmd --zone=public --add-service=https #临时

firewall-cmd --permanent --zone=public --add-service=https #永久

firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp #永久

firewall-cmd --zone=public --add-port=8080-8081/tcp #临时

如果是要删除,直接修改成remove-service或者remove-port

7、查看开启的端口和服务

[root@master ~]# firewall-cmd --permanent --zone=public --list-services
ssh dhcpv6-client
[root@master ~]# firewall-cmd --permanent --zone=public --list-ports
2888/tcp 3888/tcp 2181/tcp 8088/tcp 16010/tcp 9870/tcp

firewall-cmd --permanent --zone=public --list-services #服务空格隔开 例如 dhcpv6-client https ss

firewall-cmd --permanent --zone=public --list-ports #端口空格隔开 例如 8080-8081

在每次修改 端口和服务后 /etc/firewalld/zones/public.xml 文件就会被修改。

8、设置某个ip 访问某个服务

firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.122.0/24" service name="http" accept" #ip 192.168.122.0/24 访问 http


总结

防火墙预定义的服务配置文件是xml文件,目录在 /usr/lib/firewalld/services/; 在 /etc/firewalld/services/ 这个目录中也有配置文件,但是/etc/firewalld/services/目录优先于 /usr/lib/firewalld/services/ 目录。

(完)





上一篇:java 用zipInputStream 解压嵌套文件 (含空文件夹)
下一篇:一文彻底明白linux中的selinux到底是什么
帖子永久地址: 

架构师_程序员 - 论坛版权1、本主题所有言论和图片纯属会员个人意见,与本论坛立场无关
2、本站所有主题由该帖子作者发表,该帖子作者与架构师_程序员享有帖子相关版权
3、其他单位或个人使用、转载或引用本文时必须同时征得该帖子作者和架构师_程序员的同意
4、帖子作者须承担一切因本文发表而直接或间接导致的民事或刑事法律责任
5、本帖部分内容转载自其它媒体,但并不代表本站赞同其观点和对其真实性负责
6、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意
7、架构师_程序员管理员和版主有权不事先通知发贴者而删除本文

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
沙发
 楼主| 发表于 2019-7-5 13:16:14
命令行修改防火墙策略,仍需重启firewalld.service或重新加载防火墙配置文件

  1. firewall-cmd --permanent --add-port=9527/tcp    插入防火墙规则,放通9527端口。
  2. success

  3. #命令执行成功同时,在/etc/firewall/zones/public.xml中自动生成该规则。
  4. <zone>
  5.   <short>xx.</short>
  6.   <description>xxx.</description>
  7.   <port protocol="tcp" port="9527"/>
  8. </zone>

  9. service firewalld restart
  10. firewall-cmd --reload         #重启或重新加载配置文件,使配置生效   
  11. firewall-cmd --list-all
  12. firewall-cmd --permanent --query-port=9527/tcp    #查询刚插入的规则是否生效
复制代码


firewall-cmd --zone=public --add-port=80/tcp --permanent    添加防火墙规则;

firewall-cmd --reload    重新加载防火墙;

firewall-cmd --permanent --zone=public --add-masquerade    允许内网上网;

[root@master ~]# firewall-cmd --list-all
public (active)
  target: default
  icmp-block-inversion: no
  interfaces: ens192
  sources:
  services: ssh dhcpv6-client
  ports: 2888/tcp 3888/tcp 2181/tcp 8088/tcp 16010/tcp 9870/tcp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

码农网,只发表在实践过程中,遇到的技术难题,不误导他人。
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

免责声明:
码农网所发布的一切软件、编程资料或者文章仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。

Mail To:help@itsvse.com

QQ|Archiver|手机版|小黑屋|架构师 ( 鲁ICP备14021824号-2 )|网站地图

GMT+8, 2019-7-18 06:14

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表