|
|
本帖最后由 myskya 于 2020-3-8 22:36 编辑
: F+ f1 Y7 L) B4 t1 V1 A, j& E- E! w5 A A$ q& U8 S
一、启动服务: B7 P! s( R5 }, @- g: n
如果没有安装,可以使用yum install firewall8 Z7 b* b- d3 V) S
系统默认是已经安装了,但是没有启动0 M' a. m7 u: }4 V1 x! y: }
1、开机自启动
5 _$ Y9 @6 L6 N- L1 wsystemctl enable firewalld; C1 |8 T# [. {. l: d, H
2、启动服务
0 V- x! O: G+ @4 q1 d+ Psystemctl start firewalld
G& l: z6 C# T" r+ g; T' e0 ?二、向防火墙添加可以外部访问的端口6 b. _0 r9 z0 E6 k
firewall-cmd --zone=public --add-port=80/tcp --permanent
( h# I6 {: E! H1 |0 ]; }以下是常用的端口
3 K# U3 O# c1 E* a6 Z- p5 ifirewall-cmd --zone=public --add-port=443/tcp --permanent& _( {! ^) `! s+ G& O9 s
firewall-cmd --zone=public --add-port=22/tcp --permanent
" a9 F, f# z \1、如果需要添加一段端口的话,使用以下命令0 E- a' h+ R0 T5 Z* \% k- l' l% \+ Q
firewall-cmd --zone=public --add-port=8000-8100/tcp --permanent
5 }, e1 M" k2 x; A) N这儿是指添加101个端口" N) P% Z4 C+ p, y4 A7 R% b
三、向防火墙添加相应的服务firewall-cmd --zone=public --add-service=dns --permanent
, o" }& X! w: M. ?具体的服务名称在以下路径里有一个文件就是一个service 名称
( \5 c$ f# t+ h1 ~. W# W9 x/usr/lib/firewalld/services1 O: f o' t9 o3 E% `
2 Z6 Z% g2 ~1 e8 R5 g) J
四、添加完端口之后需要让防火墙生效
3 }- \3 a2 Z# c$ o) m! Y9 h2 _9 c! `1、重新加载
) x4 R" v$ n) Q7 t f! K. {firewall-cmd --reload
# l7 {7 e4 |2 D4 x: ^5 v' F2、查看当前已经开放的端口
0 O, ]3 W+ j f% ffirewall-cmd --list-ports
4 o9 c$ \3 g: ]/ p, ]/ u( E! ufirewall-cmd --list-all) D/ y; o4 N! V/ m }2 \$ [
3、删除某个不用的端口
* M# N {: h5 o8 v6 xfirewall-cmd --zone=public --remove-port=8084/tcp --permanent( j9 m0 ]: X8 K6 [. r! `7 @" O
注意,这儿删除只是删除一条规则,我上面加的8000-8100,其实还是可以访问8084这个端口的
# ? Y; V# {! V6 C+ W3 ~
# S; k. r, J! E1 k7 t3 N' J; s' ~; Z6 f6 e1 v& h4 Q; q
E& v3 t7 ?4 u4 I7 W
其他常用命令
2 d: u1 k/ A+ c4 E9 w" K9 I) ?4 {
1 w8 @7 n2 O9 B( h
- firewall-cmd --list-all-zones #查看所有的zone信息
' J2 K6 \: A7 C- n" ` - firewall-cmd --get-default-zone #查看默认zone是哪一个
?2 L: |5 S' p+ E' M" s - firewall-cmd --zone=internal --change-zone=p3p1 #临时修改接口p3p1所属的zone为internal
$ N4 s7 {2 L3 ~. R3 L7 y; n - firewall-cmd --add-service=http #暂时开放http3 `- M5 Z" ~3 W, f+ ]
- firewall-cmd --permanent --add-service=http #永久开放http
; g+ O E& [, m) K - firewall-cmd --zone=public --add-port=80/tcp --permanent #在public中永久开放80端口
' R: w9 i& x+ d) P! c/ R6 g. ` - firewall-cmd --permanent --zone=public --remove-service=ssh #从public zone中移除服务
f" ~9 \3 m( M; d$ k0 T - firewall-cmd --reload #重新加载配置0 x) [4 C. A! U, o! ~
- systemctl restart firewalld #重启firewalld服务,使配置生效/可查
复制代码 * v) ?/ ~$ s' b: ~
5 O7 {# N# ^8 r* f) N
; [" p, l( H ~9 o+ t% T5 r; \. Y, m0 W+ ^6 D/ T
. a( N' Q* q9 W- ]& }
5 q8 h9 z! B8 E0 h$ N* B" J# z1 G! P9 u+ b5 f* T! ?
& g6 ]7 d% v- z' C/ t/ H
- M& t. u- b1 i& K5 B+ p* L
- }4 F' y& Y. w! Q! ~% G% f1 P6 P7 K
6 S& s: m' V, Q$ g- e
|
|