|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑 ; T4 l! I/ G# a7 b
& y& e( i o" O; o9 L( Y3 K! V9 w& l
一、启动服务
6 V. n6 _7 ^* T" Z9 ~1 y如果没有安装,可以使用yum install firewall
$ ?" \. p8 ] A+ J C系统默认是已经安装了,但是没有启动
6 B4 g, ]# p& [- N% a. ^1、开机自启动' B2 W. b& Q4 N- t# L& _
systemctl enable firewalld
% D" g/ U6 y3 p* v; F2、启动服务# l8 ?3 K3 A8 v1 s% L' }3 S
systemctl start firewalld. d" T* y3 y6 l9 [3 ~
二、向防火墙添加可以外部访问的端口# W) J7 k( A( y" ~) i
firewall-cmd --zone=public --add-port=80/tcp --permanent
3 J3 l; Y. c0 ]& I0 a/ i以下是常用的端口" Q3 l# Z) F8 Z5 o
firewall-cmd --zone=public --add-port=443/tcp --permanent
/ b. w% s/ O. F2 m" T; Ifirewall-cmd --zone=public --add-port=22/tcp --permanent1 a8 G- H1 V# U0 j& G8 b
1、如果需要添加一段端口的话,使用以下命令
$ D+ v5 B, o$ ^+ W( ifirewall-cmd --zone=public --add-port=8000-8100/tcp --permanent
, B: N) g2 L' G4 G- u- [这儿是指添加101个端口) {5 j1 d. t9 `# v9 w5 |' Y5 M
三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent
; T1 _# l4 b* X u! s5 L- C6 S具体的服务名称在以下路径里有一个文件就是一个service 名称
7 A, Y7 b3 `% A, j4 {2 [/usr/lib/firewalld/services
; ^( q) q8 G9 T# s& U# @
2 G- l" r2 J( }四、添加完端口之后需要让防火墙生效
9 C# I6 [- K+ r/ h/ ]2 s- l8 k/ ~1、重新加载
$ `. k4 Q/ W& e( C+ u# \firewall-cmd --reload
' L0 e* e4 g# B5 x/ ?6 w2、查看当前已经开放的端口
2 V! B; W! P% x) j; {! rfirewall-cmd --list-ports- j4 g, F: r: G9 X
firewall-cmd --list-all
' b! i" S0 o: b: b! I; O7 n% K3、删除某个不用的端口: q" v! C2 ^2 t' q }; ~% b$ q
firewall-cmd --zone=public --remove-port=8084/tcp --permanent
) G2 r. G g O9 M, C9 F! p注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的& m, j( E W2 h; ^
6 g( R+ {$ D3 z+ X& x
- N2 ~* b+ k. @; z# R9 g6 m0 j8 u* O8 M! H( S% f/ d/ u+ L
其他常用命令
9 z J8 V7 p6 q. Y& S5 N0 z5 S
" F$ [8 S4 U' B; m9 E( F. f3 I7 k0 [8 }1 w
- firewall-cmd --list-all-zones #查看所有的zone信息
9 ]; W" n, P9 _& ~* S0 G* k1 i - firewall-cmd --get-default-zone #查看默认zone是哪一个5 H1 {* n4 B7 h! d& F% U/ S
- firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal- B% h E7 u- [1 |7 K( s5 {0 N
- firewall-cmd --add-service=http #暂时开放http
- ]; i: Q6 i1 t/ ^2 N4 U - firewall-cmd --permanent --add-service=http #永久开放http5 n7 R4 t4 D9 E! e
- firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口
/ x7 ^! \, e3 ?, \8 E L/ _ - firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务+ V: g, K* e2 X$ d3 S9 s
- firewall-cmd --reload #重新加载配置8 c- E+ ~1 |3 B$ i- e6 a
- systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 . l7 s% M$ v; j
3 {+ f1 Y; \$ ^4 T
6 c' a7 H! m3 G9 o5 V" {6 K
# |+ s7 Z3 t$ K* g
5 p( N. i# i E% ~0 `" R0 a O4 w6 w& C
) |7 k+ ^1 u Z
9 ]% z3 q- l- r# W# F# f3 L! [% q3 b! ~2 ~$ y% k. x D4 r2 W" A8 [# y
: d/ ~0 B, V, \* T$ i3 ?: {4 _
( k3 q& J8 p7 C' H
7 E+ S; c% v+ F" {% ~ |
|