redhat8基础防火墙配置

1.firewalld的基本使用

屏蔽/解除屏蔽

# systemctl mask/unmask firewalld.service

启动/停止/重新启动

# systemctl stasrt/stop/restart firewalld

启用/停用(开机启动/停用)

# systemctl enable/disable firewalld

查看防火墙状态

systemctl status firewalld

查看防火墙是否已经开机启动

# systemctl is-enabled firewalld

查看防火墙服务是否已经启用

# systemctl list-unit-files |grep firewalld

 

2.配置firewalld-cmd

显示状态

# firewall-cmd --state

查看所有打开的端口

# firewall-cmd --zone=public --list-ports

查看区域信息

# firewall-cmd --get-active-zones

查看ens160所属区域

# firewall-cmd --get-zone-of-interface=ens160

拒绝操作

拒绝所有包:# firewall-cmd --panic-on
取消拒绝状态: # firewall-cmd --panic-off
查看是否拒绝:# firewall-cmd --query-panic

更新防火墙规则(重要)

# firewall-cmd --reload

 

3.firewalld放行端口

如果需要针对区域操作的话需要在firewalld-cmd后面添加 – -zone=你的区域 ,一般使用默认区域即可

开启80号端口

# firewall-cmd --add-port=80/tcp --permanent  // --permanent 代表永久生效,不添加的话重启主机就会失效
# firewall-cmd --reload
# firewall-cmd --list-ports //查看所有已打开的端口

注意如果添加多个端口的话(删除的话同理) --add-port=80/tcp 就要写成 --add-port={80/tcp,81/tcp,82/tcp}

移除已经开启的80端口

# firewall-cmd --remove-port=80/tcp --permanent
# firewall-cmd --reload

 

4.firewalld放行服务

有时开放端口后仍不能访问各自端口,就需要进行如下操作

# firewall-cmd --get-services   //查看可以打开的服务有哪些
# firewall-cmd --add-service=http --permanent  //添加服务到firewalld  多个服务可写成{http,ssh}  
# firewall-cmd --add-port=80/tcp --permanent 
# firewall-cmd --reload
# firewall-cmd --list-service //查看所有添加的服务

移除服务的话同理

# firewall-cmd --remove-service=http --permanent
# firewall-cmd --reload

放行自定义的服务(示例,添加一个test服务,端口tcp1111)

# cd /usr/lib/firewalld/services/       //每个服务都在这里有个xml文件
# cp http.xml test.xml                         //复制一个http模板来修改
# vi test.xml  
    <port protocol="tcp" port="1111"/>           //将这行改成你自定义服务的端口
     :wq                         
# systemctl restart firewalld
# firewall-cmd --add-service=test --permanent
# firewall-cmd --add-port=1111/tcp --permanent
# firewall-cmd --reload

 

5.对特定ip禁止某种服务

例子:禁止192.168.10.0/24访问ssh服务

# firewall-cmd  --add-rich-rule="rule family="ipv4" source address="192.168.10.0/24" service name="ssh" reject" --permanent
//改成允许的话将reject改成accept
# firewall-cmd --reload
# firewall-cmd --list-all          //查看防火墙规则

例子:允许192.168.1.1访问80号端口

firewall-cmd --add-rich-rule="rule family="ipv4" source address="192.168.1.1/24" port protocol="tcp" port="80" accept" --permanent

 

如果你平时不知道服务的端口是多少你就可以# cat /usr/lib/firewalld/services/http.xml | grep port

 

作者: 红烧悠鸽
本文采用 CC BY-NC-SA 4.0 协议
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