0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何使用树莓派和Wazuh保障家庭网络安全?

上海晶珩电子科技有限公司 2025-06-30 17:59 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

欢迎来到家庭安全的世界,在这里,保护你的数字资产是重中之重。在当今这个互联互通的时代,建立一个强大的防御系统来检测和应对潜在威胁至关重要。

这就是为什么我们要在这里引导你完成一个激动人心的教程,教你如何使用Wazuh——一个令人难以置信的开源安全监控平台——在树莓派上构建一个安全的网络。但等等,还有更多!我们还将通过Telegram的力量,为你创建一个便捷的通知中心,以便即时接收警报和更新。

完成本教程后,你将拥有一个可靠且经济实惠的解决方案,用于监控网络的安全性,并通过实时通知让你随时了解情况。无论你是小企业主、家庭网络爱好者,还是重视隐私和安心的人——我们都能满足你的需求!

这个分步指南将为你提供加固数字防御所需的知识和工具。

拿起你的树莓派,系好安全带——是时候让你的网络变得更安全、更智能、更酷炫了。

硬件设备

没有主角,这个教程可难以进行:

树莓派4 Model B——8GB RAM

Micro SD卡——理想情况下是128GB,但32GB也可以

你喜欢的树莓派外壳

注意事项:Wazuh宣布,对于1-25个代理,我们需要至少8GB RAM;对于90天的监控,需要50GB存储空间。

软件要求

对于树莓派,我们将使用Ubuntu Server 22.04.5 LTS(64位)

为了安装镜像,我强烈推荐使用Raspberry Pi Imager。

它基本上让整个安装过程变得简单得多,因为你无需在线搜索所需的镜像,它本身就提供了一个完整的列表:

如果你选择这个选项:

1.选择操作系统 > 其他通用操作系统 > Ubuntu > Ubuntu Server 22.04.5 LTS(64位)

2.选择存储设备 > 选择你的SD卡

3.在点击“写入”之前——点击右下角的设置,你以后会感谢我的:

e44b08ba-5598-11f0-986f-92fbcf53809c.png

树莓派镜像

在这里,你可以预设SSH访问,以及树莓派访问你的WiFi的方式,这基本上可以避免你手动创建所有openssh-server相关的东西。

免责声明:对于这里的安全专业人士来说,使用密码认证进行SSH连接当然不是最佳实践,使用公钥密码保护会更好,但好吧,让我们为初学者保持简单。

专业提示:最初,我不会选择“wazuh”作为主机名,因为这可能会帮助网络上的某人识别你的宝贵资产。

最后,点击写入按钮,事情就要开始热起来了

我的树莓派在哪里?

在将全新的操作系统插入树莓派后,你可能需要让它几分钟时间来连接到你的网络。

如果你在网络方面还是个新手,你可能会想知道如何在网络上找到你的树莓派。好吧,让我给你一个简单的方法:

nmap192.168.1.1-254

这应该会列出你本地网络上的所有设备,你可以在其中找到我们的主机名“wazuh”。

Wazuh安装

关于在树莓派上安装Wazuh,有几点需要了解。

最初,Wazuh提供了一个现成的脚本,让你能够在几分钟内安装完整的Wazuh包,但这基本上适用于amd架构,而树莓派实际上使用的是arm架构。

虽然这个快捷方式对我们来说不可用,但没关系,树莓派近年来取得了巨大的改进,让我们能够明智地利用投资的8GB RAM。

一体化部署——Elastic Stack

这是我们今天要实现的架构。

e45ae488-5598-11f0-986f-92fbcf53809c.png

一体化部署--由Wazuh提供

下面将介绍的步骤适用于Wazuh 4.4版本,并分为以下几个部分:

1.安装先决条件——安装需要一些额外的软件包,如curl或unzip,这些将在后续步骤中使用。然而,如果服务器上已经安装了curl和unzip,则可以跳过此步骤。

2.安装Elasticsearch——Elasticsearch是一个高度可扩展的全文搜索和分析引擎。

