|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑 3 D7 ^7 |- H7 r- v% j) u. q! C
; f2 B1 }1 k, `6 V( o
一、启动服务
7 e$ S0 S1 ]" G: ?8 s如果没有安装,可以使用yum install firewall4 m4 e: U- k. ? a+ d, _
系统默认是已经安装了,但是没有启动
+ m# R: e e- Q) y. D7 y1、开机自启动
2 U; b2 L, ^) ?0 ysystemctl enable firewalld2 F) \3 {( H% @& D+ w4 O
2、启动服务* X: _" k( S( v( C& W- {
systemctl start firewalld
" f j7 }) ^ [, {二、向防火墙添加可以外部访问的端口
+ c6 L/ H) z0 Z5 B6 y& m: ufirewall-cmd --zone=public --add-port=80/tcp --permanent 0 `& p6 I0 K2 E( ], w
以下是常用的端口
4 v- c+ V) M# ^, K# \4 K2 E0 v, Nfirewall-cmd --zone=public --add-port=443/tcp --permanent
" @1 v. |- t$ X g- T( R7 @firewall-cmd --zone=public --add-port=22/tcp --permanent! W2 B5 s4 R% X/ ~: _
1、如果需要添加一段端口的话,使用以下命令
4 u) Z) d- u7 q0 lfirewall-cmd --zone=public --add-port=8000-8100/tcp --permanent
/ Y7 E" U. S3 a* T" d这儿是指添加101个端口/ s; [5 l; R3 l, H6 R+ d
三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent
# ^7 }9 f3 v- L* s具体的服务名称在以下路径里有一个文件就是一个service 名称
; } Y4 N/ b$ z/usr/lib/firewalld/services
( M# S0 L* C$ v ~9 y% N$ P
! o9 W" ]# R& E6 w四、添加完端口之后需要让防火墙生效
% ?, |# z3 d. z- d1、重新加载
) U7 u' R# {$ Y* q3 x; {4 G+ Lfirewall-cmd --reload% u: W: a4 Z3 @! v2 Q+ t
2、查看当前已经开放的端口
( W) Y+ ^" c4 Y; @firewall-cmd --list-ports) Y3 n' E2 D. E" q- Q" T
firewall-cmd --list-all; r- I$ X, ^. y3 k
3、删除某个不用的端口
& E6 O% p1 ~/ h D0 ` [$ Ffirewall-cmd --zone=public --remove-port=8084/tcp --permanent' o* m. |8 W( _9 _
注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的
2 ^" p) I; v$ t) U: P5 j1 _( g
4 |6 v( K3 D- ~$ G, J- {' X/ R8 ^# E2 l% U% W9 w" l8 ?( D
3 _4 C; ? I2 c5 _
其他常用命令
9 w' k+ |5 ?& W+ m7 b( J
0 k; w; T/ l2 N) ?% T. x; _: ~0 @/ e) f' H& i
- firewall-cmd --list-all-zones #查看所有的zone信息! X: i4 ~( W! _
- firewall-cmd --get-default-zone #查看默认zone是哪一个/ K1 {$ S0 A5 j l( |
- firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
0 W) N$ s' V4 q o( ~ - firewall-cmd --add-service=http #暂时开放http
' G7 c2 A8 |; z( a5 N2 E - firewall-cmd --permanent --add-service=http #永久开放http6 ]+ ~" H) R4 \$ Z0 a! L
- firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口
0 T, [$ u C3 f G- m - firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务/ z. [) O/ U. u; M C* K6 d
- firewall-cmd --reload #重新加载配置
, Y$ [5 `+ Y# A# N - systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 0 [) q/ o% L: r D+ K% o
9 `5 L/ N" j9 j! q
* Z% {( V% m, ]0 e9 C) o% X
4 `! \1 P* N7 @% G& @+ M' _. i1 {8 W) X4 X2 F
! ?% h! `1 Q/ ?; N
; x' K* d: ~- S @8 b- n( A+ }; n; t9 V4 O1 E
% l& M/ `% N4 D9 d
& C$ T( h3 n$ m" T& j* I+ u
8 ]" R2 a- M" d6 r- G, |/ w/ o$ ~! l
5 j5 z5 N: @+ ?$ a3 ] |
|