|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑
2 J8 L: t* R# f9 \! V
9 R2 i1 h! l; ^ Z& S. W一、启动服务8 x5 N% E. m, H2 g8 ^! U9 o
如果没有安装,可以使用yum install firewall
3 D1 i4 s- q' z+ y1 Y# N4 I4 H系统默认是已经安装了,但是没有启动
. b3 i, R$ O8 w4 H% {9 ]3 m1、开机自启动
S% X; Y% d- A; Isystemctl enable firewalld1 P( e" n Y2 U" o w4 R
2、启动服务! b6 I& G3 C" l$ m$ F) |
systemctl start firewalld
: B2 L, [ C5 ]1 w$ s1 h3 m5 V二、向防火墙添加可以外部访问的端口8 n/ R# L6 i; s2 B r
firewall-cmd --zone=public --add-port=80/tcp --permanent
6 m% I* p/ b; C- z( v5 m以下是常用的端口
7 W' Q8 ]4 Q# ?, d& F" F( _3 kfirewall-cmd --zone=public --add-port=443/tcp --permanent
$ Z" g1 |+ z5 l, S2 [8 G! {firewall-cmd --zone=public --add-port=22/tcp --permanent
9 p( m, B2 r/ F, d7 z3 `1、如果需要添加一段端口的话,使用以下命令
1 B8 d8 \3 s/ u( P+ n6 l4 S) }- Xfirewall-cmd --zone=public --add-port=8000-8100/tcp --permanent a- h8 b: ?5 j8 }" S0 o
这儿是指添加101个端口
; x/ Z8 V4 o4 o) r0 X& d0 N) w三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent6 Y: m! T7 |9 S) @( G
具体的服务名称在以下路径里有一个文件就是一个service 名称
) Q5 {; L( l+ `9 O/usr/lib/firewalld/services
+ H0 o/ d' J: K& f, {+ Y+ O; g4 I; r" E/ H, ~' J
四、添加完端口之后需要让防火墙生效1 O' @2 A F8 D
1、重新加载
( _: k B7 S( p& M8 U rfirewall-cmd --reload
8 ^( L) p9 f5 X4 C& a% W" L4 w2、查看当前已经开放的端口
# C4 m# ?- i& Z( Z6 c# ?firewall-cmd --list-ports1 O5 ~8 \4 f; n( l" Y! U
firewall-cmd --list-all
$ {( h2 a4 ?4 Y3、删除某个不用的端口
& `* q1 l1 g& }0 W' \firewall-cmd --zone=public --remove-port=8084/tcp --permanent
& ?0 u* c% w: c- e% H$ y. S注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的# Y/ r5 ]- j6 j; _0 J& u! O
2 M; D' x6 S: ]
1 Y6 [* E: c: o; N, y. w: X I
) Z) ]: e# n1 O) K* X1 L5 m6 |
其他常用命令
7 c. Q! V" U! \. Q' m- ?+ g# o9 c5 L1 f$ q; C2 U) x% w- L5 D- {' ]
: s% l( { k/ v5 }4 S; d0 y, T' E4 a- firewall-cmd --list-all-zones #查看所有的zone信息
2 ~' w( H9 | W( Z% V6 d - firewall-cmd --get-default-zone #查看默认zone是哪一个
3 V: f: W0 _) P - firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
) ]2 f2 O/ Y9 F - firewall-cmd --add-service=http #暂时开放http6 C, s$ D! \6 `$ J; R x8 [
- firewall-cmd --permanent --add-service=http #永久开放http2 D* H% E& d0 u/ h, C' j8 n) e
- firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口* k6 O/ @0 }( J0 D( A
- firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务+ A$ \4 A2 k+ f G1 d8 |
- firewall-cmd --reload #重新加载配置) E5 Q7 O8 F' R. P/ F/ y6 `
- systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 % G& }+ p+ ~% i0 i# l
! x6 V6 Y! ~$ J r* n, c
- \: G: q- R) `' V8 `
' s$ q# x S$ f0 K0 _+ ^, }, V; j/ A! Q( W
( ^& F( N) ?6 w. T! y
, x" Z7 ?7 ]8 H3 |
+ [5 O; e' D8 v" v- [6 @$ I+ a: m3 k1 Y) L# j
' c& z# |+ v' u* `. g+ j/ v
% N1 _% e% e& K+ ~3 w9 E
" k* X6 A* C+ a1 V |
|