如何在 Debian 12 上安装 Suricata IDS/IPS如何在 Debian 12 上安装 Suricata IDS/IPS如何在 Debian 12 上安装 Suricata IDS/IPS如何在 Debian 12 上安装 Suricata IDS/IPS
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容
发表 admin at 2025年2月28日
类别
  • 未分类
标签

如何在 Debian 12 上安装 Suricata IDS/IPS

Suricata 是开放信息安全基金会 (OISF) 开发的一款功能强大的开源网络分析和威胁检测软件。 Suricata 可用于多种用途,例如入侵检测系统 (IDS)、入侵防御系统 (IPS) 和网络安全监控引擎。

Suricata 使用规则和签名语言来检测和防止网络上的威胁。它是企业和小型和大型公司使用的免费且功能强大的网络安全工具。

在本教程中,我们将逐步向您展示如何在 Debian 12 上安装 Suricata。我们还将向您展示如何使用 suricata-update 实用程序配置 Suricata 和管理 Suricata 规则集。

先决条件

在继续之前,请确保您具备以下条件:

  • Debian 12 服务器。
  • 具有 sudo 管理员权限的非 root 用户。

安装 Suricata

Suricata 是一个网络安全监控引擎,可用于 IDS(入侵检测系统)和 IPS(入侵防御系统)。它可以安装在大多数 Linux 发行版上。对于 Debian,Suricata 可在 Debian Backports 存储库中找到。

首先运行以下命令来激活 Debian Bookworkm 的向后移植存储库。

sudo echo "deb http://deb.debian.org/debian/ bookworm-backports main" > /etc/apt/sources.list.d/bookworm-backports.sources.list

然后,使用以下命令更新包索引。

sudo apt update

更新存储库后,使用以下 apt install 命令安装 suricata 软件包。输入 y 确认安装。

sudo apt install suricata

现在 Suricata 已安装,请使用以下 systemctl 命令检查 Suricata 服务。

sudo systemctl is-enabled suricata
sudo systemctl status suricata

以下输出应确认 Suricata 已启用并在您的系统上运行。

您还可以通过运行以下命令来检查 Suricata 版本。

sudo suricata --build-info

在此示例中,您已通过 Debian 计算机上的反向移植存储库安装了 Suricata 6.0。

配置Suricata

安装 Suricata 后,您需要配置 Suricata 来监控目标网络接口。为此,您可以使用ip 命令实用程序找出网络接口的详细信息。然后配置 Suricata 配置 /etc/suricata/suricata.yaml 来监控目标网络接口。

在配置Suricata之前,请通过运行以下命令检查Internet访问的默认网关。

ip -p -j route show default

在此示例中,服务器的默认 Internet 网关是接口 eth0,Suricata 将监视接口 eth0。

现在使用以下 nano 编辑器命令打开默认 Suricata 配置 /etc/suricata/suricata.yaml。

sudo nano /etc/suricata/suricata.yaml

将默认选项 Community-id 更改为 true。

    # enable/disable the community id feature.
      community-id: true

在 HOME_NET 变量中,将默认网络子网更改为您的子网。

    # HOME_NET variable
    HOME_NET: "[192.168.10.0/24]"

在 af-packet 部分中,输入网络接口的名称,如下所示。

af-packet:
    - interface: eth0

然后将以下行添加到下面的配置中,以动态启用实时重新加载规则。

detect-engine:
  - rule-reload: true

完成后保存并关闭文件。

接下来,运行以下命令重新加载 Suricata 规则集而不终止进程。然后使用以下 systemctl 命令重新启动 Suricata 服务。

sudo kill -usr2 $(pidof suricata)
sudo systemctl restart suricata

最后,使用以下命令检查 Suricata。

sudo systemctl status suricata

Suricata 服务现在应该使用新设置运行。

通过 Suricata-update 管理 Suricata 规则集

规则集是一组签名,可自动检测网络接口上的恶意流量。在下一节中,您将通过 suricata-update 命令行下载和管理 Suricata 规则集。

