|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑 2 V: x6 P% x. r6 t# ?7 K" h# k7 z; Q
4 }& D, }2 H* N4 d; [
一、启动服务9 m' Y: p" F0 {. h
如果没有安装,可以使用yum install firewall/ C+ S$ O+ B. Q+ P7 q7 Y: p
系统默认是已经安装了,但是没有启动9 D# H4 g2 z! `* V
1、开机自启动
. N: ?" T [4 P' c/ F& s+ Hsystemctl enable firewalld7 ^) Y- [- T# B2 x1 m" k) x
2、启动服务
) ` v+ d2 T1 w M5 R! z. Ksystemctl start firewalld. @$ [3 [/ u0 R% V* X
二、向防火墙添加可以外部访问的端口1 B9 Y8 e3 o% g/ s# M' G \
firewall-cmd --zone=public --add-port=80/tcp --permanent
" p' V1 i6 i! E8 l3 i以下是常用的端口
5 A. G2 C( P& u7 n' | Tfirewall-cmd --zone=public --add-port=443/tcp --permanent% f. S& `: W! d n. H( j
firewall-cmd --zone=public --add-port=22/tcp --permanent
" I7 G1 g8 a: `+ d2 W \( b [1、如果需要添加一段端口的话,使用以下命令
) b# L1 _/ I, `4 qfirewall-cmd --zone=public --add-port=8000-8100/tcp --permanent6 C {* x, [& \4 {9 e( y$ J0 j1 t
这儿是指添加101个端口
. [5 V, @7 x q/ ]三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent
0 @0 x o* [; u8 _' D7 t具体的服务名称在以下路径里有一个文件就是一个service 名称
7 ]6 R2 [" S4 {: H/usr/lib/firewalld/services" q* H( g% p0 B& E
. _/ q0 b N6 ~6 X' f四、添加完端口之后需要让防火墙生效
) e1 l3 b, Z% d7 c# j1、重新加载
" m5 t* o" S) Y+ @- j" ? gfirewall-cmd --reload
; t7 X3 c- n" W0 `7 J2、查看当前已经开放的端口
* U2 l+ f. v: Y9 d% j+ q5 ffirewall-cmd --list-ports; e# [- U% ~) x: d' F: S8 b
firewall-cmd --list-all0 M, S/ j p7 |
3、删除某个不用的端口6 A5 A! _/ M! w1 }9 \3 F/ u
firewall-cmd --zone=public --remove-port=8084/tcp --permanent
# f: g6 M+ Z/ I: p注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的* D! k! V3 B- @: i4 c
& Q5 T ^; q6 V# a6 h) F
! P( v4 ]9 ?4 e5 u w) Q& B
- L1 Q0 t7 v2 p+ ~. {8 R
其他常用命令
1 t8 L3 ^3 {2 j0 N* e9 B- a& S6 A* k
5 R, ^0 |* O0 Z7 k6 g) A( T
8 x" l2 q1 r4 s. M- firewall-cmd --list-all-zones #查看所有的zone信息2 u. E- P1 ~; r& K
- firewall-cmd --get-default-zone #查看默认zone是哪一个) ]6 ?5 Y" c6 |7 Y! P# m
- firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
, s$ ]7 C. D% d' I1 K3 g {2 Z$ s - firewall-cmd --add-service=http #暂时开放http( K2 ]2 i5 S' m* k9 f. g" ~- a
- firewall-cmd --permanent --add-service=http #永久开放http
1 P2 B$ x8 |- Y6 s, } - firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口& {$ q6 c9 a" T/ r) @. D
- firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务
4 O) Y% x; U& v- ?# ]0 w - firewall-cmd --reload #重新加载配置
8 x: K( n$ N. l G! N5 V - systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 ; `1 I4 R( X$ J( ]# }5 ~4 c
. T1 r# B" u. _
, o: `5 G8 R4 G" C9 N6 O3 r+ o" k
8 F9 r: F$ J& A% d3 {) P/ B0 k" K) ^) ?" s6 t+ r( Y" u
4 c4 f7 q1 \; O8 U% k
7 b* }$ V8 h+ D* p4 q2 y; N" W) x6 o! @: Z1 M
0 w' E7 `3 u" A0 g9 s* s( c# ~2 f: X3 y3 B* V3 M
0 B: Q, c! o7 v* g u/ _1 h
2 l, n1 p. E) C0 \ |
|