如何在Ubuntu 22.04上安装Malcolm网络流量分析工具如何在Ubuntu 22.04上安装Malcolm网络流量分析工具如何在Ubuntu 22.04上安装Malcolm网络流量分析工具如何在Ubuntu 22.04上安装Malcolm网络流量分析工具
  • 文章
  • 正则表达式
    • 工具
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

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

如何在Ubuntu 22.04上安装Malcolm网络流量分析工具

在此页

  1. 先决条件
  2. 创建马尔科姆系统用户
  3. 安装马尔科姆 Ubuntu 22.04
  4. 配置马尔科姆
  5. 创建 Malcolm 管理员帐户
  6. 拉取 Malcolm Docker 镜像
  7. 启动 Malcolm 服务
  8. 访问马尔科姆

Malcolm 是一个简单易用且功能强大的网络流量分析工具。它能够捕获工件(PCAP 文件)和 Zeek 日志。 Malcolm 提供了一个相互关联的框架,使其大于各部分之和。 Malcolms 简单、灵活的部署和强大的工具组合填补了网络安全领域的空白,并使公共和私营部门的许多人都可以访问高级网络流量分析。

在这篇文章中,我们将向您展示如何在 Ubuntu 22.04 上安装 Malcolm 网络流量分析工具。

先决条件

  • 一台运行 Ubuntu 22.04 的服务器。
  • 至少 16 GB RAM 和 4 个 CPU 内核。
  • 在服务器上配置了根密码。

创建 Malcolm 系统用户

首先,您需要创建一个专门的用户帐户来运行 Malcolm。您可以使用以下命令创建它:

useradd -m -d /opt/malcolm -s /bin/bash -G sudo malcolm

接下来,使用以下命令设置用户密码:

passwd malcolm

接下来,使用以下命令检查 Malcolm 用户的 UID:

id malcolm

您应该看到以下输出:

uid=1000(malcolm) gid=1000(malcolm) groups=1000(malcolm),27(sudo)

安装马尔科姆 Ubuntu 22.04

首先,将用户切换到 Malcolm 并使用以下命令下载最新版本的 Malcolm:

su - malcolm
git clone https://github.com/idaholab/Malcolm

下载完成后,将目录更改为下载的目录并使用以下命令开始安装 Malcolm:

cd Malcolm
sudo ./scripts/install.py

安装过程中会问你几个问题,如下图:

Installing required packages: ['apache2-utils', 'make', 'openssl', 'python3-dialog']

"docker info" failed, attempt to install Docker? (Y/n): Y

Attempt to install Docker using official repositories? (Y/n): Y
Installing required packages: ['apt-transport-https', 'ca-certificates', 'curl', 'gnupg-agent', 'software-properties-common']


Installing docker packages: ['docker-ce', 'docker-ce-cli', 'containerd.io']
Installation of docker packages apparently succeeded

Add a non-root user to the "docker" group?: Y

Enter user account: malcolm

Add another non-root user to the "docker" group?: n

"docker-compose version" failed, attempt to install docker-compose? (Y/n): Y

Install docker-compose directly from docker github? (Y/n): Y
Download and installation of docker-compose apparently succeeded


fs.file-max increases allowed maximum for file handles
fs.file-max= appears to be missing from /etc/sysctl.conf, append it? (Y/n): Y


fs.inotify.max_user_watches increases allowed maximum for monitored files
fs.inotify.max_user_watches= appears to be missing from /etc/sysctl.conf, append it? (Y/n): Y


fs.inotify.max_queued_events increases queue size for monitored files
fs.inotify.max_queued_events= appears to be missing from /etc/sysctl.conf, append it? (Y/n): Y


fs.inotify.max_user_instances increases allowed maximum monitor file watchers
fs.inotify.max_user_instances= appears to be missing from /etc/sysctl.conf, append it? (Y/n): Y

vm.max_map_count increases allowed maximum for memory segments
vm.max_map_count= appears to be missing from /etc/sysctl.conf, append it? (Y/n): Y


