当前位置: 首页 > news >正文

智能物联网网关策略部署

在这里插入图片描述

实训背景

某智慧工厂需部署物联网网关,实现以下工业级安全管控需求:

  1. 设备准入控制:仅允许注册MAC地址的传感器接入(白名单:AA:BB:CC:DD:EE:FF)。
  2. 协议合规性:禁止非Modbus TCP(端口502)的工业协议流量。
  3. 时段策略:限制摄像头设备(IP段192.168.40.100-150)仅在08:00-18:00传输视频流(RTSP 554端口)。
  4. MQTT安全:加密MQTT流量(8883端口)且仅允许Topic为/sensor/#的消息发布。

环境准备

硬件/软件要求
  • 四台设备
    1. 网关服务器:双网卡(eth0: 外网,eth1: 内网192.168.40.1)
    2. PLC控制器:MAC=AA:BB:CC:DD:EE:FF,IP=192.168.40.10,运行Modbus TCP
    3. 摄像头:IP=192.168.40.120,运行RTSP服务
    4. MQTT Broker:IP=192.168.40.200,端口8883(TLS)
  • 操作系统:Debian 11(内核≥5.10)
  • 工具iptablesebtablescrontcpdumpmosquitto_pub
网络拓扑
外网 (eth0)  
    ↓  
网关服务器 (eth1:192.168.40.1)  
    ↓  
工业内网 (192.168.40.0/24)  
    ├── PLC控制器 (192.168.40.10)  
    ├── 摄像头 (192.168.40.120)  
    └── MQTT Broker (192.168.40.200)  

实训步骤


任务1:MAC白名单准入控制

目标:仅允许授权设备通过二层过滤接入网络。

  1. 配置ebtables MAC过滤

    ebtables -A INPUT -s ! AA:BB:CC:DD:EE:FF -j DROP  
    ebtables -A FORWARD -s ! AA:BB:CC:DD:EE:FF -j DROP  
    
  2. 绑定IP与MAC(防ARP欺骗)

    arp -s 192.168.40.10 AA:BB:CC:DD:EE:FF  
    

验证

  • 使用未授权设备(MAC=00:11:22:33:44:55)尝试ping网关,应不通。

任务2:工业协议合规性过滤

目标:放行Modbus TCP,阻断其他工业协议(如EtherNet/IP 44818端口)。

  1. 允许Modbus TCP流量

    iptables -A FORWARD -p tcp --dport 502 -j ACCEPT  
    
  2. 阻断非常规工业端口

    iptables -A FORWARD -p tcp -m multiport --dports 44818,47808,1911 -j DROP  
    

验证

  • 在PLC控制器运行Modbus客户端,流量应正常。
  • 尝试通过端口44818通信,触发tcpdump -i eth1 port 44818无数据。

任务3:摄像头时段策略控制

目标:通过时间模块限制视频流传输时段。

  1. 安装iptables时间模块

    apt install iptables-dev  
    modprobe xt_time  
    
  2. 配置时间策略规则

    iptables -A FORWARD -s 192.168.40.120 -p tcp --dport 554 -m time --timestart 08:00 --timestop 18:00 --weekdays Mon,Tue,Wed,Thu,Fri -j ACCEPT  
    iptables -A FORWARD -s 192.168.40.120 -p tcp --dport 554 -j LOG --log-prefix "[CAMERA BLOCKED] "  
    iptables -A FORWARD -s 192.168.40.120 -p tcp --dport 554 -j DROP  
    

验证

  • 在19:00执行curl rtsp://192.168.40.120:554,应失败并在/var/log/syslog中记录日志。

任务4:MQTT流量深度管控

目标:限制MQTT Topic并强制TLS加密。

  1. 允许加密MQTT流量

    iptables -A FORWARD -p tcp --dport 8883 -j ACCEPT  
    iptables -A FORWARD -p tcp --dport 8883 ! --tcp-flags SYN,ACK,FIN,RST ACK -j DROP  # 过滤非加密握手  
    
  2. 基于字符串匹配过滤Topic

    iptables -A FORWARD -p tcp --dport 8883 -m string --string "/sensor/" --algo bm --to 65535 -j ACCEPT  
    iptables -A FORWARD -p tcp --dport 8883 -j DROP  
    

验证

  • 合法发布:mosquitto_pub -t /sensor/temp -m "25" -h 192.168.40.200 -p 8883 --cafile ca.crt 应成功。
  • 非法发布:mosquitto_pub -t /control/light -m "on" 应被拒绝。

实训总结

通过本案例,您已掌握以下工业物联网安全技能:

  1. 使用ebtables实现二层设备准入控制。
  2. 基于端口和协议特征的工业流量过滤。
  3. 利用xt_time模块实现时间维度策略。
  4. 通过字符串匹配实现MQTT Topic级管控。

知识要点

要点说明
ebtables二层MAC过滤工具,需与iptables配合使用
xt_time模块支持按时间/日期匹配流量
字符串匹配-m string实现应用层协议内容过滤
工业协议特征Modbus TCP=502, EtherNet/IP=44818
MQTT安全TLS加密+Topic白名单双保险

扩展挑战

  1. 集成Suricata实现工业协议深度检测(DPI)。
  2. 使用CONNMARK标记实现跨VLAN设备联动控制。
  3. 部署ELK Stack实现安全事件可视化分析。

相关文章:

  • vue3+vite+js项目引入electron构建跨平台桌面应用
  • Excel 自动执行全局宏
  • 项目进度延误的十大原因及应对方案
  • 4-10记录(
  • 聊天室项目Day3之服务器的http的get和post回复实现
  • 软件信息安全性测试如何进行?有哪些注意事项?
  • 神经网络入门—自定义神经网络续集
  • 2. 单词个数统计
  • WPS JS宏编程教程(从基础到进阶)-- 第六部分:JS集合与映射在 WPS 的应用
  • 关于使用@Slf4j后引入log,idea标红解决办法
  • Linux | I.MX6ULL外设功能验证(11)
  • FreeRTOS项目工程完善指南:STM32F103C8T6系列
  • 【结合vue源码,分析vue2及vue3的数据绑定实现原理】
  • 【力扣hot100题】(083)零钱兑换
  • Redis 持久化机制详解:RDB/AOF 过程、优缺点及配置。Redis持久化中的Fork与Copy-on-Write技术解析。
  • android studio 2022打开了v1 签名但是生成的apk没有v1签名问题
  • C# 组件的使用方法
  • Python proteinflow 库介绍
  • Java中List方法的使用详解
  • ​​大数据量统计优化方案(日/月/年统计场景)​
  • 自己架设服务器建网站/佛山网站搜索排名
  • 自建b2b平台有哪些/seo搜索引擎优化培训班
  • 五金设备网站建设/seo工作职责
  • 做网站的系统设计/百度快照关键词推广
  • 临沂网站制作页面/建站之星官网
  • 免费网站制作app/什么叫做seo