阅读约 2 分钟
241 字
总结 CentOS 中firewall-cmd常用命令
安装指令
安装firewalld 防火墙
开启服务
1
|
systemctl start firewalld.service
|
关闭防火墙
1
|
systemctl stop firewalld.service
|
开机自动启动
1
|
systemctl enable firewalld.service
|
关闭开机制动启动
1
|
systemctl disable firewalld.service
|
使用firewall-cmd 命令
查看状态
1
|
firewall-cmd --state #running 表示运行
|
获取活动的区域
1
|
firewall-cmd --get-active-zones
|
这条命令将用以下格式输出每个区域所含接口:: ..: ..
获取所有支持的服务
1
|
firewall-cmd --get-service
|
在不改变状态的条件下重新加载防火墙:
启用某个服务
1
2
3
|
firewall-cmd --zone=public --add-service=https //临时
firewall-cmd --permanent --zone=public --add-service=https //永久
|
开启某个端口
1
2
3
|
firewall-cmd --permanent --zone=public --add-port=8080-8081/tcp //永久
firewall-cmd --zone=public --add-port=8080-8081/tcp //临时
|
使用命令加载设置
查看开启的端口和服务
1
2
3
|
firewall-cmd --permanent --zone=public --list-services //服务空格隔开 例如 dhcpv6-client https ss
firewall-cmd --permanent --zone=public --list-ports //端口空格隔开 例如 8080-8081/tcp 8388/tcp 80/tcp
|
设置某个ip 访问某个服务
1
2
3
|
firewall-cmd --permanent --zone=public --add-rich-rule="rule family="ipv4" source address="192.168.0.4/24" service name="http" accept"
ip 192.168.0.4/24 访问 http
|
删除上面设置的规则
1
|
firewall-cmd --permanent --zone=public --remove-rich-rule="rule family="ipv4" source address="192.168.0.4/24" service name="http" accept"
|
检查设定是否生效
1
2
|
iptables -L -n | grep 21
ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:21 ctstate NEW
|
执行命令
1
|
firewall-cmd --list-all
|
显示:
1
2
3
4
5
6
7
8
9
|
public (default)
interfaces:
sources:
services: dhcpv6-client ftp ssh
ports:
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
|
查询服务的启动状态
1
2
3
4
5
6
7
8
|
firewall-cmd --query-service ftp
yes
firewall-cmd --query-service ssh
yes
firewall-cmd --query-service samba
no
firewall-cmd --query-service http
no
|
自行加入要开放的 Port
1
2
3
4
5
6
7
8
9
10
11
|
firewall-cmd --add-port=3128/tcp
firewall-cmd --list-all
public (default)
interfaces:
sources:
services: dhcpv6-client ftp ssh
ports: 3128/tcp
masquerade: no
forward-ports:
icmp-blocks:
rich rules:
|
除特殊声明外,本博客一律使用以下协议进行授权 「
署名 - 非商业性使用 - 禁止演绎 4.0
」
下一篇