云计算百科
云计算领域专业知识百科平台

蜜罐管理和数据收集服务器:Modern Honey Network (MHN)

一、Modern Honey Network (MHN)介绍

Modern Honey Network (MHN) 是一个集中化的蜜罐管理和数据收集服务器。它旨在简化蜜罐的部署和管理,并提供一个简洁的 Web 界面来查看捕获的数据。

1、主要功能:

  • 集中化管理: 通过一个中心服务器管理多个蜜罐传感器。
  • 快速部署: 提供脚本,可以快速在远程服务器上部署各种蜜罐技术。
  • 多种蜜罐支持: 支持多种常见的蜜罐技术,包括 Snort、Cowrie、Dionaea 和 Glastopf 等。
  • 实时数据查看: 通过 Web 界面实时查看蜜罐捕获的攻击数据。
  • 数据分析: 提供基本的攻击统计和可视化,并能与 Splunk 和 ArcSight 等安全信息和事件管理 (SIEM) 系统集成,进行更深入的分析。
  • 部署脚本下载: 蜜罐可以通过 MHN 服务器下载部署脚本。
  • 连接和注册: 蜜罐可以连接到 MHN 服务器并注册。
  • Snort 规则下载: 支持集中管理和分发 Snort 入侵检测规则。
  • 入侵检测日志发送: 蜜罐可以将入侵检测日志发送到 MHN 服务器进行统一管理。

