首先查看firewall的状态:
firewall-cmd --state
当前状态为关闭
[root@localhost ~]# firewall-cmd --state
not running
查看firewall服务状态:
systemctl status firewalld
出现Active: active (running)切高亮显示则表示是启动状态。
出现 Active: inactive (dead)灰色表示停止,看单词也行。
防火墙操作命令
启动firewall:
systemctl start firewalld.service
关闭firewall:
systemctl stop firewalld.service
开机自启:
systemctl enable firewalld.service
关闭开机自启:
systemctl disable firewalld.service
注销:(该服务在系统重启的时候不会启动)
systemctl mask firewalld.service
重启防火墙:
systemctl restart firewalld.service
检查防火墙状态是否打开:
firewall-cmd --state
查看防火墙设置开机自启是否成功:
systemctl is-enabled firewalld.service;echo $?
开机自启成功
enabled
0
--------
开机自启关闭
disabled
1
以上就是开启防火墙相关步骤
开启特定端口
在开启防火墙之后,我们有些服务就会访问不到,是因为服务的相关端口没有打开。
在此以打开80端口为例
命令:
开端口命令:firewall-cmd --zone=public --add-port=80/tcp --permanent
重启防火墙:systemctl restart firewalld.service
命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
如图,可看到开启端口成功:
[root@localhost ~]# firewall-cmd --zone=public --add-port=80/tcp --permanent
success
查询端口是否开放
firewall-cmd --query-port=8080/tcp
如果不放心,可以通过命令:
netstat -ntlp 或 firewall-cmd --list-ports
查看开启的所有端口,具体如图 (Local Address 本地地址和开放端口)
[root@localhost ~]# netstat -ntlp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:111 0.0.0.0:* LISTEN 1/systemd
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 6945/sshd
tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 7183/master
tcp6 0 0 :::111 :::* LISTEN 1/systemd
tcp6 0 0 :::22 :::* LISTEN 6945/sshd
tcp6 0 0 ::1:25 :::* LISTEN 7183/master
移除端口
firewall-cmd --permanent --remove-port=8080/tcp
重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;
网友评论