|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑
( p0 y$ V+ b% s* d' v: P1 E
+ w/ {. P1 Y+ Q! j5 m" ~一、启动服务# Q3 Y7 p% D2 E Q& _: I# C
如果没有安装,可以使用yum install firewall
9 O. L2 K$ h- j% q& Y6 K系统默认是已经安装了,但是没有启动
. X) A$ z: y& h) U7 U0 b/ y1、开机自启动* w, s; I2 t! Q( p$ J
systemctl enable firewalld6 b& U, ]- I4 V
2、启动服务
. o* ~3 ^ C7 G/ N* L9 esystemctl start firewalld( P3 O5 h; [5 o X5 G: M
二、向防火墙添加可以外部访问的端口7 n5 g( z# c6 c& C) t% p* j0 ?6 n
firewall-cmd --zone=public --add-port=80/tcp --permanent 2 N9 P& r; o$ `% T
以下是常用的端口
2 Z* q/ M$ O& m* mfirewall-cmd --zone=public --add-port=443/tcp --permanent
9 K @; m2 l/ h tfirewall-cmd --zone=public --add-port=22/tcp --permanent
( z- T1 U( C" @- U; q7 a% @1、如果需要添加一段端口的话,使用以下命令 G- |' k1 A3 D; L9 ]3 w1 |5 j
firewall-cmd --zone=public --add-port=8000-8100/tcp --permanent
* \7 `7 a- D, W. ?2 G5 j这儿是指添加101个端口& ?) H! u4 k! ]" [$ c
三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent" n( e$ k0 \, h; k |4 K" E
具体的服务名称在以下路径里有一个文件就是一个service 名称
9 }' `& h2 F; Y) f K/usr/lib/firewalld/services
7 l0 C# \ M( ]( r7 X# J& O6 {( b5 c2 t' I) t% n! l! r
四、添加完端口之后需要让防火墙生效
# a$ a0 c* b6 Z1 u* J7 o1、重新加载
0 O' I7 N2 x8 z# D% \* Efirewall-cmd --reload( ?/ s, M# g* ~! L2 M/ }1 P! q. o2 ~' }
2、查看当前已经开放的端口0 `% y6 u7 F" w9 e" Z1 F: X% C _4 F
firewall-cmd --list-ports; v2 k* D/ W7 h
firewall-cmd --list-all
: m* v7 x- b: a! b$ ~3、删除某个不用的端口
: S. R( {* k! C; K5 w; Wfirewall-cmd --zone=public --remove-port=8084/tcp --permanent1 w" O h% O' h
注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的3 z6 O4 e8 b. S& c% d1 d* R
% V4 M) ?3 P8 |! \6 t
! r9 O- r* t4 |5 p6 D# D2 r# l/ @' J4 t! Y: r/ V
其他常用命令
4 U6 J6 L3 c" l: V( @
9 g" b* }& ^+ I" g( N3 n2 U! A* a: }" q6 \
- firewall-cmd --list-all-zones #查看所有的zone信息
; o! U1 Q* X; c* { - firewall-cmd --get-default-zone #查看默认zone是哪一个
# ]6 a" W9 g) p8 ^ - firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
6 m4 j, C b! J- w - firewall-cmd --add-service=http #暂时开放http) Y/ \+ V5 w( ^# e& a
- firewall-cmd --permanent --add-service=http #永久开放http; _5 ]4 w2 U& n- B* u
- firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口. Q! ?. y& q/ R0 r2 h
- firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务
; s! @7 D I8 m% U; a) J6 R - firewall-cmd --reload #重新加载配置& \$ A7 E3 {1 X( Y
- systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 ' P4 ]: C: z7 Z3 y
8 G' m6 |( l- Q& _) h
3 | {+ [. C' ?; e; W
. K9 u* ^3 A4 A/ i& _, S2 F9 D$ D1 W: |1 J8 Y9 t
8 O# M3 h; n+ G+ q' P6 z; j+ k% j2 Z) B O* a1 a# a
4 {1 \2 M: ^' ~- Q
- U& G3 S$ z t D8 a
$ U ]0 j# I m9 y1 L5 C! h, {3 [0 x: ~- ~
- D7 g6 f* ^4 r1 U |
|