3.安装Wazuh服务器——Wazuh服务器收集并分析来自部署的代理的数据。它运行Wazuh管理器、Wazuh API和Filebeat。设置Wazuh的第一步是将Wazuh仓库添加到服务器上,然后是管理器本身。

4.安装Filebeat——Filebeat是Wazuh服务器上的工具,用于将警报和归档事件安全地转发到Elasticsearch。

5.安装Kibana——Kibana是一个灵活且直观的Web界面,用于挖掘和可视化存储在Elasticsearch中的事件和归档。

无需我从官方文档中大量复制粘贴,他们会比我在这篇文章中更新得更及时。请查看这些分步指南,并确保选择了正确的软件包管理器以及系统和服务管理器。

在我们的情况下,由于我们使用的是Ubuntu Server,你将使用apt和systemctl。

部署你的代理——你的私人间谍

你现在已经有了第一个Wazuh服务器,仪表板类似于以下内容:

e468a38e-5598-11f0-986f-92fbcf53809c.png

Wazuh 仪表板

但现在是时候安装你的第一个代理了

假设你是一个普通公民,你在家里应该运行的是MacOS或Windows。(Linux用户,你们好)。对你来说有个好消息,代理的安装对于这两个操作系统都有GUI安装程序:

Windows代理

MacOS代理

l

在两种情况下,你都需要运行可执行文件,然后就好了!好吧,并不完全是这样,你现在需要让你的代理明白它应该向谁报告。基本上,Wazuh服务器在哪里?对你来说,这个阶段很容易,因为你已经知道树莓派的IP地址了。假设地址是192.168.1.43。

要注册代理,你有两种方法:

1.通过代理配置注册

2.通过管理器API注册

由于我们是真正的OG,我们将选择第一种方法:

MacOS & Linux

1.以root用户身份启动终端,编辑Wazuh代理配置文件/Library/Ossec/etc/ossec.conf。

2.在部分中包含Wazuh管理器IP地址:

MANAGER_IP (Here your192.168.1.43)

Windows

逻辑相同,区别在于代理的位置不同,因为Wazuh代理安装目录取决于主机的架构:

对于64位系统:C:\Program Files (x86)\ossec-agent

对于32位系统:C:\Program Files\ossec-agent

使用管理员账户,在安装目录中修改Wazuh代理配置文件ossec.conf。

给Wazuh几分钟时间来获取数据,然后就开始吧!仪表板应该开始接收数据了。

Telegram——你的个人通知中心

现在你已经有了SIEM(安全信息和事件管理)系统,是时候为你提供一个实时通知系统了。Wazuh提供了与Slack、Jira或电子邮件的集成,但说实话,这绝对不是在家里接收安全事件通知的最舒适方式。

创建你的Telegram机器人

你可能会认为创建一个机器人会让你陷入一系列编码和数小时的API文档阅读中。实际上,这就像在Telegram上发送一条消息一样简单:只需联系BotFather。

你可以看到一些简单的命令,这些命令将允许你管理你的机器人:

e477d502-5598-11f0-986f-92fbcf53809c.png

来自Telegram的BotFather

然后创建你的机器人,并获取你的HTTP API令牌:

e48aa60a-5598-11f0-986f-92fbcf53809c.png

获取你的 API Token

如何管理与Telegram的自定义集成?

对于这项任务,有两个重要的位置需要了解:

本地配置:/var/ossec/etc/ossec.conf——Wazuh的配置文件所在位置

集成位置:/var/ossec/integrations/——你找到集成文件的位置

为了简化操作,一旦你创建了集成,你需要通过引用它来让本地配置知道这个自定义集成的存在。

脚本要求

要让脚本工作,有两个要求:

安装requests包,因为我们的Python脚本将向Telegram API发出调用

pip3install requests

你需要你的Telegram CHATID。在找到ID之前,确保向你的机器人发送一条“hello”消息,以便在你们之间创建一个聊天。

https://api.telegram.org/bot/getUpdates

这将给你一个类似以下的结果:

