如何用iptables阻止恶意IP
使用iptables阻止恶意IP的步骤详解

免费影视、动漫、音乐、游戏、小说资源长期稳定更新! 👉 点此立即查看 👈
说到服务器安全防护,利用iptables来屏蔽恶意IP地址,可以说是运维工程师的一项基本功。这活儿干起来其实并不复杂,关键是把步骤走对、把规则配稳。下面,咱们就按顺序把整个流程捋一遍。
1. 确认恶意IP
动手之前,第一步当然是得先找准目标。哪些IP地址在搞小动作?通常,答案就藏在系统日志(比如/var/log/auth.log或/var/log/secure)、实时的网络流量监控工具,或者现有的防火墙告警信息里。把这些“不速之客”的地址准确地揪出来,是后续所有操作的基础。
2. 添加iptables规则
目标锁定后,接下来就是动用iptables这把“手术刀”进行精准拦截了。根据不同的场景,有以下几种常用的命令格式。
阻止单个IP
对付单个捣乱的IP,命令非常直接。这条规则的意思是:将所有从该IP发来的、试图进入(INPUT链)的数据包,统统丢弃(DROP)。
sudo iptables -A INPUT -s <恶意IP地址> -j DROP
举个例子,如果要封禁192.168.1.100,就这么写:
sudo iptables -A INPUT -s 192.168.1.100 -j DROP
阻止IP范围
有时候,恶意IP可能是一个连续的地址段。这时候,用iprange模块就方便多了。
sudo iptables -A INPUT -m iprange --src-range <起始IP>-<结束IP> -j DROP
比如,需要屏蔽从192.168.1.100到192.168.1.105这整个段:
sudo iptables -A INPUT -m iprange --src-range 192.168.1.100-192.168.1.105 -j DROP
阻止多个IP
如果需要一次性封禁多个不连续的IP,可以在一条规则里叠加多个-s参数。当然,更常见的做法是为每个IP写一条独立规则,这样管理起来更清晰。
sudo iptables -A INPUT -s -s -s -j DROP
例如,同时阻止192.168.1.100、192.168.1.101和192.168.1.102:
sudo iptables -A INPUT -s 192.168.1.100 -s 192.168.1.101 -s 192.168.1.102 -j DROP
3. 保存iptables规则
这里有个至关重要的提醒:通过命令行添加的iptables规则是临时生效的,一旦服务器重启,所有心血都会付诸东流。所以,规则配置好后,务必记得保存。不同Linux发行版的保存方法略有不同:
Debian/Ubuntu
推荐将当前规则导出到特定配置文件中:
sudo iptables-sa ve > /etc/iptables/rules.v4
CentOS/RHEL
对于使用传统SysVinit的系统,可以直接保存服务:
sudo service iptables sa ve
而对于使用Systemd的新版系统,则需要启用并启动iptables服务,以确保规则持久化:
sudo systemctl enable iptables
sudo systemctl start iptables
4. 验证规则
规则添加并保存了,怎么确认它真的在起作用呢?用下面这个命令查看一下就好了。仔细检查输出列表,确保你刚才添加的拦截规则已经赫然在列。
sudo iptables -L -v -n
5. 其他注意事项
掌握了核心步骤,再把下面这几条经验之谈做到位,你的防护工作就更稳妥了:
- 备份现有规则:在添加任何新规则之前,养成一个好习惯——先备份现有的完整规则集。这能让你在操作失误时快速回滚。
sudo iptables-sa ve > /etc/iptables/rules.v4.bak - 测试规则:尤其是在生产环境,别急着动刀。先在测试环境里验证一下规则是否按预期工作,会不会误伤正常流量。
- 定期更新:安全攻防是动态的。今天封掉的IP,明天可能换了个马甲又来。因此,定期审查日志、更新你的封禁列表,是维持长期安全的必要操作。
好了,整个流程就是这样。从识别、拦截到保存、验证,每一步都踩实了,你就能用iptables构筑起一道有效的IP级防线,让那些恶意访问知难而退。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
PHP日志中的500错误怎么办
当PHP抛出HTTP 500错误,我们该如何应对? 在PHP开发中,HTTP 500内部服务器错误就像一位不速之客——它告诉你服务器遇到了麻烦,但具体是什么麻烦,却常常语焉不详。别慌,这种问题虽然棘手,但只要按部就班地排查,总能找到症结所在。下面这套排查流程,是许多资深开发者都在用的“标准动作”。
如何优化PHP代码减少日志
优化PHP代码以减少日志记录 日志记录是应用程序的“黑匣子”,至关重要,但处理不当也会成为性能的拖累。如何让PHP应用的日志既清晰有用,又不至于拖慢系统?其实,关键在于策略和工具的选择。下面就来聊聊几个经过验证的优化方向。 1 减少不必要的日志记录 首要原则是:只记录真正需要的内容。这意味着,在生
如何在Linux上配置Java日志路径
在Linux上配置Ja va应用程序的日志路径 在Linux环境下为Ja va应用配置日志路径,这事儿说复杂也不复杂,关键是把几个核心环节理顺了。通常,整个过程会围绕以下几个步骤展开。 选择日志框架:第一步,也是决定后续所有配置的基础,就是选定一个合适的日志框架。目前主流的Ja va日志框架主要有L
Linux Java日志清理策略是什么
Linux系统中Ja va应用程序的日志清理策略 在Linux环境下运行Ja va应用,日志管理是个绕不开的话题。放任不管,磁盘很快就会被日志文件塞满;管理得当,不仅能释放空间,还能让问题排查事半功倍。那么,一套行之有效的日志清理策略通常包含哪些关键环节呢? 1 日志轮转(Log Rotation
Ubuntu C++性能分析怎么做
Ubuntu 下 C++ 性能分析实操指南 性能优化这事儿,第一步往往不是急着上工具,而是先把“地基”打牢。一个可复现、无干扰的基准环境,能让后续所有分析事半功倍。 一 准备与基线 编译选项是源头:编译时务必保留调试符号,同时要处理好优化选项的“矛盾”。通常用 -g 保留符号。至于优化等级,有个实用
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
相关攻略
2015-03-10 11:25
2015-03-10 11:05
2021-08-04 13:30
2015-03-10 11:22
2015-03-10 12:39
2022-05-16 18:57
2025-05-23 13:43
2025-05-23 14:01
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