net.core.somaxconn increases allowed maximum for socket connections
net.core.somaxconn= appears to be missing from /etc/sysctl.conf, append it? (Y/n): Y

vm.dirty_background_ratio defines the percentage of system memory fillable with "dirty" pages before flushing
vm.dirty_background_ratio= appears to be missing from /etc/sysctl.conf, append it? (Y/n): Y

vm.dirty_ratio defines the maximum percentage of dirty system memory before committing everything
vm.dirty_ratio= appears to be missing from /etc/sysctl.conf, append it? (Y/n): Y

/etc/security/limits.d/limits.conf increases the allowed maximums for file handles and memlocked segments
/etc/security/limits.d/limits.conf does not exist, create it? (Y/n): Y

安装 Malcolm 后,您可以继续下一步。

配置马尔科姆

安装 Malcolm 后,您需要使用以下命令对其进行配置:

sudo ./scripts/install.py --configure

在 Malcolm 配置期间,系统会询问您几个问题。如下所示回答所有问题:

  • Malcolm 进程将以 UID 1000 和 GID 1000 运行。这样可以吗? (是/否):是
  • 为 OpenSearch 设置 10g,为 Logstash 设置 3g。这个可以吗?是的
  • 为 Logstash 管道设置 3 个工作器。这个可以吗? (是/否):是
  • 在系统或 Docker 守护进程重启时重启 Malcolm?是 然后,选择默认选项,unless-stopped。
  • 选择是否使用 HTTPS 设置 Malcolm:是
  • 选择 Malcolm 是否会在任何代理后面运行:否
  • 选择网络:只需输入接受默认设置。选择 LDAP:否
  • 将 OpenSearch 索引快照主机本地存储在 /opt/malcolm/Malcom/opensearch-backup 中?是的
  • 选择压缩 OpenSearch 索引快照:是
  • 是否要在数据库超过一定大小时删除最旧的索引:否
  • 本地反向 DNS 查找日志中的源和目标 IP 地址:否
  • 硬件供应商 OUI 查找 MAC 地址:是
  • 对某些字段执行字符串随机性评分:是
  • 向外部主机公开 OpenSearch 端口:否
  • 向外部主机公开 Logstash 端口:否
  • 将 Logstash 日志转发到外部 OpenSearch 实例:否
  • 向外部主机公开 Filebeat TCP 端口:否
  • 使用 Zeek 启用文件提取:是
  • 选择有趣作为提取行为。选择文件保存方式:隔离
  • 使用 ClamAV 扫描提取的文件/PE 文件:是
  • 使用 Yara 扫描提取的文件/PE 文件:是
  • 使用 Capa 扫描提取的文件/PE 文件:是
  • 使用 VirusTotal 查找提取的文件哈希值:否
  • 定期下载更新的扫描仪签名:是
  • Malcolm 是否应该将网络流量捕获到 PCAP 文件:是
  • 指定 Malcolm 将用于网络流量的捕获接口(以逗号分隔):eth0
  • 使用 netsniff-ng 捕获数据包? (是/否):是
  • 使用 tcpdump 捕获数据包? (是/否):否
  • Capture filter (tcpdump-like filter expression; leave blank to capture all traffic)(): 可以禁用与Elasticsearch(端口9200)、Logstash(5044)、Arkime(8005)相关的流量:不是9200端口也不是端口5044 而不是端口 8005
  • 禁用捕获接口硬件卸载并调整环形缓冲区大小? (是/否):否

配置 Malcolm 后,重新启动系统以应用配置。

sudo reboot

创建 Malcolm 管理员帐户

接下来,您需要创建一个管理帐户来访问 Malcolm Web 界面。

首先,将用户切换到 Malcolm 并使用以下命令导航到 Malcolm 目录:

su - malcolm
cd ~/Malcolm

接下来,运行以下命令创建一个管理员帐户:

./scripts/auth_setup

