|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑
' f( F$ G! J, d/ w0 P, R! z# G2 d+ o; z
一、启动服务8 Z; s' j/ D9 v3 G
如果没有安装,可以使用yum install firewall
+ u5 J" O* }9 N- Y: s系统默认是已经安装了,但是没有启动
# N+ H) A T8 u. R1、开机自启动
5 K# y; A2 k; H) A! A1 gsystemctl enable firewalld! }1 r7 R# \5 `$ Q. I( Z0 e
2、启动服务8 @) I+ G @4 Q) U0 F- D6 N0 G% W+ p" i
systemctl start firewalld
5 ~0 T) b8 g/ u! R二、向防火墙添加可以外部访问的端口9 n& ]- a7 s' T
firewall-cmd --zone=public --add-port=80/tcp --permanent
4 m( C- w# c# ^ b以下是常用的端口+ [" u7 t7 M% s
firewall-cmd --zone=public --add-port=443/tcp --permanent# D9 h# o% h3 y+ m
firewall-cmd --zone=public --add-port=22/tcp --permanent
# x* ?& g- [) K/ B1 A1、如果需要添加一段端口的话,使用以下命令2 e! z1 l! V4 H0 a
firewall-cmd --zone=public --add-port=8000-8100/tcp --permanent
8 d) `$ o1 W$ F% G/ V这儿是指添加101个端口! N& Z9 K, ^: B+ [9 T* |9 l5 D
三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent
0 `0 \' g: P% a+ c7 W4 |& y具体的服务名称在以下路径里有一个文件就是一个service 名称
% F$ F9 Z6 P( E X3 w8 h( e* K/usr/lib/firewalld/services. N+ u5 `) _& d
. t1 ?7 c, n8 e% z/ w四、添加完端口之后需要让防火墙生效
, w# ~3 d N0 F) x1、重新加载! u7 B; E1 S' R
firewall-cmd --reload; K) d8 y9 q# `: P
2、查看当前已经开放的端口) J0 U) a7 W/ N1 \4 e+ Y
firewall-cmd --list-ports/ a: w' G- C; y3 O2 o& z
firewall-cmd --list-all
; k- B# N* `- C! b% i' \3、删除某个不用的端口0 \9 P" n- S% S0 I' Y* {. w. J) e
firewall-cmd --zone=public --remove-port=8084/tcp --permanent
7 b0 A5 y3 D" `1 _' n7 w注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的
; L8 |% o4 C! U" ~! A2 f c9 W
$ e4 B5 N# `% d* x
8 V0 [8 ^6 Q: |: \9 \$ }" B
其他常用命令
) M" B% K5 Z' f! c
8 b3 W( ^ L( A; [8 {9 X: p" s! H
6 n3 r" B2 n# F: E& {- firewall-cmd --list-all-zones #查看所有的zone信息 m' i* _$ f+ k4 P
- firewall-cmd --get-default-zone #查看默认zone是哪一个
. U. G9 N) o& a4 Q# z; L3 b - firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal4 M" ?& Y# X. o, d: ~
- firewall-cmd --add-service=http #暂时开放http
3 G/ c( o) @/ W i" g8 ?8 S5 Y - firewall-cmd --permanent --add-service=http #永久开放http
/ A- o( u8 F/ C8 j) j - firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口
2 m2 y- V7 v1 H% x u" c - firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务3 N& O+ f- k+ `
- firewall-cmd --reload #重新加载配置
( t6 t7 \/ c) y - systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 4 h9 L( a, ^* _% [: }( P
1 _6 l( x, B; M% f
: }5 `' c8 u% s/ s! a
% _ A+ w# t" w) w) T+ Q- Q; C: B8 t1 e% _+ }: b$ V0 f
' ? O- n {" @! _- T8 X. d( v
/ L m1 ~6 c9 }+ W8 R0 a9 _% _
1 Y) _2 y7 y& Y6 X& e- t. V6 N# i' p7 b1 P y8 H% S j( B
1 u/ y6 L. J, V5 k8 j& e' p; q& \4 e( {) r7 N
9 k" N7 w# U0 W, b
|
|