
如何使用 iptables 和 firewalld 工具来管理 Linux 防火墙规则
发布日期:2021-05-18 08:56:30
浏览次数:18
分类:精选文章
本文共 1411 字,大约阅读时间需要 4 分钟。
防火墙规则的管理工具
防火墙是一组规则,用于监控和控制进出网络的数据包。这些规则可以根据数据包的来源、目标和使用的协议等信息,决定是否允许数据包通过网络。以下将从iptables和firewalld两个工具入手,介绍如何配置Linux防火墙规则。
firewall-cmd的基本使用
firewall-cmd是一个用户友好的命令行工具,用于管理firewalld防火墙。 首先可以查看防火墙的运行状态:
firewall-cmd --state
默认情况下,防火墙处于运行状态,拒绝所有传入流量,除了一些特定的端口如SSH。不过,如果您希望扩展访问权限,可以通过以下命令添加HTTP和HTTPS端口:
firewall-cmd --permanent --add-port=80/tcpfirewall-cmd --permanent --add-port=443/tcp
将这些规则应用到当前会话中:
firewall-cmd --reload
为了验证配置是否生效,可以查看已添加的服务:
firewall-cmd --list-services
意oppах的特定应用
除了防火墙流量控制,iptables也可以用来为特定的设备设置访问限制。例如,我们可以创建一个只允许从本地工作站访问SSH,而阻止其他人登录的防火墙规则。以下是一个示例配置:
iptables -A OUTPUT -p tcp -d bigmart.com -j ACCEPTiptables -A OUTPUT -p tcp -d bigmart-data.com -j ACCEPTiptables -A OUTPUT -p tcp -d ubuntu.com -j ACCEPTiptables -A OUTPUT -p tcp -d ca.archive.ubuntu.com -j ACCEPTiptables -A OUTPUT -p tcp --dport 80 -j DROPiptables -A OUTPUT -p tcp --dport 443 -j DROPiptables -A INPUT -p tcp -s 10.0.3.1 --dport 22 -j ACCEPTiptables -A INPUT -p tcp -s 0.0.0.0/0 --dport 22 -j DROP
这一系列规则的作用是:允许访问bigmart.com和bigmart-data.com网站,同时允许从本地工作站通过SSH登录。其他请求如HTTP和HTTPS将被阻止,而SSH请求仅限从特定的IP地址访问。
防火墙规则的持久化
如果希望防火墙规则在服务器重新启动后继续生效,可以保存规则到文件并在系统启动时自动加载。使用iptables-save
将当前规则保存到文件中:
sudo iptables-save | sudo tee /root/my.active.firewall.rules
为了实现定期恢复规则,可以用anacron
排期任务管理器配置自动加载防火墙规则:
sudo nano /etc/anacrontab
在anacrontab
文件中添加以下行:
1 1 iptables-restore < /root/my.active.firewall.rules
这将确保每天凌晨1点重新加载防火墙规则,保持网络安全状态。
发表评论
最新留言
逛到本站,mark一下
[***.202.152.39]2025年04月26日 05时43分31秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
selenium+python之切换窗口
2019-03-07
重载和重写的区别:
2019-03-07
搭建Vue项目步骤
2019-03-07
账号转账演示事务
2019-03-07
SpringBoot找不到@EnableRety注解
2019-03-07
在Vue中使用样式——使用内联样式
2019-03-07
Explore Optimization
2019-03-07
map[]和map.at()取值之间的区别
2019-03-08
【SQLI-Lab】靶场搭建
2019-03-08
【Bootstrap5】精细学习记录
2019-03-08
Struts2-从值栈获取list集合数据(三种方式)
2019-03-08
设计模式(18)——中介者模式
2019-03-09
推荐几篇近期必看的视觉综述,含GAN、Transformer、人脸超分辨、遥感等
2019-03-09
一文理解设计模式--命令模式(Command)
2019-03-09
VTK:可视化之RandomProbe
2019-03-09
block多队列分析 - 2. block多队列的初始化
2019-03-09
Java时间
2019-03-09
不编译只打包system或者vendor image命令
2019-03-09
【编程】C语言入门:1到 100 的所有整数中出现多少个数字9
2019-03-09