如下所示回答所有问题以创建管理员帐户:

  • 用于本地 Malcolm 访问的存储管理员用户名/密码?是的
  • 设置管理员密码和用户名。
  • (重新)为网络流量 HTTPS 生成自签名 SSL 证书:是
  • (重新)为远程日志转发器生成自签名证书:是
  • 存储用于将 Logstash 事件转发到辅助的外部 OpenSearch 实例的用户名/密码:否。存储电子邮件警报发件人帐户的用户名/密码:否

拉取 Malcolm Docker 镜像

接下来,您需要从 Docker Hub 注册表下载所有必需的 Docker 映像。您可以使用以下命令下载所有内容:

docker-compose pull

下载所有图像后,使用以下命令验证所有图像:

docker images

您应该得到以下输出:

REPOSITORY                        TAG       IMAGE ID       CREATED       SIZE
malcolmnetsec/filebeat-oss        6.2.0     5e9fa4c8ea2d   11 days ago   648MB
malcolmnetsec/arkime              6.2.0     4f4e6025c82d   11 days ago   793MB
malcolmnetsec/zeek                6.2.0     5b117ad2b4bb   11 days ago   1.4GB
malcolmnetsec/dashboards          6.2.0     9dcaff859eec   11 days ago   1.13GB
malcolmnetsec/logstash-oss        6.2.0     cf4d75dcf4af   11 days ago   1.64GB
malcolmnetsec/file-monitor        6.2.0     26227c3c7dc9   11 days ago   589MB
malcolmnetsec/nginx-proxy         6.2.0     3b8b5413b52e   11 days ago   121MB
malcolmnetsec/file-upload         6.2.0     2c704be24433   11 days ago   263MB
malcolmnetsec/api                 6.2.0     90f964b5d728   11 days ago   148MB
malcolmnetsec/suricata            6.2.0     cbdb091d2df4   11 days ago   274MB
malcolmnetsec/htadmin             6.2.0     2b55630700d1   11 days ago   242MB
malcolmnetsec/opensearch          6.2.0     9ccb4665bd6c   11 days ago   1.25GB
malcolmnetsec/pcap-monitor        6.2.0     d957d803bdbb   11 days ago   214MB
malcolmnetsec/freq                6.2.0     3959a9daa952   11 days ago   131MB
malcolmnetsec/dashboards-helper   6.2.0     7da9699a72b3   11 days ago   168MB
malcolmnetsec/pcap-capture        6.2.0     df63e8daa369   11 days ago   121MB
malcolmnetsec/name-map-ui         6.2.0     6bd6c7c58d36   11 days ago   120MB

启动马尔科姆服务

此时,Malcolm 所需的所有组件都已准备就绪。您现在可以使用以下命令启动 Malcolm 服务:

./scripts/start

等待一段时间以启动所有服务。所有服务启动后,使用以下命令验证所有正在运行的服务:

docker ps -a

您应该在以下输出中看到所有正在运行的容器:

