|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑
6 y$ i0 k2 P9 @, |
5 F) U5 h1 l' V& B' ^" O8 m一、启动服务4 s5 O4 d. H( m! y. m
如果没有安装,可以使用yum install firewall7 W% @# m. J/ l: C( Q" T- |% v
系统默认是已经安装了,但是没有启动- K& E4 O l% n. t/ c
1、开机自启动+ C( ~/ h# J) Z6 S: `+ i
systemctl enable firewalld
$ k) l" y E% z2、启动服务
; r* D9 V3 b: esystemctl start firewalld
$ Y9 @) O* y' \' t6 q6 C8 Q2 ^二、向防火墙添加可以外部访问的端口+ F7 S- u0 O I( H
firewall-cmd --zone=public --add-port=80/tcp --permanent
6 m5 n$ w& a- W0 ]. Z以下是常用的端口
n* ?0 B" c j9 f! Ffirewall-cmd --zone=public --add-port=443/tcp --permanent/ [ k4 S1 K% N( s$ C9 u
firewall-cmd --zone=public --add-port=22/tcp --permanent
% I3 W& }( ^4 [1 u) u! c1、如果需要添加一段端口的话,使用以下命令9 k/ D" Q) l8 M) q: ]3 Z; {
firewall-cmd --zone=public --add-port=8000-8100/tcp --permanent# |5 V5 h* W, \" j
这儿是指添加101个端口
0 `% |5 X7 t8 g; j( p& D% {三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent
+ @! f7 a0 @' Q具体的服务名称在以下路径里有一个文件就是一个service 名称
& w+ F1 D* c. ]3 o# ?, @$ m/usr/lib/firewalld/services+ i) W$ F$ ?% l8 W- t$ q& S
( D' a! y0 D" Q! {2 B& \四、添加完端口之后需要让防火墙生效
; G; q" i+ n7 x. E& q1、重新加载
7 R: B3 X. A/ g* i$ Nfirewall-cmd --reload" v0 b+ X2 r8 I3 l) R# K
2、查看当前已经开放的端口: k/ J. D$ n. [5 O2 c5 U
firewall-cmd --list-ports
; m+ \# ^, q5 |firewall-cmd --list-all
! S2 w! `3 ^ b& |2 g3、删除某个不用的端口3 }$ Q5 ^- h. I( s' {! F2 d
firewall-cmd --zone=public --remove-port=8084/tcp --permanent
9 D& ^4 @% W" W* b- [注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的
4 g1 X: n# R% m
) Z% X% L' u, g/ R! q7 R' p) x. z7 A4 u7 k4 F
& U! x; D; g) P$ X' e e% c! G
其他常用命令& B4 p* a' c _7 [, _
* `; l- b2 F$ ^$ }, v
3 `) L: _4 X- ? k; N- firewall-cmd --list-all-zones #查看所有的zone信息: \1 |7 s, L8 j9 T
- firewall-cmd --get-default-zone #查看默认zone是哪一个/ {+ Q; ` I; o5 @8 N3 @
- firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
7 Y' B6 p# Z e) f/ n - firewall-cmd --add-service=http #暂时开放http
9 S2 E4 Q0 w: t, x2 ]( f' A/ r. L - firewall-cmd --permanent --add-service=http #永久开放http
4 e; r# ^; P5 `! T8 _$ U - firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口
7 |7 V4 q! N+ j - firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务! \3 n( [( m+ w: p
- firewall-cmd --reload #重新加载配置# p K$ y, C+ `4 w- R2 Z, S% Q
- systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 ! M+ S9 k, ^! R3 S" J
* S+ |; s I& q* d% n. O$ ~* j
- C& A4 k4 a9 {1 A
2 R7 c' N! `: ?1 ~; p& K7 A2 M7 P, A- ?8 P, V. B2 T
$ i6 ^: G! s, O) R7 g* J- j# _+ S- k
& L( ], L3 j! ]9 y
& j1 R& B. I, h5 Z) l# e% Z
4 [ P* d9 N0 n7 W( @ p
8 Z9 c4 z, l: W4 ^3 Z) R F1 T
) ]* D5 r$ w0 e |
|