|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑
; X, s) h6 k" t9 O: k2 a5 x
1 ?7 r1 e1 i" H& _/ U+ B% g一、启动服务- }& C2 b, I* f
如果没有安装,可以使用yum install firewall
0 R; O( `2 M! E; R系统默认是已经安装了,但是没有启动
% J/ |7 y0 ?' z# n" V% X9 Q1、开机自启动& B: K: X$ M! l+ |! M0 |+ W
systemctl enable firewalld
* P% I; T- o6 U. \9 |2、启动服务+ W/ {9 M2 _ [* G3 z
systemctl start firewalld" X8 K2 z( G6 m6 G5 T2 }
二、向防火墙添加可以外部访问的端口, b, K% b: w6 m7 o( j$ ~# K! H
firewall-cmd --zone=public --add-port=80/tcp --permanent
, ?$ t6 n2 I5 E; U0 ^* k- @7 R以下是常用的端口
( T3 x1 \+ f# c4 K* sfirewall-cmd --zone=public --add-port=443/tcp --permanent, d+ J* Y: P; v6 H) S/ e8 B
firewall-cmd --zone=public --add-port=22/tcp --permanent
4 y, o% }) y% o3 R1、如果需要添加一段端口的话,使用以下命令# R( h9 M: ]* Z
firewall-cmd --zone=public --add-port=8000-8100/tcp --permanent* {5 o9 l6 ~7 B- e& t) b, `/ u* S
这儿是指添加101个端口
/ I) c7 T( v: F3 b# p; m; u三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent1 ^* v9 W' y9 }2 ~- O
具体的服务名称在以下路径里有一个文件就是一个service 名称
; n& G2 }. D, X9 n/usr/lib/firewalld/services
( S7 K* t. q6 o% X8 g8 ]; S5 `+ L$ ^
四、添加完端口之后需要让防火墙生效9 c4 c; I/ ]9 Q7 H4 D& m
1、重新加载
; k V; p% s7 H& ]. M3 x: e1 q( L' ffirewall-cmd --reload2 i% Q4 R2 g) B" v( z: I
2、查看当前已经开放的端口5 n0 R: O0 O) [. u, s
firewall-cmd --list-ports& w; s! V2 `9 ?3 i
firewall-cmd --list-all$ D: M, ]3 @; R% \2 P3 c
3、删除某个不用的端口
2 [ A4 N; P' r0 g# jfirewall-cmd --zone=public --remove-port=8084/tcp --permanent* U z: H$ b6 S
注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的
?& _+ y: t+ t* `4 H
# u! n- {- u% g0 C1 r& K7 y5 L; P( r1 a) J S# t5 @
7 Y: m9 o% F# [! X/ h5 Q其他常用命令& w; X2 |. ?+ Z) E: T8 T: ~( h
3 X9 s, F) x- O3 y7 x. ?
2 q% ~7 Z( f3 a# J) q- firewall-cmd --list-all-zones #查看所有的zone信息
& M, W5 l% E/ T - firewall-cmd --get-default-zone #查看默认zone是哪一个
8 |1 `( d7 H' u- h& _, m - firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
3 e/ z2 u0 O2 o- K ] - firewall-cmd --add-service=http #暂时开放http
/ _. n7 p% l) ]0 E - firewall-cmd --permanent --add-service=http #永久开放http
; P2 N) H5 ]7 f6 m' v+ \% T - firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口# @% D, k( s- x0 ]: x3 N
- firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务: d" b- x/ p/ p- @( o
- firewall-cmd --reload #重新加载配置
% u. c: T) B: ^- I% S4 i - systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 8 d& i b- x% M' ]2 q
+ v& c. \2 C3 B! z4 Y
- V9 c( K! m, L& d5 p( A' H: n2 G( c% F
. Q6 x. w9 Z9 v/ H) Z7 o, ], T; z* G; s1 k. l
0 {; ?) e: H* x, b0 O7 H6 I" d/ `; b* K* A9 W0 m5 w, F3 p1 I- G
2 z: N! I# S0 e3 r' P& F, Z
o$ q) S; f- J; d8 B* y8 V! C+ Q
8 U1 \4 y! d. q3 v
, |1 t8 \8 s% X: u5 v: u |
|