如果您是第一次安装 Suricata,请运行 suricata-update 命令将规则集下载到您的 Suricata 安装中。

sudo suricata-update

在以下输出中,您应该看到规则集“Emerging Threats Open”或et/open已下载并存储在目录/var/lib/suricata中/rules/suricata.rules。您还应该看到有关下载的规则的信息,例如总共 45055 和 35177 激活的规则。

现在使用以下 nano 编辑器命令重新打开 suricata 配置 /etc/suricata/suricata.yaml。

sudo nano /etc/suricata/suricata.yaml

将默认规则路径更改为 /var/lib/suricata/rules,如下所示:

default-rule-path: /var/lib/suricata/rules

完成后保存并关闭文件。

然后运行以下命令重新启动 Suricata 服务并应用更改。然后,检查 Suricata 是否真正运行。

sudo systemctl restart suricata
sudo systemctl status suricata

如果一切正常,您应该看到以下输出:

您还可以通过运行以下命令启用 et/open 规则集并检查已启用的规则集列表。

suricata-update enable-source et/open
suricata-update list-sources --enabled

您应该看到 et/open 规则集已启用。

以下是您需要了解的规则集管理的一些 suricata-update 命令。

使用以下命令更新 suricata 规则集索引。

sudo suricata-update update-sources

检查索引中可用规则集源的列表。

suricata-update list-sources

现在您可以使用以下命令激活 suricata 规则集。在此示例中,您将激活新规则集 oisf/trafficid。

suricata-update enable-source oisf/trafficid

接下来,您将再次更新 Suricata 规则并重新启动 Suricata 服务以应用更改。

sudo suricata-update
sudo systemctl restart suricata

您可以再次运行以下命令以确保规则集已启用。

suricata-update list-sources --enabled

您还可以使用以下命令禁用规则集。

suricata-update disable-source et/pro

如果要删除规则集,请使用以下命令。

suricata-update remove-source et/pro

测试 Suricata 作为 IDS

Suricata 作为 IDS(入侵检测系统)的安装和配置现已完成。在下一步中,您将使用 ET/Open 专门用于测试的签名 ID 2100498 来测试您的 Suricata IDS。

您可以通过运行以下命令从 ET/Open 规则集中检查签名 ID 2100498。

grep 2100498 /var/lib/suricata/rules/suricata.rules

当您访问内容为“uid=0(root) gid=0(root) groups=0(root)”的文件时,签名 ID 2100498 会向您发出警告。发出的警告可以在文件 /var/log/suricata/fast.log 中找到。

使用以下 tail 命令检查 /var/log/suricata/fast.log 日志 文件。

tail -f /var/log/suricata/fast.log

打开一个新终端并连接到您的 Debian 服务器。然后运行以下命令来测试 Suricata 安装。

curl http://testmynids.org/uid/index.html

如果一切顺利,您应该会看到文件 /var/log/suricata/fast. 日志中的警报已被触发。

您还可以检查文件/var/log/suricata/eve.json中的json格式日志。

首先,通过运行以下 apt 命令安装 jq 工具。

sudo apt install jq -y

安装 jq 后,使用 tail 和 jq 命令检查日志文件 /var/log/suricata/eve.j 子文件。

sudo tail -f /var/log/suricata/eve.json | jq 'select(.event_type=="alert")'

您应该看到输出格式为 json。

以下是您可以用来检查统计信息的一些其他命令。

sudo tail -f /var/log/suricata/eve.json | jq 'select(.event_type=="stats")|.stats.capture.kernel_packets'
sudo tail -f /var/log/suricata/eve.json | jq 'select(.event_type=="stats")'

结论

恭喜您在 Debian 12 服务器上成功安装 Suricata 作为 IDS(入侵检测系统)。您还通过 Suricata 监控了网络接口,并完成了 Suricata-update 实用程序管理规则集的基本使用。最后,您通过查看 Suricata 日志将 Suricata 作为 IDS 进行了测试。

©2015-2025 艾丽卡 support@alaica.com