CONTAINER ID   IMAGE                                   COMMAND                  CREATED          STATUS                             PORTS                                                                                            NAMES
840ea2b0e9ad   malcolmnetsec/nginx-proxy:6.2.0         "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          0.0.0.0:443->443/tcp, 127.0.0.1:5601->5601/tcp, 0.0.0.0:488->488/tcp, 127.0.0.1:9200->9200/tcp   malcolm-nginx-proxy-1
dd5c8c63816c   malcolmnetsec/suricata:6.2.0            "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)                                                                                                           malcolm-suricata-1
3112e1bd8f73   malcolmnetsec/filebeat-oss:6.2.0        "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          127.0.0.1:5045->5045/tcp                                                                         malcolm-filebeat-1
c93cfe93ad7e   malcolmnetsec/file-upload:6.2.0         "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          80/tcp, 127.0.0.1:8022->22/tcp                                                                   malcolm-upload-1
18ee20b46f3c   malcolmnetsec/dashboards:6.2.0          "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          5601/tcp                                                                                         malcolm-dashboards-1
2c34206c06e4   malcolmnetsec/zeek:6.2.0                "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)                                                                                                           malcolm-zeek-1
41103ef99ce1   malcolmnetsec/logstash-oss:6.2.0        "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          9001/tcp, 127.0.0.1:5044->5044/tcp, 9600/tcp                                                     malcolm-logstash-1
0408f42a76c3   malcolmnetsec/dashboards-helper:6.2.0   "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          28991/tcp                                                                                        malcolm-dashboards-helper-1
3e78024620de   malcolmnetsec/arkime:6.2.0              "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          8000/tcp, 8005/tcp, 8081/tcp                                                                     malcolm-arkime-1
58cd869beced   malcolmnetsec/pcap-monitor:6.2.0        "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          30441/tcp                                                                                        malcolm-pcap-monitor-1
1040fa8bd6df   malcolmnetsec/file-monitor:6.2.0        "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          3310/tcp, 8440/tcp                                                                               malcolm-file-monitor-1
25c83f14413d   malcolmnetsec/zeek:6.2.0                "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes                                                                                                                       malcolm-zeek-live-1
b321a96c0362   malcolmnetsec/api:6.2.0                 "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          5000/tcp                                                                                         malcolm-api-1
0f1f4ac023f9   malcolmnetsec/name-map-ui:6.2.0         "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          8080/tcp                                                                                         malcolm-name-map-ui-1
ba4d553cf6b5   malcolmnetsec/suricata:6.2.0            "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes                                                                                                                       malcolm-suricata-live-1
e4637d0ec04d   malcolmnetsec/opensearch:6.2.0          "/usr/local/bin/dock…"   17 minutes ago   Up 13 minutes (health: starting)   9200/tcp, 9300/tcp, 9600/tcp, 9650/tcp                                                           malcolm-opensearch-1
ac002e31d9be   malcolmnetsec/htadmin:6.2.0             "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          80/tcp                                                                                           malcolm-htadmin-1
7223d5244a7b   malcolmnetsec/pcap-capture:6.2.0        "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes                                                                                                                       malcolm-pcap-capture-1
971931b21788   malcolmnetsec/freq:6.2.0                "/usr/local/bin/dock…"   17 minutes ago   Up 17 minutes (unhealthy)          10004/tcp                                                                                        malcolm-freq-1

您还可以使用以下命令验证所有侦听端口:

ss -atlnp | grep -i docker

您应该看到以下输出:

LISTEN 0      65535      127.0.0.1:5601       0.0.0.0:*    users:(("docker-proxy",pid=7480,fd=4))   
LISTEN 0      65535        0.0.0.0:488        0.0.0.0:*    users:(("docker-proxy",pid=7519,fd=4))   
LISTEN 0      65535      127.0.0.1:9200       0.0.0.0:*    users:(("docker-proxy",pid=7443,fd=4))   
LISTEN 0      65535      127.0.0.1:5044       0.0.0.0:*    users:(("docker-proxy",pid=6247,fd=4))   
LISTEN 0      65535      127.0.0.1:5045       0.0.0.0:*    users:(("docker-proxy",pid=7063,fd=4))   
LISTEN 0      65535      127.0.0.1:8022       0.0.0.0:*    users:(("docker-proxy",pid=6826,fd=4))   
LISTEN 0      65535        0.0.0.0:443        0.0.0.0:*    users:(("docker-proxy",pid=7567,fd=4))

访问马尔科姆

您现在可以使用 URL https://your-server-ip/dashboards/ 访问 Malcolm OpenSearch 仪表板。您将被要求提供您的管理员用户名和密码:

提供您的管理员用户名和密码,然后单击“登录”按钮。您应该会在以下屏幕上看到 OpenSearch 仪表板:

要访问 Malcolm 捕获文件和日志存档上传屏幕,请键入 URL https://your-server-ip/upload/。

要访问主机和子网名称映射编辑器,请键入 URL https://your-server-ip/name-map-ui/。

要访问账户管理屏幕,请使用 URL https://your-server-ip:488/

恭喜!您已经在 Ubuntu 22.04 上成功安装并配置了 Malcolm 网络流量分析工具。

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