|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑
1 H% [2 J! t ?/ i2 `5 |; k/ U5 y7 _
一、启动服务
: s) C! t1 f6 r. v. {如果没有安装,可以使用yum install firewall
6 f3 M4 M6 n& R* L; k5 G+ M$ z系统默认是已经安装了,但是没有启动
& o3 i; q$ r+ |! E$ y8 U b9 r3 c/ N1、开机自启动
5 p0 z% B; I- @9 L X& V- Esystemctl enable firewalld R: b+ j$ l9 n6 [, ] l1 w
2、启动服务
. Q0 }5 r9 R3 D6 d; X( E: Esystemctl start firewalld
' @1 I4 v( N- e& Y1 }( {# I9 z二、向防火墙添加可以外部访问的端口 G* y+ d2 Y" J
firewall-cmd --zone=public --add-port=80/tcp --permanent f$ v& G& }+ J1 v* e/ x- Y4 i
以下是常用的端口, n2 \( E2 I5 A7 l
firewall-cmd --zone=public --add-port=443/tcp --permanent
! [ D* G) \( e$ _& L6 {firewall-cmd --zone=public --add-port=22/tcp --permanent( T' P' D3 R7 `
1、如果需要添加一段端口的话,使用以下命令9 _( W+ p1 Z; [+ z/ c
firewall-cmd --zone=public --add-port=8000-8100/tcp --permanent
: R4 P5 s* P6 h; X/ m; F这儿是指添加101个端口, [8 q# R! ]0 E; z
三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent9 U& i! I' e9 \% W, }
具体的服务名称在以下路径里有一个文件就是一个service 名称
: X) ]+ `; {+ K5 l# q- s+ u: Y/usr/lib/firewalld/services
/ p- E0 P7 [9 }' H9 A0 m2 f
7 y' C6 T2 g5 B( A! V% ~5 h l! `8 A3 t四、添加完端口之后需要让防火墙生效' q9 [! s8 l! O
1、重新加载
4 H" R. i1 m) r: b! Pfirewall-cmd --reload. S" p. j m5 f! {% q) j, S; C
2、查看当前已经开放的端口
0 K: b& z6 E. vfirewall-cmd --list-ports
4 f+ Y# d& K6 k- C- T4 k! nfirewall-cmd --list-all. r) w) G4 H; E: q" A; b' W
3、删除某个不用的端口3 c3 E9 N8 l; B0 ^) l% U B
firewall-cmd --zone=public --remove-port=8084/tcp --permanent
/ D, L6 \6 l; Z1 F: [1 X: @( I9 `注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的+ W9 F5 P+ j2 I& N# |
+ y5 ?5 H5 W, z) j* c2 w9 s% Y9 Y6 K+ `) z7 r% n
: W# V. E" t5 P9 l0 p4 Q其他常用命令9 w0 r" s! z7 K% \1 G6 `3 J
. N! j. H% K, C$ O2 N& y' y
- G$ q0 `* J6 o- firewall-cmd --list-all-zones #查看所有的zone信息6 C! x$ [. R- i( L/ f* }8 B7 e
- firewall-cmd --get-default-zone #查看默认zone是哪一个
* N7 e! D7 b x3 i+ S: f - firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
' z( |" C) e2 q+ G - firewall-cmd --add-service=http #暂时开放http
$ }5 @& J' O$ j* O; C. ~7 v - firewall-cmd --permanent --add-service=http #永久开放http
0 p8 q5 @5 H* c - firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口/ i- f5 [! ^, x
- firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务 t1 k, O4 G; H, H J2 P {' x
- firewall-cmd --reload #重新加载配置8 y/ I7 Z$ I6 v+ f
- systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码
( l8 W, m# d* r( _* V) N0 |4 O! {
" I2 i+ k- V0 r5 |; H4 c# j
0 A% |5 H9 v9 ^- b
5 K6 }, m. h4 {3 C( @( Z' v
9 G* P2 Z& L7 U4 G9 N7 H" T
3 w# k$ j3 p$ x* c7 L6 W0 {7 U+ o, L5 V+ e5 _9 Z
7 ^9 p/ H8 I/ _$ h6 S: _' c
3 T: ^. z) Q$ k) ^$ E5 c
4 i3 k _) \; |) f/ Y; H s4 a7 |; o5 p
" R% [$ e- m) M9 X* W |
|