浅谈简单使用CentOS7防火墙及开放端口

2019-10-09 16:45:36王振洲

嗯嗯, 你会发现在已经在运行啦, 就是这样子哦, 还要多说一句, 那如果你对 CentOS7 或 RedHat7 足够了解的话, 你会很熟悉 systemctl是个什么东东, 她呀, 就是系统服务管理工具, 是系统工具, 用来管理系统服务的, 就这么理解就可以不会错的! 之前的CentOS版本都是使用的 service 进行系统服务管理的哦, 关于更多 systemctl 或 service 的信息请动手 百度 或 Google, 我们简单的说完了, 查看防火墙状态以及怎么启动防火墙, 那我们的就来说说怎么来开放端口!

查看防火墙开放端口列表

防火墙的端口管理是通过 firewall-cmd 命令来进行管理的哦, 这一点必须要明确, 也是你管理系统端口的关键所在, 嗯嗯, 是她, 是她, 就是她, 她就是这么的如此风骚, 哈哈, 你拿她一点办法都没有, 不你可以把她玩的服服贴贴的, 什么呀!你想多了, 我什么也没有说哦, 是你自己这样想的~

shell

# firewall-cmd --list-all

execute

[root@localhost ~]# firewall-cmd --list-all
public
 target: default
 icmp-block-inversion: no
 interfaces:
 sources:
 services: ssh dhcpv6-client
 ports:
 protocols:
 masquerade: no
 forward-ports:
 source-ports:
 icmp-blocks:
 rich rules:

你会发现它如此空旷, 没有任何开放端口, 嗯, 这是一台新装linux系统, 你的也许会跟我这个一样, 也许会不一样, 这个要注意一下

添加开放端口到防火墙

比如我们让80端口开放, 其它用户可以访问我的站点

shell

// Step1: 加入开放端口到配置文件

# firewall-cmd --zone=public --add-port=80/tcp --permanent

--zone=public 添加时区

--add-port=80/tcp 添加端口

--permanent 永久生效

// 加载防火墙新配置文件( 以 root 身份输入以下命令,重新加载防火墙,并不中断用户连接,即不丢失状态信息. )

firewall-cmd --reload

再次查看防火墙开放端口列表

shell

# firewall-cmd --list-all

execute

[root@localhost ~]# firewall-cmd --list-all
public
 target: default
 icmp-block-inversion: no
 interfaces:
 sources:
 services: ssh dhcpv6-client
 ports: 80/tcp
 protocols:
 masquerade: no
 forward-ports:
 source-ports:
 icmp-blocks:
 rich rules:

这次你会发现 ports 对应的多了一个 80/tcp, 那说明就已经添加到了防火墙开放列表中了

1、firewalld的基本使用

启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld

2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。

启动一个服务:systemctl start firewalld.service