Linux中的ARP包过滤利器(手把手教你使用arptables命令)

简介: 本文介绍Linux下的ARP防火墙工具arptables,涵盖其安装、基本语法、实战应用及规则持久化方法。通过arptables可有效防范ARP欺骗攻击,提升局域网安全性,适合网络初学者快速上手,助力构建更安全的内网环境。

在Linux系统中,除了我们熟悉的iptables用于IP层的包过滤外,还有一个专门用于处理ARP(Address Resolution Protocol,地址解析协议)流量的工具——arptables。本文将从零开始,带你了解并掌握arptables的基本用法,即使是网络小白也能轻松上手!

什么是ARP和arptables?

ARP 是一种用于将IP地址解析为MAC地址的协议。例如,当你的电脑要向局域网中的另一台设备发送数据时,它首先需要知道对方的MAC地址,这时就会广播一个ARP请求。

然而,ARP协议本身没有认证机制,容易受到ARP欺骗(如中间人攻击)。为了增强网络安全,Linux提供了 arptables 工具,用于对进出系统的ARP数据包进行过滤、修改或丢弃,从而实现ARP防火墙的功能。

安装arptables

大多数现代Linux发行版默认未安装arptables,你需要手动安装:

Ubuntu/Debian:

sudo apt updatesudo apt install arptables

CentOS/RHEL:

sudo yum install arptables# 或者在较新版本中sudo dnf install arptables

arptables基本语法

arptables的语法与iptables非常相似,主要结构如下:

arptables [选项] -A 链名 -s 源IP/MAC -d 目标IP/MAC -j 动作

常用链(chain)包括:

  • INPUT:处理发往本机的ARP包
  • OUTPUT:处理本机发出的ARP包
  • FORWARD:处理转发的ARP包(需开启转发)

实战:使用arptables阻止恶意ARP请求

假设你发现某台设备(IP: 192.168.1.100,MAC: aa:bb:cc:dd:ee:ff)正在发送伪造的ARP响应,你可以通过以下命令阻止它:

sudo arptables -A INPUT -s 192.168.1.100 --source-hw aa:bb:cc:dd:ee:ff -j DROP

这条命令的意思是:在INPUT链中添加一条规则,如果ARP包的源IP是192.168.1.100且源MAC是aa:bb:cc:dd:ee:ff,就直接丢弃(DROP)该包。

查看和清除规则

查看当前所有ARP规则:

sudo arptables -L

清空所有规则(谨慎操作!):

sudo arptables -F

保存规则(持久化)

默认情况下,arptables规则在重启后会丢失。你可以将其保存到文件并在启动时加载:

# 保存规则sudo arptables-save > /etc/arptables.rules# 恢复规则sudo arptables-restore < /etc/arptables.rules

你也可以将恢复命令加入开机启动脚本(如/etc/rc.local),实现自动加载。

总结

通过本文,你应该已经掌握了 arptables 的基本用法。作为一款强大的ARP防火墙工具,它能有效提升局域网的安全性,防止ARP欺骗攻击。结合Linux网络管理知识,你可以构建更安全的网络环境。记住,合理使用ARP表过滤策略,是保障内网通信安全的重要一环。

现在,就去你的Linux系统中试试吧!遇到问题欢迎留言交流~

来源:

https://www.vpshk.cn/

相关文章
|
5月前
|
Prometheus 监控 Cloud Native
打造你的专属Linux监控仪表板(小白也能轻松上手的系统可视化教程)
本教程教你使用Prometheus + Grafana从零搭建Linux监控仪表板,实时可视化CPU、内存、磁盘等系统性能指标。无需经验,手把手教学,助你快速掌握服务器状态监控,提升运维效率,适合所有Linux用户。
打造你的专属Linux监控仪表板(小白也能轻松上手的系统可视化教程)
|
5月前
|
存储 缓存 运维
Nginx缓存大小限制详解(手把手教你控制缓存空间,避免磁盘爆满)
本文教你如何设置Nginx缓存大小限制,避免缓存无节制增长导致磁盘占满。通过配置proxy_cache_path的max_size等参数,合理控制缓存空间,提升网站性能的同时保障服务器稳定运行,适合小白用户快速上手。
Nginx缓存大小限制详解(手把手教你控制缓存空间,避免磁盘爆满)
|
Python Windows
win64系统安装32位的python解释器和打包成exe程序
本文说明了在win64系统环境下,如何安装32位的python解释器,同时对32位虚拟环境下运行的python程序进行打包,将其打包成可执行的exe程序,以图文相结合的方式记录了操作步骤,供大家参考。
1235 0
|
1月前
|
人工智能 安全 测试技术
AI智能体的测试流程
AI智能体测试重在验证“受控随机性”与“逻辑链完整性”,区别于传统确定性测试。涵盖单元(提示鲁棒性、工具调用、RAG)、推理链、性能成本、黄金集回归、安全红队及UAT/A/B六大维度,确保智能体可靠、安全、高效落地。(239字)
|
Perl
使用三剑客(grep,sed,awk)获取IP地址
使用三剑客(grep,sed,awk)获取IP地址
1642 0
|
5月前
|
运维 安全 Linux
优雅告别系统(Linux用户退出脚本全解析)
本文教你如何编写Linux用户退出脚本,确保安全退出会话、清理资源并记录日志。涵盖基础命令(exit/logout)、脚本编写、自动触发与最佳实践,适合新手和运维人员提升系统安全性。
|
3月前
|
存储 弹性计算 缓存
2026年阿里云 ECS 计算型 c9i 实例(ecs.c9i.xlarge)性能测评与场景适配
阿里云 ECS 计算型 c9i 实例(规格 ecs.c9i.xlarge)是面向企业级计算需求的第九代实例,以 4 核 8G 配置为核心,搭载 Intel Xeon Granite Rapids 处理器,聚焦高算力、高网络吞吐与存储 I/O 性能,适配从 Web 应用到数据分析的多元场景。本文结合实测数据与官方技术参数,从硬件配置、性能表现、价格体系及适用场景展开解析,为企业选型提供客观参考。
|
运维 安全 Ubuntu
`/var/log/syslog` 和 `/var/log/messages` 日志详解
`/var/log/syslog` 和 `/var/log/messages` 是Linux系统的日志文件,分别在Debian和Red Hat系发行版中记录系统事件和错误。它们包含时间戳、日志级别、PID及消息内容,由`rsyslog`等守护进程管理。常用命令如`tail`和`grep`用于查看和搜索日志。日志级别从低到高包括`debug`到`emerg`,表示不同严重程度的信息。注意保护日志文件的安全,防止未授权访问,并定期使用`logrotate`进行文件轮转以管理磁盘空间。
5929 1
|
边缘计算 物联网 开发者
2024年提升开发效率的十大技巧
2024年,软件开发领域持续快速发展,新技术和工具层出不穷。本文总结了十大提升开发效率的技巧,包括精通Git Hooks自动化流程、利用Docker容器化技术、拥抱无代码/低代码平台、集成AI/ML、关注IoT、重视网络安全、采用云原生开发和微服务架构、探索边缘计算、利用AR和即时应用技术,以及参与开源软件项目。这些技巧旨在帮助开发者适应技术变革,提高工作效率。