更新时间:2023-05-22 09:53:11浏览次数:678+次
本文介绍如何在Rocky Linux 9/AlmaLinux 9/CentOS 9系统上安装配置Wazuh与Wazuh Agent(代理)的方法。硬件的基本要求为4GB RAM,推荐16GB、2个CPU核心,推荐8个CPU核心与64位操作系统。
在Rocky/Alma/CentOS系统上安装Wazuh服务器
在Wazuh安装过程中,用户可以在两个选项之间进行选择:
无人值守安装,Wazuh是使用自动脚本安装的。它执行运行状况检查,以验证可用的系统资源是否满足最低要求。
逐步安装,包括手动安装,并对每个过程进行详细描述。
选择以下首选方法之一,在Rocky Linux 9/AlmaLinux 9/CentOS 9上安装Wazuh服务器。
选项1、Wazuh服务器无人值守安装
这是部署Wazuh服务器的最快方法。您所需要做的就是下载并运行安装程序脚本。
要下载脚本,请使用以下命令:
cd ~/
curl -so wazuh-installation.sh https://packages.wazuh.com/resources/4.2/open-distro/unattended-installation/unattended-installation.sh
下载完成后,使用以下命令启动安装程序:
sudo bash ./wazuh-installation.sh
安装将按如下所示进行:
完成后,您将看到已安装服务的登录详细信息:
选项2、Wazuh服务器逐步安装
第二个步骤涉及手动安装Wazuh服务器组件。首先使用以下命令更新服务器并安装软件包:
sudo dnf update -y
sudo dnf -y install vim curl unzip wget libcap
将GPG密钥添加到服务器:
sudo rpm --import https://packages.wazuh.com/key/GPG-KEY-WAZUH
添加Wazuh存储库:
sudo tee /etc/yum.repos.d/wazuh.repo <<EOF
[wazuh]
gpgcheck=1
gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH
enabled=1
name=EL-Wazuh
baseurl=https://packages.wazuh.com/4.x/yum/
protect=1
EOF
1.安装和配置Wazuh Manager
添加repo后,我们将首先使用以下命令安装Wazuh管理器:
sudo dnf -y install wazuh-manager
安装后,启动并启用服务:
sudo systemctl start wazuh-manager
sudo systemctl enable wazuh-manager
检查服务的状态:
$ systemctl status wazuh-manager
wazuh-manager.service - Wazuh manager
Loaded: loaded (/usr/lib/systemd/system/wazuh-manager.service; disabled; vendor preset: disabled)
Active: active
2.安装和配置Elastic Stack
Elastic Stack由Elasticsearch、Filebeat和Kibana等几个工具组成。这将用于日志收集和分析。这些工具与Wazuh安全管理器协同工作。
要安装Open Distro for Elasticsearch,请使用以下命令:
sudo dnf -y install opendistroforelasticsearch
然后下载Elasticsearch的示例配置文件:
wget https://packages.wazuh.com/resources/4.2/open-distro/elasticsearch/7.x/elasticsearch_all_in_one.yml
现在将此配置移动到所需的路径:
sudo mv elasticsearch_all_in_one.yml /etc/elasticsearch/elasticsearch.yml
现在为Wazuh创建以下用户和角色:
wazuh_user:这是对wazuh Kibana插件的只读用户访问权限。
wazuh_admin:建议需要管理权限的用户使用。
wazuh_ui_user:此角色为wazuh_user提供读取wazuh索引的权限。
wazuh_ui_admin:允许wazuh_admin对wazuh索引执行读取、写入、管理和索引任务的角色。
用户和角色可以使用下面的简单代码创建:
for i in roles.yml roles_mapping.yml internal_users.yml; do
wget https://packages.wazuh.com/resources/4.2/open-distro/elasticsearch/roles/$i
sudo mv $i /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/
done
一旦创建,我们将生成证书。首先,使用以下命令删除演示证书:
sudo rm -f /etc/elasticsearch/{esnode-key.pem,esnode.pem,kirk-key.pem,kirk.pem,root-ca.pem}
我们将使用wash-cert-tool.sh来生成所需的证书。此工具可以通过以下命令下载:
sudo -i
curl -so ~/wazuh-cert-tool.sh https://packages.wazuh.com/resources/4.2/open-distro/tools/certificate-utility/wazuh-cert-tool.sh
curl -so ~/instances.yml https://packages.wazuh.com/resources/4.2/open-distro/tools/certificate-utility/instances_aio.yml
现在可以执行脚本,如下所示:
bash ~/wazuh-cert-tool.sh
生成证书后,将它们移动到所需的路径:
mkdir /etc/elasticsearch/certs/
mv ~/certs/elasticsearch* /etc/elasticsearch/certs/
mv ~/certs/admin* /etc/elasticsearch/certs/
cp ~/certs/root-ca* /etc/elasticsearch/certs/
修改/etc/profile并添加以下行:
$ sudo vim /etc/profile
export JAVA_HOME=/usr/share/elasticsearch/jdk/ && /usr/share/elasticsearch/plugins/opendistro_security/tools/securityadmin.sh -cd /usr/share/elasticsearch/plugins/opendistro_security/securityconfig/ -nhnv -cacert /etc/elasticsearch/certs/root-ca.pem -cert /etc/elasticsearch/certs/admin.pem -key /etc/elasticsearch/certs/admin-key.pem
为Elasticsearch配置JVM选项:
mkdir -p /etc/elasticsearch/jvm.options.d
echo '-Dlog4j2.formatMsgNoLookups=true' > /etc/elasticsearch/jvm.options.d/disabledlog4j.options
chmod 2750 /etc/elasticsearch/jvm.options.d/disabledlog4j.options
chown root:elasticsearch /etc/elasticsearch/jvm.options.d/disabledlog4j.options
现在启动并启用Elasticsearch:
systemctl enable --now elasticsearch
验证服务是否正在运行:
$ systemctl status elasticsearch
elasticsearch.service - Elasticsearch
Loaded: loaded (/usr/lib/systemd/system/elasticsearch.service; enabled; vendor preset: disabled)
Active: active
配置文件来源:
source /etc/profile
检查证书是否有效:
# curl -XGET https://localhost:9200 -u admin:admin -k
{
"name" : "node-1",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "p3-bnTEgTzKTXcFKJpVlcg",
"version" : {
"number" : "7.10.2",
"build_flavor" : "oss",
"build_type" : "rpm",
"build_hash" : "747e1cc71def077253878a59143c1f785afa92b9",
"build_date" : "2023-02-21T00:42:12.435326Z",
"build_snapshot" : false,
"lucene_version" : "8.7.0",
"minimum_wire_compatibility_version" : "6.8.0",
"minimum_index_compatibility_version" : "6.0.0-beta1"
},
"tagline" : "You Know, for Search"
}
3.安装和配置Kibana
Kibana可以使用以下命令安装在Rocky Linux 9/AlmaLinux 9/CentOS 9上:
sudo dnf -y install opendistroforelasticsearch-kibana
现在下载配置文件:
wget https://packages.wazuh.com/resources/4.2/open-distro/kibana/7.x/kibana_all_in_one.yml
sudo mv kibana_all_in_one.yml /etc/kibana/kibana.yml
创建一个数据目录并设置所需的权限:
sudo mkdir /usr/share/kibana/data
sudo chown -R kibana:kibana /usr/share/kibana/data
导航到该目录并安装Wazuh Kibana插件:
cd /usr/share/kibana/
sudo -u kibana /usr/share/kibana/bin/kibana-plugin install https://packages.wazuh.com/4.x/ui/kibana/wazuh_kibana-4.3.10_7.10.2-1.zip
复制生成的Kibana证书:
mkdir /etc/kibana/certs
cp ~/certs/root-ca.pem /etc/kibana/certs/
mv ~/certs/kibana* /etc/kibana/certs/
chown kibana:kibana /etc/kibana/certs/*
将Kibana套接字链接到443端口:
setcap 'cap_net_bind_service=+ep' /usr/share/kibana/node/bin/node
现在重新加载系统守护程序:
systemctl daemon-reload
启动并启用服务:
systemctl enable --now kibana
验证服务是否正在运行:
$ systemctl status kibana
kibana.service - Kibana
Loaded: loaded (/etc/systemd/system/kibana.service; enabled; vendor preset: disabled)
Active: active
允许服务通过防火墙:
sudo firewall-cmd --add-port=443/tcp --permanent
sudo firewall-cmd --reload
Kibana可以使用URL在网络上访问,地址格式为https://IP_Address,以下是登陆的用户和密码信息:
user: admin
password: admin
4.安装和配置FileBeat
它将把设置目录中的日志发送到ElasticSearch。可以通过执行以下命令进行安装:
sudo dnf install filebeat -y
现在提取配置文件:
wget https://packages.wazuh.com/resources/4.2/open-distro/filebeat/7.x/filebeat_all_in_one.yml
sudo mv filebeat_all_in_one.yml /etc/filebeat/filebeat.yml
拉出模板:
curl -so /etc/filebeat/wazuh-template.json https://raw.githubusercontent.com/wazuh/wazuh/v4.3.10/extensions/elasticsearch/7.x/wazuh-template.json
sudo chmod go+r /etc/filebeat/wazuh-template.json
下载Filebeat的Wazuh模块:
curl -s https://packages.wazuh.com/4.x/filebeat/wazuh-filebeat-0.2.tar.gz | sudo tar -xvz -C /usr/share/filebeat/module
复制为Filebeat生成的证书:
sudo mkdir /etc/filebeat/certs
sudo cp ~/certs/root-ca.pem /etc/filebeat/certs/
sudo mv ~/certs/filebeat* /etc/filebeat/certs/
启动并启用服务:
sudo systemctl daemon-reload
sudo systemctl enable --now filebeat
要验证Filbeat是否已成功安装,请使用以下命令:
sudo filebeat test output
输出:
访问Wazuh Web界面
按照上面的任何安装方法操作后,您应该能够使用URL加载Wazuh仪表板,地址格式为 https://IP_Adrress或者https://domain_name。然后使用提供的凭据登录。对于第二种方法,请使用:
用户:admin
密码:admin
将如图所示进行:
经过身份验证后,您将看到下面的仪表板:
目前,我们没有任何与Wazuh服务器相关的代理。因此,请按照下面的说明继续进行代理安装和配置。
安装和配置Wazuh代理
一旦安装了Wazuh服务器,就可以在端点上配置几个代理。
切换到根用户:
sudo -i
根据您的系统,添加repo:
1.For APT
curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | gpg --no-default-keyring --keyring gnupg-ring:/usr/share/keyrings/wazuh.gpg --import && chmod 644 /usr/share/keyrings/wazuh.gpg
echo "deb [signed-by=/usr/share/keyrings/wazuh.gpg] https://packages.wazuh.com/4.x/apt/ stable main" | tee -a /etc/apt/sources.list.d/wazuh.list
2.For YUM & ZYpp
cat > /etc/yum.repos.d/wazuh.repo << EOF
[wazuh]
gpgcheck=1
gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH
enabled=1
name=EL-\$releasever - Wazuh
baseurl=https://packages.wazuh.com/4.x/yum/
protect=1
EOF
导入GPG密钥:
sudo rpm --import https://packages.wazuh.com/key/GPG-KEY-WAZUH
添加repo后,安装Wazuh代理:
##APT
sudo apt update -y
WAZUH_MANAGER="192.168.205.17" apt-get install wazuh-agent
##YUM
WAZUH_MANAGER="192.168.205.17" yum install wazuh-agent
##ZYpp
sudo zypper refresh
WAZUH_MANAGER="192.168.205.17" zypper install wazuh-agent
在上述命令中,适当地替换WAZUH_MANAGER IP地址。在执行命令时,您可以设置许多其他变量。其中包括:
WAZUH_REGISTRATION_PASSWORD:设置用于在注册过程中进行身份验证的密码,存储在etc/authd.pass中。
WAZUH_AGENT_NAME:指定代理的名称。默认情况下,它将是计算机名称。
WAZUH_REGISTRATION_KEY:指定密钥路径,该路径使用WAZUH_SREGISTRATion_CERTIFICATE完成SSL代理验证过程所需的变量。
WAZUH_AGENT_GROUP:将代理分配给一个或多个现有组(用逗号分隔)。
WAZUH_REGISTRATION_PORT:指定WAZUH注册服务器使用的端口。
WAZUH_MANAGER_PORT:指定管理器连接端口。
这些变量可以按以下示例所示进行传递:
WAZUH_MANAGER="192.168.205.17" WAZUH_REGISTRATION_PASSWORD="TopSecret" \
WAZUH_AGENT_NAME="yum-agent" yum install wazuh-agent
安装后,启动并启用服务:
sudo systemctl daemon-reload
sudo systemctl enable wazuh-agent
sudo systemctl start wazuh-agent
检查服务是否正在运行:
$ systemctl status wazuh-agent
wazuh-agent.service - Wazuh agent
Loaded: loaded (/lib/systemd/system/wazuh-agent.service; enabled; vendor preset: enabled)
Active: active
现在,只有当Wazuh管理器版本晚于或等于Wazuh代理的版本时,才能保证两者的兼容性。因此,建议禁用代理的升级,如下所示:
##For APT
sed -i "s/^deb/#deb/" /etc/apt/sources.list.d/wazuh.list
apt-get update
##FOR YUM
sed -i "s/^enabled=1/enabled=0/" /etc/yum.repos.d/wazuh.repo
##FOR ZYpp
sed -i "s/^enabled=1/enabled=0/" /etc/zypp/repos.d/wazuh.repo
现在,添加的代理可以在Wazuh仪表板上查看:
导航到“Agents”选项卡以查看添加的代理:
通过单击所需的代理来可视化仪表板:
至此,安装和配置Wazuh代理完成。这时,应该能够随时对Rocky Linux 9/AlmaLinux 9/CentOS 9系统执行实时完整性监控、威胁检测、事件响应和合规性分析了。
相关资讯