|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑 0 I% _ |5 }" _" f* o
1 R! G& K' y( u$ J
一、启动服务
3 f4 l. e" Z) q如果没有安装,可以使用yum install firewall
' u3 Q/ D5 J0 W) {! S0 l系统默认是已经安装了,但是没有启动, r; g7 L) h7 L6 ]8 T) d/ x' `
1、开机自启动 K; R! H0 }6 c5 x( _# H9 e: L3 t" O
systemctl enable firewalld
3 s5 p y2 W1 p9 j( G2、启动服务
. C8 v3 I: h' C: Hsystemctl start firewalld
# l* \( A# X6 @, m M6 b8 m7 @二、向防火墙添加可以外部访问的端口
# m) ~4 I& k) O' j8 tfirewall-cmd --zone=public --add-port=80/tcp --permanent
( { `- j: |) R以下是常用的端口1 J+ |+ U8 m9 ~. Y% _% [, r
firewall-cmd --zone=public --add-port=443/tcp --permanent) N7 N" ^" J0 @
firewall-cmd --zone=public --add-port=22/tcp --permanent8 t2 u r) k0 o
1、如果需要添加一段端口的话,使用以下命令/ W, S' B4 o' l( N/ K
firewall-cmd --zone=public --add-port=8000-8100/tcp --permanent
$ S8 p0 t T( ^+ ~5 A' x这儿是指添加101个端口" ~1 [( V' B ^# I: @
三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent
8 Y7 K) n o( ], O具体的服务名称在以下路径里有一个文件就是一个service 名称
- n8 p5 R/ x4 |' X- F/usr/lib/firewalld/services3 O1 G2 s% L5 _. n% `0 w" d5 ?7 i8 o
1 g4 a5 \6 x* `/ a四、添加完端口之后需要让防火墙生效3 r1 d( R6 p2 b: i+ v
1、重新加载
; `& i) p; a6 |* yfirewall-cmd --reload
6 Q! C/ g' @- i' h2、查看当前已经开放的端口
- ~& r1 E8 A) ~3 n' K) Rfirewall-cmd --list-ports, p6 W L# w; h) N! w
firewall-cmd --list-all* q& Q' [ H8 O" F
3、删除某个不用的端口
) }! l& T9 `4 T' Hfirewall-cmd --zone=public --remove-port=8084/tcp --permanent% u' P% X d5 V! f9 K
注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的
& N. S; p0 q' V- |; C6 C# H! T$ V% u' ?' |! L: q
+ q& [. d5 G4 L$ f: s6 x
, a2 G; s7 u8 H$ D& |
其他常用命令
4 Q+ d- ~& f0 ~$ X {, N$ r0 ^9 N2 o, q
) ^$ ]3 D/ ^% R8 D- firewall-cmd --list-all-zones #查看所有的zone信息
7 J2 ]/ p4 i, o9 ]# x - firewall-cmd --get-default-zone #查看默认zone是哪一个' _8 \# B$ H- O* H6 T3 K/ |7 d
- firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal" R) b, N) `) ]9 Y% W! G
- firewall-cmd --add-service=http #暂时开放http& g8 Q3 ~/ o. \: Z% a6 D
- firewall-cmd --permanent --add-service=http #永久开放http
/ s; L0 G( P, m2 B; D& i - firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口4 F, y' D# |( O1 X' W J4 ]
- firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务; ]0 a1 \4 V, I
- firewall-cmd --reload #重新加载配置( F V& r" m* {7 k T% Z" m
- systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码
3 I% @0 l; b+ ]2 F# y" o* X
3 r3 M; t0 l' V2 n5 U
4 c# F. J- C1 D' |$ q( K) h! {$ \) U) M, O/ F
+ o2 U9 b, @: [+ d, O# I
& M* Y2 y0 \/ P7 J: b, t6 X. z
0 ^) t$ T$ Q) x$ t! b" [% z
) L. D! D, {& g, V" l' Z0 i0 {, t) ^
) T$ U% N+ w% y! Z& S' { w
( r4 [/ ~& l8 z0 x o7 o. }( `' U
* S/ Q/ f! J3 p* Q' Z& b# X0 w, m' ]9 a
|
|