|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑 / }+ e. \/ d% ~
' J" f" m. _2 t+ m3 q6 V
一、启动服务
6 A% ~. x, I) u9 y( x! \; y如果没有安装,可以使用yum install firewall
7 N6 h1 Q4 S" r {( O1 u系统默认是已经安装了,但是没有启动
2 a! v$ V2 K1 k+ D1、开机自启动
# l8 t: l" k; O; [3 e2 X, t6 Xsystemctl enable firewalld3 R' Q1 e& a/ }9 y0 K; G
2、启动服务
% L% y' o2 b m' v+ m, Z. psystemctl start firewalld
4 Z1 d; _9 E& ~& V# @二、向防火墙添加可以外部访问的端口
$ @7 t/ B5 U# ofirewall-cmd --zone=public --add-port=80/tcp --permanent
. I* K ]+ a- U以下是常用的端口( w0 k t. `6 t9 o' t; R! ~
firewall-cmd --zone=public --add-port=443/tcp --permanent
) @$ `3 b0 c0 ?+ gfirewall-cmd --zone=public --add-port=22/tcp --permanent
' {+ G3 E+ N( {* A+ d( M7 K; W3 x1、如果需要添加一段端口的话,使用以下命令
+ p' E4 p1 W. xfirewall-cmd --zone=public --add-port=8000-8100/tcp --permanent. }1 J" x7 f$ }' L6 l; T& z
这儿是指添加101个端口8 d2 C+ e( z4 b, z8 C5 c; ~
三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent: P# m L9 Q5 v0 D9 A( @
具体的服务名称在以下路径里有一个文件就是一个service 名称7 j8 P0 u: Q3 M
/usr/lib/firewalld/services( E* T% }. a3 Z7 v( ^7 S
8 N/ D w2 g; X# e四、添加完端口之后需要让防火墙生效
4 U: f7 K" o! c: |* p- h1、重新加载
1 U- N, n0 V# |! @% k" ^% x" Ofirewall-cmd --reload2 E- Z; [) |7 N) K) Y' {
2、查看当前已经开放的端口
7 c i1 b8 i: Pfirewall-cmd --list-ports! E. s, X+ \9 `: S
firewall-cmd --list-all
. R i3 f D' d; R/ S7 r* d- @6 M3、删除某个不用的端口
1 ?0 ?) T4 w8 b) ?firewall-cmd --zone=public --remove-port=8084/tcp --permanent
' Z6 P# x) T4 v7 g. s7 n, s注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的
* ^4 v- _0 u% {) k8 M* ` h; c$ u
. w0 {; X$ s* D
. U2 t# b5 Q# J1 S( l2 x, u3 p( t其他常用命令
9 e7 Q' H! h' {, K
9 h$ e$ N- D0 d# g- ~
1 R& C, J# r) ]) Z/ E1 A4 ~3 g- firewall-cmd --list-all-zones #查看所有的zone信息
" r" G& G6 c. {( Z" i% f) E - firewall-cmd --get-default-zone #查看默认zone是哪一个
8 a+ t2 l0 Q4 `( u3 ` - firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal/ B% d# @$ W6 K% t" [
- firewall-cmd --add-service=http #暂时开放http
0 ` @3 o; F1 M, G - firewall-cmd --permanent --add-service=http #永久开放http
Y! n1 O- f+ j7 n - firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口
' a. k& C+ I) y3 G9 C3 M) E% S1 h - firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务
( C/ L# x# L2 q - firewall-cmd --reload #重新加载配置8 |; g& e8 b8 }1 G
- systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 2 s7 M( ?# V- r1 z7 M
# Y7 I; I# j! `8 O
I" ~1 u7 d( O& a7 ]9 A0 B9 p7 h2 t) Y) | L: e7 R3 d0 V
+ p2 r$ B, y! U- O5 c, l/ @* ]8 t( d
4 @2 E3 ?2 b% p F" S
) A: |9 \' T7 b! M! U; @9 G9 U' L; W) @% p+ k' Y
7 E d; d4 P1 C7 S
+ Q8 j0 O% c; h5 S2 ]/ v6 C
7 E1 |& \5 l4 {. E
; M8 y4 W7 m, f5 | ^2 D) o |
|