{"ok":true,"result":[{"update_id":534302469,"message":{"message_id":2,"from":{"id":38475931,"is_bot":false,"first_name":"xxxxxx","last_name":"xxxxxx","username":"xxxxxx","language_code":"ua"},

自定义集成的脚本

无需进一步解释,进入/var/ossec/integrations/并执行以下命令:

nanocustom-telegram

复制/粘贴以下脚本(别忘了更改ChatID):

#!/usr/bin/env python3# -*- coding: utf-8 -*-importsysimportjsontry: importrequestsexceptException: print("No module 'requests' found. Install: pip3 install requests") sys.exit(1)CHAT_ID ="xxxxxxxx"defcreate_message(alert_json): # Get alert information title = alert_json['rule']['description']if'description'inalert_json['rule']else'' description = alert_json['full_log']if'full_log'inalert_jsonelse'' description.replace("\\n","\n") alert_level = alert_json['rule']['level']if'level'inalert_json['rule']else'' groups =', '.join(alert_json['rule']['groups'])if'groups'inalert_json['rule']else'' rule_id = alert_json['rule']['id']if'rule'inalert_jsonelse'' agent_name = alert_json['agent']['name']if'name'inalert_json['agent']else'' agent_id = alert_json['agent']['id']if'id'inalert_json['agent']else'' # Format message with markdown msg_content =f'*{title}*\n\n' msg_content +=f'_{description}_\n' msg_content +=f'*Groups:*{groups}\n'iflen(groups) >0else'' msg_content +=f'*Rule:*{rule_id}(Level{alert_level})\n' msg_content +=f'*Agent:*{agent_name}({agent_id})\n'iflen(agent_name) >0else'' msg_data = {} msg_data['chat_id'] = CHAT_ID msg_data['text'] = msg_content msg_data['parse_mode'] ='markdown' # Debug information withopen('/var/ossec/logs/integrations.log','a')asf: f.write(f'MSG:{msg_data}\n') returnjson.dumps(msg_data)# Read configuration parametersalert_file =open(sys.argv[1])hook_url = sys.argv[3]# Read the alert filealert_json = json.loads(alert_file.read())alert_file.close()# Send the requestmsg_data = create_message(alert_json)headers = {'content-type':'application/json','Accept-Charset':'UTF-8'}response = requests.post(hook_url, headers=headers, data=msg_data)# Debug informationwithopen('/var/ossec/logs/integrations.log','a')asf: f.write(f'RESPONSE:{response}\n')sys.exit(0)

(如果你想了解更多关于脚本的信息,请随时查看以下文章,其中@jesusjimsa在提供脚本和详细解释方面做得非常出色。)

让脚本可执行,并赋予它适当的权限:

chmod750 /var/ossec/integrations/custom-telegramchownroot:wazuh /var/ossec/integrations/custom-telegram

重要警告——集成的名称应以“custom-”开头,否则我们亲爱的Wazuh将不明白你在期待什么。

最后但同样重要的是,是时候通过更新/var/ossec/etc/ossec.conf来完成设置了:

custom-telegramname> https://api.telegram.org/bot/sendMessagehook_url> jsonalert_format>integration>

通过运行以下命令重启Wazuh管理器:systemctl restart wazuh-manager.

重启后,你将看到你的第一条通知,在代理上执行root命令时创建的通知:

e49a0474-5598-11f0-986f-92fbcf53809c.png

原文链接:

https://medium.com/@henrion.frn/get-your-home-network-secured-with-raspberry-pi-wazuh-2023-edition-c7ac2044df3e

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 网络安全
    +关注

    关注

    11

    文章

    3450

    浏览量

    62975
  • 开源
    +关注

    关注

    3

    文章

    4037

    浏览量

    45578
  • 树莓派
    +关注

    关注

    122

    文章

    2069

    浏览量

    109728
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    数字家庭网络组网方式

    主要从数字家庭网络的定义、应用和组成人手,介绍了家庭网络的核心设备家庭网关及其作用,最后讨论了家庭网络组网技术及其与公共网络的GPON接入技
    发表于 11-09 16:26 2793次阅读
    数字<b class='flag-5'>家庭网络</b>组网方式

    基于多Agent系统的智能家庭网络研究

    基于多Agent系统的智能家庭网络研究在分析家庭网络智能化需求的基础上,提出一种基于多Agent系统的智能家庭网络MAIHN模型,用Agent实现不同功能单元的控制与管理,通过MAS技术的思想、方法
    发表于 06-14 00:22

    【MiCOKit申请】智能家庭网

    申请理由:最近在做家庭网关的项目,需要考虑良好性能并低功耗的WiFi产品,希望使用本产品,满足项目需求。本人长期工作与嵌入式领域,熟悉STM32开发和树莓DIY,做过较多基于LwIP的网络
    发表于 08-11 22:33

    数字家庭网络的关键技术是什么?

    数字家庭网络提供的业务类别以及需求有哪些?数字家庭网络的关键技术是什么?
    发表于 05-26 06:20

    如何构建一个无缝/安全的智能家庭网络

    家庭网络”不断发展,如今物联产品之间可以无缝协作,提供智能又安全家庭体验。实际上,最新的智能家居和智能语音家庭助理产品内部十分复杂。家庭
    发表于 11-11 08:10

    家用网络网络安全

    家用网络网络安全 和几乎所有新技术一样,家庭网络也会带来一些安全风险,对此我们必须引起注意。如果您不采取保护措施的话,无线网络可能会超越
    发表于 08-05 10:28 1555次阅读

    家庭网关,家庭网关是什么意思

    家庭网关,家庭网关是什么意思 HG是家庭网络最核心的构成部分。HG,一个高科技的设备,把家庭网络设备和外部
    发表于 04-06 09:41 2.8w次阅读

    具有安全检测和处置的智能家庭网络模型

    针对目前的智能家庭网络模型都不具备事故安全检测和处置能力,采用综合运用集合概念、有向图概念和着色的方法、动态多任务多Agent技术,建立了具有事故安全检测和处置能力的智能家庭网络模型。
    发表于 11-07 16:59 6次下载
    具有<b class='flag-5'>安全</b>检测和处置的智能<b class='flag-5'>家庭网络</b>模型

    家庭网络安全的标准是怎样的

    家庭网络上的设备识别是提供端点安全性,网络安全性和数字育儿的基础。
    发表于 08-12 15:46 2078次阅读

    物联网如何建设一个安全家庭网络

    家庭网络”不断发展,如今物联产品之间可以无缝协作,提供智能又安全家庭体验。
    发表于 03-12 17:11 1675次阅读
    物联网如何建设一个<b class='flag-5'>安全</b>的<b class='flag-5'>家庭网络</b>

    面向多业务的家庭网络模拟

    研究家庭网络技术,并对其仿真对于研究家庭网络的各种特性及未来发展都具有非常重要的意义。文章从现有家庭网络中的设备种类、网络流量特征入手,构建一个符合现有
    的头像 发表于 11-03 14:31 1730次阅读

    家用路由器:简化网络设置和管理,保护家庭网络安全

    家用路由器以其简化网络设置和管理、保护家庭网络安全等优势,成为了家庭网络中不可或缺的重要设备。技术的不断进步和用户需求的不断升级,家用路由器必将继续发挥其优势,为家庭网络带来更多的便捷
    的头像 发表于 03-16 11:23 1160次阅读

    揭秘!家用路由器如何保障你的网络安全

    家用路由器保障网络安全需选知名品牌和型号,设置复杂密码并开启防火墙,定期更新固件,使用安全协议,合理规划网络布局,及时发现并处理异常。提高家庭
    的头像 发表于 05-10 10:50 1582次阅读

    住宅静态IP:如何为你的家庭网络增添保障

    住宅静态IP是指由互联网服务提供商(ISP)分配给家庭网络的固定IP地址,这种IP地址不会频繁更改,为家庭网络提供了一个稳定且可预测的标识。
    的头像 发表于 10-18 07:44 945次阅读

    住宅静态IP:为家庭网络带来的安全与便利

    住宅静态IP地址为家庭网络带来了诸多安全与便利。
    的头像 发表于 10-24 07:50 886次阅读