2、部署 MHN 的步骤通常如下:

  • 安装 MHN 服务器: 在一台服务器上安装 MHN 软件。MHN 服务器通常运行一个 Flask Web 应用程序。
  • 部署蜜罐传感器: 通过 MHN Web 界面生成部署脚本,然后在需要部署蜜罐的服务器上运行这些脚本。
  • 集中监控: 部署成功的蜜罐传感器会自动连接到 MHN 服务器,并在 Web 界面上显示捕获的攻击数据。
  • 3、 代码地址

    MHN 的主要信息和代码托管在 GitHub 上:

    • 主代码仓库: https://github.com/pwnlandia/mhn

    可以在这个 GitHub 仓库中找到:

    • 源代码: MHN 软件的完整代码。
    • 文档: 关于 MHN 的安装、配置和使用说明(虽然可能需要您仔细阅读 README.md 文件和 Wiki)。
    • 问题跟踪: 用于报告 Bug 和提出功能请求。
    • 社区: 通过 Issues 和 Pull Requests 与开发者和社区成员互动。

    4、总结来说,MHN 的主要优势在于:

    • 简化蜜罐部署和管理流程。
    • 提供了一个统一的平台来监控和分析来自不同蜜罐的数据。
    • 降低了构建和维护蜜罐网络的复杂性。

    二、 Modern Honey Network (MHN)安装

    在中国安装 Modern Honey Network (MHN) 的详细步骤如下。请注意,由于国内网络环境的特殊性,您可能需要采取一些额外的步骤来确保顺利安装和运行。

    1、前提条件:

    • 一台运行 Ubuntu Server 16.04 或更高版本的服务器: 推荐使用干净的 Ubuntu Server 系统。
    • sudo 权限的用户: 您需要具有管理员权限才能执行安装命令。
    • 稳定的网络连接: 安装过程中需要下载软件包。
    • Python 2.7: MHN 主要基于 Python 2.7 开发。
    • (可选但强烈推荐) 配置好的 DNS 解析: 确保您的服务器可以正确解析域名。

    2、安装步骤:

    1. 更新系统软件包:

    首先,通过 SSH 连接到您的 Ubuntu 服务器,并更新软件包列表和已安装的软件包:

    sudo apt update
    sudo apt upgrade -y

    2. 安装必要的依赖包:

    MHN 依赖一些系统软件包,使用以下命令安装它们:

    sudo apt install -y git python-dev libffi-dev libssl-dev python-pip virtualenv

    3. 克隆 MHN 代码仓库:

    使用 git 命令从 GitHub 克隆 MHN 的代码仓库:

    git clone https://github.com/threatstream/mhn.git /opt/mhn
    cd /opt/mhn

    注意: 如果您在国内访问 GitHub 比较慢,可以考虑使用国内的镜像站点或者配置代理。

    4. 创建和激活虚拟环境:

    为了隔离 MHN 的依赖包,建议创建一个 Python 虚拟环境:

    sudo pip install virtualenv # 如果尚未安装 virtualenv
    virtualenv env
    source env/bin/activate

    激活虚拟环境后,您的命令提示符应该会以 (env) 开头。

    5. 安装 MHN 依赖:

    在虚拟环境中,使用 pip 安装 MHN 所需的 Python 包:

    pip install -r requirements.txt

    注意: 国内网络环境下,pip 下载速度可能会比较慢或出现连接问题。您可以考虑使用国内的 PyPI 镜像源来加速下载。例如,使用阿里云镜像:

    pip install -r requirements.txt -i https://mirrors.aliyun.com/pypi/simple/

    或者清华大学镜像:

    pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

    6. 复制并编辑配置文件:

    复制 MHN 的默认配置文件并进行必要的编辑:

    cp mhn/mhn.conf.example mhn/mhn.conf
    nano mhn/mhn.conf

    在 mhn.conf 文件中,您需要至少配置以下选项:

    • mhn_ip: MHN 服务器的 IP 地址。确保设置为您的服务器的公网 IP 或您希望 MHN 监听的 IP 地址。
    • web_ip: Web 界面的监听 IP 地址,通常设置为 0.0.0.0 允许所有 IP 访问。
    • web_port: Web 界面的监听端口,默认为 80。如果使用 80 端口,请确保没有其他服务占用。
    • amqp_uri: RabbitMQ 的连接 URI。MHN 默认使用本地 RabbitMQ。
    • database_uri: MongoDB 的连接 URI。MHN 默认使用本地 MongoDB。

    您可以根据您的实际环境修改其他配置选项。保存并关闭文件。

    7. 安装和配置 MongoDB:

    MHN 使用 MongoDB 存储捕获的数据。如果您的服务器上尚未安装 MongoDB,请进行安装:

    sudo apt install -y mongodb
    sudo systemctl enable mongodb
    sudo systemctl start mongodb

    您可能需要根据您的 MongoDB 配置进行一些调整,例如设置用户认证。

    8. 安装和配置 RabbitMQ:

    MHN 使用 RabbitMQ 作为消息队列。如果您的服务器上尚未安装 RabbitMQ,请进行安装:

    sudo apt install -y rabbitmq-server
    sudo systemctl enable rabbitmq-server
    sudo systemctl start rabbitmq-server

    9. 初始化 MHN 数据库:

    运行 MHN 的管理脚本来初始化数据库:

    python mhn/manage.py db upgrade

    10. 创建管理员用户:

    使用管理脚本创建一个 MHN Web 界面的管理员用户:

    python mhn/manage.py createsuperuser

    按照提示输入用户名、电子邮件地址和密码。

    11. 运行 MHN 服务:

    使用 honssh 命令启动 MHN 的核心服务:

    honssh &

    这将使 MHN 在后台运行。您可以使用 jobs 命令查看后台运行的进程。

    12. 运行 MHN Web 界面:

    使用 python mhn/run.py 命令启动 Web 界面:

    python mhn/run.py &

    同样,这将在后台运行 Web 界面。

    13. 访问 MHN Web 界面:

    在 Web 浏览器中,访问 http://<您的服务器IP地址>:<您在 mhn.conf 中配置的 web_port>。例如,如果您的服务器 IP 是 192.168.1.100 并且您使用默认的 80 端口,则访问 http://192.168.1.100/。

    使用您在步骤 10 中创建的管理员用户名和密码登录。

    14. 配置蜜罐:

    登录 Web 界面后,您可以开始配置和部署各种蜜罐传感器。在 "Deploy" 选项卡中,您可以选择要部署的蜜罐类型,并获取部署脚本。

    15. 部署蜜罐传感器:

    将生成的部署脚本复制到您要部署蜜罐的远程服务器上,并运行该脚本。蜜罐传感器将自动连接到您的 MHN 服务器并开始发送数据。

    16.国内环境可能遇到的问题和解决方案:

    • GitHub 克隆慢或失败: 尝试使用国内镜像站点或配置 VPN/代理。
    • pip 下载慢或连接问题: 使用国内 PyPI 镜像源(如阿里云、清华大学等)。
    • 网络防火墙阻止连接: 确保您的服务器防火墙允许 MHN 使用的端口(默认为 80 和其他蜜罐所需的端口)的入站连接。
    • 某些蜜罐在国内可能无法正常工作: 由于网络限制或服务可用性问题,某些蜜罐技术可能无法在中国大陆地区正常工作。

    17.后续步骤:

    • 探索 MHN Web 界面: 熟悉 Web 界面的各个功能,例如查看事件、管理蜜罐、配置规则等。
    • 部署更多蜜罐: 根据您的需求部署不同类型的蜜罐传感器。
    • 集成 SIEM 系统 (可选): 配置 MHN 与 Splunk、ArcSight 等 SIEM 系统集成,进行更高级的分析和告警。
    • 监控 MHN 服务: 确保 honssh 和 run.py 进程稳定运行。您可以使用 nohup 或 screen 等工具来管理后台进程,或者配置 systemd 服务。

    希望这些详细步骤能够帮助您成功安装 MHN。

    赞(0)
    未经允许不得转载:网硕互联帮助中心 » 蜜罐管理和数据收集服务器:Modern Honey Network (MHN)
    分享到: 更多 (0)

    评论 抢沙发

    评论前必须登录!