在 Ubuntu 或 CentOS 服务器上持久化保存 iptables 规则

前言

一台安全的服务器必然会涉及 iptables 规则的配置,配置完成后,我们还需要对其进行持久化保存,以避免重新启动系统后规则丢失的问题。

方法 for Ubuntu

安装 iptables-persistent 工具

sudo apt install iptables-persisten

确保 iptables-persistent 服务已启用

sudo systemctl is-enabled netfilter-persistent

如果没有启用,执行:

sudo systemctl enable netfilter-persistent
sudo systemctl start netfilter-persistent

添加需要的规则,例如禁止服务器被外界 ping

sudo iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

客户端 ping 服务器 IP 查看效果

ping xxx.xxx.xxx.xxx

保存修改好的规则

sudo netfilter-persistent save

重启服务器并检查规则是否被持久化

sudo iptables -L

方法 for CentOS

禁用系统默认开启的 firewalld 防火墙

sudo systemctl stop firewalld.service
sudo systemctl disable firewalld.service
sudo systemctl mask firewalld.service

安装 iptables-services 工具

sudo yum install iptables-services

确保 iptables-services 服务已启用

sudo systemctl is-enabled iptables

如果没有启用,执行:

sudo systemctl enable iptables
sudo systemctl start iptables
## IPv6 ##
sudo systemctl enable ip6tables
sudo systemctl start ip6tables

添加需要的规则,例如禁止服务器被外界 ping

sudo iptables -A INPUT -p icmp --icmp-type echo-request -j DROP

客户端 ping 服务器查看效果

ping xxx.xxx.xxx.xxx

保存修改好的规则

sudo /sbin/iptables-save > /etc/sysconfig/iptables
## IPv6 ##
sudo /sbin/ip6tables-save > /etc/sysconfig/ip6tables

重启服务器并检查规则是否被持久化

sudo iptables -L
0 0 投票数
文章评分
订阅评论
提醒
0 评论
内联反馈
查看所有评论
By 马丁龙猪

标签

归档

功能