深入解析motionEyeOS:为安全创客打造的视频监控系统

本文详细介绍了如何利用树莓派和motionEyeOS构建低成本的运动检测视频监控系统。从系统安装、网络配置到通知设置,涵盖了完整的实战流程,适合安全爱好者和物联网开发者参考实践。

Toolsmith深度分析:面向安全创客的motionEyeOS

难以置信甚至难以想象,但我们确实走到了这一步。这是第120期连续发布的toolsmith专栏;过去十年间,我每月都自豪地为各位带来免费开源安全工具的见解与分析。希望您和我一样享受这段旅程,我学到了大量知识,也衷心希望您有所收获。若想回顾往期内容,2006年10月至2015年8月的文章均以PDF形式发布在我的网站上,多年内容也同步发布在博客中。

为这次十周年特辑,我斟酌良久该写什么主题,最终决定探讨一个尚未涉足的领域:物理安全。为此我选择了一个非常精巧的创客项目,使用树莓派2、USB网络摄像头和motionEyeOS。据项目开发者Calin Crisan介绍,motionEyeOS是一个将单板计算机转变为视频监控系统的Linux发行版。该系统基于BuildRoot,采用motion作为后端,motionEye作为前端。

Buildroot是"通过交叉编译生成嵌入式Linux系统的简单高效工具"。 Motion(注意命名巧思)是监控摄像头视频信号的程序,能检测画面中是否发生显著变化——即运动检测。 motionEye同样是Calin的项目,是motion守护进程的Web前端。

安装过程极其简单,我遵循Calin的安装指南,使用Win32DiskImager将镜像写入SD卡。以下是简明步骤:

  1. 下载最新motionEyeOS镜像(我使用20160828版用于树莓派2)
  2. 将镜像写入SD卡后插入树莓派
  3. 连接兼容的USB摄像头,启动树莓派。首次启动需等待两分钟(期间切勿断电或重启),系统会执行以下初始化:
    • 准备SD卡数据分区
    • 配置SSH远程访问
    • 自动配置检测到的摄像头设备
  4. 通过HDMI外接显示器、路由器设备列表或网络扫描确定树莓派IP地址(默认启用DHCP)

配置同样简单到不可思议。浏览器访问树莓派IP地址(有线网络为http://192.168.248.20,配置WiFi适配器后为http://192.168.248.64)。首次登录密码为空,需立即修改。界面左上角的圆形三线图标是设置菜单,在此处紧急修改管理员和查看者密码,并立即启用高级设置。

偏好设置

添加摄像头是关键功能,单个motionEyeOS设备可管理多个摄像头,还支持多系统主控模式(详见使用场景说明)。

添加摄像头

启用摄像头后界面将显示实时画面。注意快照、流媒体和嵌入都有独立URL。

活动摄像头与URL

当运动检测触发时,视频帧会显示橙红色边框。悬停视频帧可唤出全屏、查看存储录像等控制选项。

系统提供海量设置选项,除摄像头配置外,最重要的当属存储设置。可选择本地存储或网络共享,这对常开模式与运动触发模式的选择至关重要。

配置文件存储

可配置文本叠加、视频流、静态图像、时间表等功能。

多样化选项

最关键的变量是通知方式。通过命令执行配置可实现自定义脚本或现有方案。

通知命令设置

更支持通过Web Hook集成邮件、Pushover和IFTTT等通知服务。

Web Hook通知

Pi Supply创客专区有篇精彩文章详解Pushover和IFTTT的使用,即使新手也能轻松上手。

最终成果是:通过简单安装和配置,即可获得成本远低于商业方案的运动检测监控系统。

作者在Camera1监视下进入办公室

追求画质者可能觉得图像质量稍逊,但可通过Fast Network Camera模式提升(需注意功能损失)。

总结而言,我高度赞赏这个项目。致敬Calin Crisan的杰出工作!无论是创客还是纯新手,都能轻松搭建运动检测视频/静态相机系统,或构建带常开视频的受控摄像头网络。硬件成本低廉且易获取。如果您尚未接触过树莓派,这是绝佳的入门项目。若需要完全可行的安全视频监控方案,motionEyeOS与您钟爱的物联网硬件(项目支持其他开发板)是完美组合。另请注意树莓派有专用摄像头模块可选。

如有疑问请通过邮件或Twitter联系(russ@holisticinfosec.org或@holisticinfosec)。

下次再见!

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计