|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑 ; Q4 W' ?9 w7 ?" Y+ N2 ~& V: A
" t+ ?: k& r7 }. b- l8 O
一、启动服务5 K# ]7 w) Z5 W) q2 L# X/ r9 O
如果没有安装,可以使用yum install firewall+ b: l7 @0 A' L4 ~3 V
系统默认是已经安装了,但是没有启动
5 P1 Z; k2 b/ s9 p( x3 R1、开机自启动: U; z* w U5 j3 E
systemctl enable firewalld
7 T% }0 |) Y& {! Z( k. H2、启动服务
8 M/ L' J8 f# wsystemctl start firewalld. `" [8 }$ M) }) ~* q
二、向防火墙添加可以外部访问的端口
~5 |0 J! E$ R8 N) R- kfirewall-cmd --zone=public --add-port=80/tcp --permanent
0 j E; G( J$ n- m0 K- ` E' R以下是常用的端口( u1 y8 v. I" z0 e
firewall-cmd --zone=public --add-port=443/tcp --permanent
$ a4 i/ ?; x, {firewall-cmd --zone=public --add-port=22/tcp --permanent
: u0 g: K) j" j' Y' p5 F1、如果需要添加一段端口的话,使用以下命令
8 L- a9 `* v$ V6 E3 Sfirewall-cmd --zone=public --add-port=8000-8100/tcp --permanent1 }" U) _" C9 I) B& t& x
这儿是指添加101个端口
6 B4 E0 b9 F# j5 u. ]4 G, M三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent) N' I U0 O' ^' L
具体的服务名称在以下路径里有一个文件就是一个service 名称
. D" [1 m) J* s6 p6 Q2 e5 N/usr/lib/firewalld/services8 Q* M7 w7 [, o$ |
9 s/ Y- n* I9 M四、添加完端口之后需要让防火墙生效
# G7 W. k7 C% ]9 m0 S1、重新加载
. P% w- o0 V% W" gfirewall-cmd --reload& e) @* U& }) V9 h5 @0 x/ T. r
2、查看当前已经开放的端口
O& i0 ? a& |0 ]firewall-cmd --list-ports
+ l/ z2 k' Z+ h4 z4 rfirewall-cmd --list-all$ d9 ^ i3 v: ^/ I+ X$ F
3、删除某个不用的端口: W1 v/ a2 ~0 i! b
firewall-cmd --zone=public --remove-port=8084/tcp --permanent
) w+ o+ }2 }& z5 Z, E注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的
. C, k- q( A* F6 l6 D( l( `, X4 F1 W$ E1 P
/ T4 a; i4 E" @! S) \ S: n$ F) p; L* O9 B
其他常用命令
/ f8 D' W7 S+ U: S/ B# f1 _9 d; E& c/ V4 V' j$ w$ V1 G
6 G9 a# j$ N; k% o- H" t* H& \3 n- firewall-cmd --list-all-zones #查看所有的zone信息
" s+ q6 f, K0 ~8 a* U - firewall-cmd --get-default-zone #查看默认zone是哪一个& ~7 x! K- q1 k" E
- firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
: ^1 ~7 E- S9 h. Y% A/ P/ O - firewall-cmd --add-service=http #暂时开放http
7 W8 X. M! G# l( Q z1 W1 \5 @7 ` - firewall-cmd --permanent --add-service=http #永久开放http8 a4 p, b' a4 ?
- firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口
, f6 P4 Z L+ M- H - firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务2 N- }5 c9 w7 e3 N$ }
- firewall-cmd --reload #重新加载配置
3 x' b/ I c3 V2 `4 o1 u - systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 6 g& A8 t+ _3 v' Y
* S* v/ u. i4 \1 A) D) g' j" t% z. }; f
8 Q% f( I: E" ]$ L% S' f3 n/ P6 }( K* B% @
2 s) ?* y$ Z! k* C" @/ F. q+ I, S2 D7 m% F3 _8 Z- N0 ]9 U: D T
1 W |8 o* ?& ?9 b% L2 G
! S" ?7 X5 p A: |8 @2 P d6 M' d( g7 L) i
3 P2 c$ Z8 {. t* |( N
; B {/ f& V: e' q I6 q |
|