@@ -34,6 +34,15 @@ systemctl start firewalld # 启动
34
34
systemctl status firewalld # 或者 firewall-cmd --state 查看状态
35
35
systemctl disable firewalld # 停止
36
36
systemctl stop firewalld # 禁用
37
+
38
+ # 关闭服务的方法
39
+ # 你也可以关闭目前还不熟悉的FirewallD防火墙,而使用iptables,命令如下:
40
+
41
+ systemctl stop firewalld
42
+ systemctl disable firewalld
43
+ yum install iptables-services
44
+ systemctl start iptables
45
+ systemctl enable iptables
37
46
```
38
47
39
48
配置firewalld
@@ -61,11 +70,6 @@ firewall-cmd --zone=public --add-interface=eth0
61
70
62
71
# 设置默认接口区域,立即生效无需重启
63
72
firewall-cmd --set-default-zone=public
64
- ```
65
-
66
- 打开端口
67
-
68
- ```
69
73
70
74
# 查看所有打开的端口:
71
75
firewall-cmd --zone=dmz --list-ports
@@ -79,6 +83,79 @@ firewall-cmd --zone=work --add-service=smtp
79
83
80
84
# 移除服务
81
85
firewall-cmd --zone=work --remove-service=smtp
86
+
87
+ # 显示支持的区域列表
88
+ firewall-cmd --get-zones
89
+
90
+ # 设置为家庭区域
91
+ firewall-cmd --set-default-zone=home
92
+
93
+ # 查看当前区域
94
+ firewall-cmd --get-active-zones
95
+
96
+ # 设置当前区域的接口
97
+ firewall-cmd --get-zone-of-interface=enp03s
98
+
99
+ # 显示所有公共区域(public)
100
+ firewall-cmd --zone=public --list-all
101
+
102
+ # 临时修改网络接口(enp0s3)为内部区域(internal)
103
+ firewall-cmd --zone=internal --change-interface=enp03s
104
+
105
+ # 永久修改网络接口enp03s为内部区域(internal)
106
+ firewall-cmd --permanent --zone=internal --change-interface=enp03s
107
+ ```
108
+
109
+ 服务管理
110
+
111
+ ``` bash
112
+ # 显示服务列表
113
+ Amanda, FTP, Samba和TFTP等最重要的服务已经被FirewallD提供相应的服务,可以使用如下命令查看:
114
+
115
+ firewall-cmd --get-services
116
+
117
+ # 允许SSH服务通过
118
+ firewall-cmd --enable service=ssh
119
+
120
+ # 禁止SSH服务通过
121
+ firewall-cmd --disable service=ssh
122
+
123
+ # 打开TCP的8080端口
124
+ firewall-cmd --enable ports=8080/tcp
125
+
126
+ # 临时允许Samba服务通过600秒
127
+ firewall-cmd --enable service=samba --timeout=600
128
+
129
+ # 显示当前服务
130
+ firewall-cmd --list-services
131
+
132
+ # 添加HTTP服务到内部区域(internal)
133
+ firewall-cmd --permanent --zone=internal --add-service=http
134
+ firewall-cmd --reload # 在不改变状态的条件下重新加载防火墙
82
135
```
83
136
137
+ 端口管理
138
+
139
+ ``` bash
140
+ # 打开443/TCP端口
141
+ firewall-cmd --add-port=443/tcp
84
142
143
+ # 永久打开3690/TCP端口
144
+ firewall-cmd --permanent --add-port=3690/tcp
145
+
146
+ # 永久打开端口好像需要reload一下,临时打开好像不用,如果用了reload临时打开的端口就失效了
147
+ # 其它服务也可能是这样的,这个没有测试
148
+ firewall-cmd --reload
149
+
150
+ # 查看防火墙,添加的端口也可以看到
151
+ firewall-cmd --list-all
152
+ ```
153
+
154
+ 直接模式
155
+
156
+ ``` bash
157
+ # FirewallD包括一种直接模式,使用它可以完成一些工作,例如打开TCP协议的9999端口
158
+
159
+ firewall-cmd --direct -add-rule ipv4 filter INPUT 0 -p tcp --dport 9000 -j ACCEPT
160
+ firewall-cmd --reload
161
+ ```
0 commit comments