|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑 4 K; `# v% f. l8 r, G/ V" ?+ _/ h
/ l, c# {- n, h: s: ?+ N T
一、启动服务
$ I$ O3 ^7 ~! I6 R2 V& l如果没有安装,可以使用yum install firewall
9 G. d- _3 ?% `- [( K# r9 D, I' l系统默认是已经安装了,但是没有启动
/ Q9 s" H7 g' o' f( b. a1 R1、开机自启动8 L+ @& u; A& t; X2 z6 i
systemctl enable firewalld% A4 Q4 I8 a4 d5 \6 L& P2 U6 @, b9 A6 X
2、启动服务1 N) ^8 J# g0 k5 k% m
systemctl start firewalld5 p' ?7 Z+ _8 V0 }0 N, N! E
二、向防火墙添加可以外部访问的端口4 O5 J0 Q2 d+ W
firewall-cmd --zone=public --add-port=80/tcp --permanent
- _, h" |9 A8 }/ k+ E以下是常用的端口
0 o7 E- k6 G/ X6 A/ C" d) ?firewall-cmd --zone=public --add-port=443/tcp --permanent' F O0 D: B2 `
firewall-cmd --zone=public --add-port=22/tcp --permanent# I0 f: E/ Z& l& f
1、如果需要添加一段端口的话,使用以下命令
) C6 L; o4 {6 A; |0 ~: o% d5 _firewall-cmd --zone=public --add-port=8000-8100/tcp --permanent
+ e9 x6 i. b# A这儿是指添加101个端口9 \2 O" m( m0 Q, D* J4 u6 j/ F
三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent
w8 x5 e' b, c具体的服务名称在以下路径里有一个文件就是一个service 名称" a, m4 F: b, p+ u
/usr/lib/firewalld/services' Y1 @( ~; i# g8 L/ W( h t) L; @6 d
9 h7 ^: c1 Y2 C: @: D4 j" p- z
四、添加完端口之后需要让防火墙生效! J' u; }' M4 e8 j+ J
1、重新加载
% T4 V ]' ^- U& F6 x; U% Yfirewall-cmd --reload$ S* R1 l# Z) V! Z$ v2 F* c0 `4 a3 ]$ ]
2、查看当前已经开放的端口
9 f3 y1 j# y7 V) lfirewall-cmd --list-ports' N6 V# \7 P+ J) O' l8 S& ^/ z
firewall-cmd --list-all
2 \: n- }" V3 _; m- r, w; h3、删除某个不用的端口! N5 v& N# j$ e3 l, B; Z
firewall-cmd --zone=public --remove-port=8084/tcp --permanent6 t( F0 _, z, h
注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的: i3 l9 s C& j5 [% ]( B; a6 G
8 @3 v Z7 K) H# ? s) k
, w0 Y; W% y* l6 Z. v
! d M f/ ]: U. J' O其他常用命令
7 ^5 B( \ ?- q
0 H4 B: v3 t0 D' q. B$ W7 ^. |6 v
6 [8 s' P0 [% x7 u- firewall-cmd --list-all-zones #查看所有的zone信息* B5 {; t( R q
- firewall-cmd --get-default-zone #查看默认zone是哪一个$ j# x" T) p( T
- firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
# }+ z4 s, g- g' Q - firewall-cmd --add-service=http #暂时开放http
4 A, E3 ]3 s+ C. d6 h X' L% e - firewall-cmd --permanent --add-service=http #永久开放http
- n V5 s) l2 ?# O) ] - firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口
! e. Q5 u8 B: x5 z; L0 m - firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务
! M. I4 L7 ?2 v* N% H- O - firewall-cmd --reload #重新加载配置
& L) S/ J8 a; _9 z5 C: B - systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码
( H2 Y& V& j' Z2 v! ?5 t. L: E& W& |
3 |: t2 s( X, Z
) Y2 z1 J" m3 s; S- k
" l$ s- u6 b' `& J% y6 k( y2 o, d6 H# C
, c8 T8 Q& R2 u& D* y& G6 V% m* ]& f" Q$ n# n
C/ W' K* K5 B, _
' Z6 |" E. ]" h0 [0 ~' X
* r, v7 Y7 p1 @9 }, L* z9 Z
1 @) R! V1 m5 U* g2 y) D# R! N |
|