Linux 设置防火墙
条评论其实,iptables 与 firewalld 都不是真正的防火墙,它们都只是用来定义防火墙策略的防火墙管理工具而已,或者说,它们只是一种服务。iptables服务会把配置好的防火墙策略交由内核层面的 netfilter 网络过滤器来处理,而 firewalld 服务则是把配置好的防火墙策略交由内核层面的 nftables 包过滤框架来处理。
from 《Linux就该这么学》
目前 iptables 已经在新版的Linux操作系统中逐渐被 firewalld 取代
iptables 命令
由于Linux版本的不同,使用该服务,可能需要提前使用 yum | apt 安装该服务
添加规则
将 INPUT 规则链设置为只允许指定网段的主机访问本机的 22 端口,拒绝来自其他所有主机的流量:
1 | [root@linuxprobe ~]# iptables -I INPUT -s 192.168.10.0/24 -p tcp --dport 22 -j ACCEPT |
-I
表示 insert 一条规则(默认从head插入,也可指定在第几条规则前插入)
-D
为删除一条规则(添加规则序号)
-A
为附加规则
防火墙策略规则是按照从上到下的顺序匹配的,因此一定要把允许动作放到拒绝动作前面,否则所有的流量就将被拒绝掉,从而导致任何主机都无法访问我们的服务。
Iptables 的临时性
使用 iptables 命令配置的防火墙规则默认会在系统下一次重启时失效,如果想让配置的防火墙策略永久生效,还要执行保存命令:
1 | [root@linuxprobe ~]# service iptables save |
Q&A
- iptables 和 firewalld 配置是否会冲突?
- 不会冲突。从本质上讲二者只是配置防火墙的服务,并不是真的防火墙。
- 本文链接:https://blog.charjin.top/2023/01/28/linux/linux-firewall/
- 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 CN 许可协议。转载请注明出处!
分享