wazuh官方安装指南(中文译版本)

 

安装Wazuh服务器

Wazuh服务器能够安装在任何类型的Unix操做系统上。最多见安装在Linux上。若是能够为您的系统提供自动化脚本,则安装过程会更容易,可是,从源码构建和安装也很是简单。html

一般在Wazuh服务器上安装两个组件:管理器和API。此外,对于分布式体系结构(Wazuh服务器将数据发送到远程Elastic Stack集群),须要安装Filebeat。java

安装Wazuh服务器有多种选择,具体取决于操做系统以及是否但愿从源代码构建。请参阅下表并选择如何安装:node

类型 描述
RPM包 在CentOS / RHEL / Fedora上安装Wazuh服务器
DEB包 在Debian/Ubuntu上安装Wazuh服务器
   

注意python

强烈建议在64位操做系统上安装Wazuh Server,由于Wazuh API在32位平台上不可用。若是没有Wazuh API,Wazuh Kibana应用程序的大部分功能都将没法使用。一样,若是您为Wazuh Server平台使用Red Hat或CentOS,请确保它是版本6或更高版本才能正确安装Wazuh API。linux

使用RPM软件包安装Wazuh服务器

对于CentOS / RHEL / Fedora平台,安装Wazuh服务器组件须要在添加更新源后安装相关软件包。nginx

注意:下面使用的许多命令都须要以root用户权限执行。git

添加Wazuh存储库

设置Wazuh的第一步是将Wazuh更新源添加到您的系统中。若是您想直接下载wazuh-manager软件包,或查看兼容版本,请单击此处github

要设置更新源,请运行如下命令:web

# cat > /etc/yum.repos.d/wazuh.repo <<\EOF
[wazuh_repo]
gpgcheck=1
gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH
enabled=1
name=Wazuh repository
baseurl=https://packages.wazuh.com/3.x/yum/
protect=1
EOF

对于CentOS-5和RHEL-5:数据库

# cat > /etc/yum.repos.d/wazuh.repo <<\EOF
[wazuh_repo]
gpgcheck=1
gpgkey=http://packages.wazuh.com/key/GPG-KEY-WAZUH-5
enabled=1
name=Wazuh repository
baseurl=http://packages.wazuh.com/3.x/yum/5/$basearch/
protect=1
EOF

安装Wazuh Manager

下一步是在您的系统上安装Wazuh Manager:

# yum install wazuh-manager

完成此过程后,您可使用如下命令检查服务状态

a.for  Systemd:

# systemctl status wazuh-manager
b.For SysV Init:
# service wazuh-manager status

安装Wazuh API

  1. 要运行Wazuh API,须要NodeJS> = 4.6.1。若是您没有安装NodeJS或者您的版本低于4.6.1,咱们建议您添加官方NodeJS更新源库,以下所示:
# curl --silent --location https://rpm.nodesource.com/setup_8.x | bash -

而后,安装NodeJS:

# yum install nodejs
2.要运行Wazuh API,须要Python> = 2.7。它默认安装或包含在大多数Linux发行版的官方库中。
要肯定系统上的python版本是否低于2.7,能够运行如下命令:
 # python --version

It is possible to set a custom Python path for the API in ``/var/ossec/api/configuration/config.js``, in case the stock version of Python in your distro is too old:
config.python = [
    // Default installation
    {
        bin: "python",
        lib: ""
    },
    // Package 'python27' for CentOS 6
    {
        bin: "/opt/rh/python27/root/usr/bin/python",
        lib: "/opt/rh/python27/root/usr/lib64"
    }
];

CentOS 6和Red Hat 6附带Python 2.6,可是,你能够并行安装Python 2.7来兼容旧版本

a.对于CentOS 6:

# yum install -y centos-release-scl
# yum install -y python27
b.对于RHEL 6:
# yum install python27
您可能须要首先启用存储库以获取python27,使用以下命令:
#   yum-config-manager --enable rhui-REGION-rhel-server-rhscl
#   yum-config-manager --enable rhel-server-rhscl-6-rpms
3.安装Wazuh API。若是须要,它将更新NodeJS:
# yum install wazuh-api
4.完成此过程后,您可使用如下命令检查服务状态:
a.for  Systemd:
# systemctl status wazuh-api
b.for SysV Init:
# service wazuh-api status
5.(可选)禁用Wazuh更新源:

建议禁用Wazuh更新源以防止意外升级。为此,请使用如下命令:

# sed -i "s/^enabled=1/enabled=0/" /etc/yum.repos.d/wazuh.repo

安装Filebeat

Filebeat是Wazuh服务器上的工具,能够将警报和归档事件安全地转发到Elastic Stack服务器上的Logstash服务上

 

警告:在单主机架构中(Wazuh服务器和Elastic Stack安装在同一系统中),不须要安装Filebeat,由于Logstash将可以直接从本地文件系统读取事件/警报数据,而无需转发器。

 

RPM软件包适合安装在Red Hat,CentOS和其余基于RPM的系统上

  1. 从Elastic安装GPG密钥,而后安装Elastic更新源:
# rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

# cat > /etc/yum.repos.d/elastic.repo << EOF
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
2.安装Filebeat:
# yum install filebeat-6.6.0
3.从Wazuh存储库下载Filebeat配置文件。这是预配置为将Wazuh警报转发给Logstash:
# curl -so /etc/filebeat/filebeat.yml https://raw.githubusercontent.com/wazuh/wazuh/3.8/extensions/filebeat/filebeat.yml
4. 编辑文件/etc/filebeat/filebeat.yml并替换ELASTIC_SERVER_IP 为Elastic Stack服务器的IP地址或主机名。例如:
output:
  logstash:
    hosts: ["ELASTIC_SERVER_IP:5000"]
5.启动Filebeat服务:
 a.for Systemd:
# systemctl daemon-reload
# systemctl enable filebeat.service
# systemctl start filebeat.service
b.for SysV Init:
# chkconfig --add filebeat
# service filebeat start
6.(可选)禁用Elasticsearch存储库:

建议禁用Elasticsearch更新源,以防止升级到较新的Elastic Stack版本,为此,请使用如下命令:

# sed -i "s/^enabled=1/enabled=0/" /etc/yum.repos.d/elastic.rep

使用DEB包安装Wazuh服务器

对于Debian / Ubuntu平台,安装Wazuh服务器组件须要在添加存储库后安装相关的软件包。下面使用的许多命令都须要以root用户权限执行。

添加Wazuh更新源

设置Wazuh的第一步是将Wazuh更新源添加到您的系统上。若是您想直接下载wazuh-manager软件包,或查看兼容版本,请单击此处

  1. 要执行此过程当中,curlapt-transport-httpslsb-release软件包必须安装在系统上。若是它们没被安装,请使用如下命令安装它们:
# apt-get update
# apt-get install curl apt-transport-https lsb-release

若是该/usr/bin/python文件不存在(如在Ubuntu 16.04 LTS或更高版本中),请使用如下命令建立Python(2.7或更高版本):

# if [ ! -f /usr/bin/python ]; then ln -s /usr/bin/python3 /usr/bin/python; fi
2.安装GPG密钥
# curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | apt-key add -
3.添加更新源
# echo "deb https://packages.wazuh.com/3.x/apt/ stable main" | tee -a /etc/apt/sources.list.d/wazuh.list
4.更新包
# apt-get update

安装Wazuh Manager

在您的终端上,安装Wazuh manager:

# apt-get install wazuh-manager

完成此过程后,您可使用如下命令检查服务状态:

a. for Systemd:

# systemctl status wazuh-manager
b.for  SysV Init:
# service wazuh-manager status

安装Wazuh API

  1. 要运行Wazuh API,须要NodeJS> = 4.6.1。若是您没有安装NodeJS或者您的版本低于4.6.1,咱们建议您添加官方NodeJS存储库,以下所示:
# curl -sL https://deb.nodesource.com/setup_8.x | bash -

 

若是您使用的是Ubuntu 12.04(Precise)或Debian 7(Wheezy),则必须使用如下命令安装NodeJS 6:

# curl -sL https://deb.nodesource.com/setup_6.x | bash -

而后,安装NodeJS:

# apt-get install nodejs
2.要运行API,须要Python> = 2.7。它默认安装或包含在大多数Linux发行版的官方库中。
要肯定系统上的python版本是否低于2.7,能够运行如下命令:
# python --version

It is possible to set a custom Python path for the API in ``/var/ossec/api/configuration/config.js``, in case the stock version of Python in your distro is too old:
config.python = [
    // Default installation
    {
        bin: "python",
        lib: ""
    },
    // Package 'python27' for CentOS 6
    {
        bin: "/opt/rh/python27/root/usr/bin/python",
        lib: "/opt/rh/python27/root/usr/lib64"
    }
];
3.安装Wazuh API。若是须要,它将更新NodeJS:
# apt-get install wazuh-api
4.完成此过程后,您可使用如下命令检查服务状态:
a.for Systemd:
# systemctl status wazuh-api
b.for SysV Init:
# service wazuh-api status
5.(可选)禁用Wazuh更新:

建议禁用Wazuh更新源以防止意外升级。为此,请使用如下命令:

# sed -i "s/^deb/#deb/" /etc/apt/sources.list.d/wazuh.list
# apt-get update

或者,您能够将程序包状态设置为hold,这将中止更新(尽管您仍然能够手动升级它)

# echo "wazuh-manager hold" | sudo dpkg --set-selections
# echo "wazuh-api hold" | sudo dpkg --set-selections

安装Filebeat

Filebeat是Wazuh服务器上的工具,能够将警报和归档事件安全地转发到Elastic Stack服务器上的Logstash服务。

警告:在单主机架构中(Wazuh服务器和Elastic Stack安装在同一系统中),不须要安装Filebeat,由于Logstash将可以直接从本地文件系统读取事件/警报数据,而无需转发器。

DEB包适用于Debian,Ubuntu和其余基于Debian的系统。

  1. 从Elastic安装GPG密钥,而后安装Elastic存储库:
# curl -s https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
# echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee /etc/apt/sources.list.d/elastic-6.x.list
# apt-get update
2.安装Filebeat:
# apt-get install filebeat=6.6.0
3.从Wazuh更新源下载Filebeat配置文件。这是预配置为将Wazuh警报转发给Logstash:
# curl -so /etc/filebeat/filebeat.yml https://raw.githubusercontent.com/wazuh/wazuh/3.8/extensions/filebeat/filebeat.yml
4. 编辑文件/etc/filebeat/filebeat.yml并替换ELASTIC_SERVER_IP为Elastic Stack服务器的IP地址或主机名。例如:
output:
  logstash:
    hosts: ["ELASTIC_SERVER_IP:5000"]
5.启动Filebeat服务:
a.for Systemd:
# systemctl daemon-reload
# systemctl enable filebeat.service
# systemctl start filebeat.service
b.for SysV Init:
# update-rc.d filebeat defaults 95 10
# service filebeat start
6.(可选)禁用Elasticsearch更新:

建议禁用Elasticsear更新源,以防止升级到较新的Elastic Stack版本,为此,请使用如下命令:

# sed -i "s/^deb/#deb/" /etc/apt/sources.list.d/elastic-6.x.list
# apt-get update

或者,您能够将程序包状态设置为hold,这将中止更新(尽管您仍然能够手动升级它)

# echo "filebeat hold" | sudo dpkg --set-selections


安装Elastic Stack

本指南介绍了由Logstash,Elasticsearch和Kibana组成的Elastic Stack服务器的安装。咱们将说明这些基于包的组件安装。您也能够从源代码编译tar 安装它们,可是,这不是Wazuh文档中的首选安装。

除了Elastic Stack组件,您还能够找到安装和配置Wazuh应用程序(部署为Kibana插件)的说明。

根据您的操做系统,您能够选择从RPM或DEB软件包安装Elastic Stack。请参阅下表并选择:

类型 描述
RPM包 在CentOS / RHEL / Fedora上安装Elastic Stack
DEB包 在Debian / Ubuntu上安装Elastic Stack

注意

目前,Elastic Stack仅支持64位操做系统

 
 

使用RPM软件包安装Elastic Stack

RPM软件包适合安装在Red Hat,CentOS和其余基于RPM的系统上。
注意:下面的许多命令都须要以root用户权限执行。
Preparation
  1. Logstash和Elasticsearch须要Oracle Java JRE 8。

注意:如下命令下载Oracle Java JRE须要带上cookie。请访问Oracle Java 8 JRE下载页面以获取更多信息。

# curl -Lo jre-8-linux-x64.rpm --header "Cookie: oraclelicense=accept-securebackup-cookie""https://download.oracle.com/otn-pub/java/jdk/8u202-b08/1961070e4c9b4e26a04e7f5a083f551e/jre-8u202-linux-x64.rpm"

如今,检查包是否已成功下载:

# rpm -qlp jre-8-linux-x64.rpm > /dev/null 2>&1&&echo"Java package downloaded successfully"||echo"Java package did not download successfully"

最后,使用yum安装RPM包:

# yum -y install jre-8-linux-x64.rpm
# rm -f jre-8-linux-x64.rpm
2.安装Elastic存储库及其GPG密钥:
# rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

# cat > /etc/yum.repos.d/elastic.repo << EOF
[elasticsearch-6.x]
name=Elasticsearch repository for 6.x packages
baseurl=https://artifacts.elastic.co/packages/6.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF
Elasticsearch

Elasticsearch是一个高度可扩展的全文搜索和分析引擎。有关更多信息,请参阅Elasticsearch

  1. 安装Elasticsearch包:
# yum install elasticsearch-6.6.0
2.启动Elasticsearch服务:
a.for Systemd:
# systemctl daemon-reload
# systemctl enable elasticsearch.service
# systemctl start elasticsearch.service
b.for SysV Init:
# chkconfig --add elasticsearch
# service elasticsearch start

等待Elasticsearch服务器完成启动很是重要。使用如下命令检查当前状态,该命令应该给出以下所示的响应:

# curl "http://localhost:9200/?pretty"

{
 "name" : "Zr2Shu_",
 "cluster_name" : "elasticsearch",
 "cluster_uuid" : "M-W_RznZRA-CXykh_oJsCQ",
 "version" : {
 "number" : "6.6.0",
 "build_flavor" : "default",
 "build_type" : "rpm",
 "build_hash" : "053779d",
 "build_date" : "2018-07-20T05:20:23.451332Z",
 "build_snapshot" : false,
 "lucene_version" : "7.3.1",
 "minimum_wire_compatibility_version" : "5.6.0",
 "minimum_index_compatibility_version" : "5.0.0"
 },
 "tagline" : "You Know, for Search"
}
3.为Elasticsearch加载Wazuh模板:Kibana的Wazuh应用程序须要Elasticsearch模板才能正常工做,所以确保正确安装它很是重要。
# curl https://raw.githubusercontent.com/wazuh/wazuh/3.8/extensions/elasticsearch/wazuh-elastic6-template-alerts.json | curl -X PUT "http://localhost:9200/_template/wazuh" -H 'Content-Type: application/json' -d @-
注意:建议编辑默认配置以提升Elasticsearch的性能。为此,请参阅 Elasticsearch调优
Logstash
Logstash是收集,解析和转发数据到Elasticsearch的工具,用于索引和存储Wazuh服务器生成的全部日志。有关更多信息,请参阅 Logstash
  1. 安装Logstash包:
# yum install logstash-6.6.0
2.下载Logstash的Wazuh配置文件:
  • 本地配置(仅在单主机架构中):

    # curl -so /etc/logstash/conf.d/01-wazuh.conf https://raw.githubusercontent.com/wazuh/wazuh/3.8/extensions/logstash/01-wazuh-local.conf

    因为Logstash用户须要读取alerts.json文件,请运行如下命令将其添加到OSSEC组:

    # usermod -a -G ossec logstash
  • 远程配置(仅在分布式架构中):

    # curl -so /etc/logstash/conf.d/01-wazuh.conf https://raw.githubusercontent.com/wazuh/wazuh/3.8/extensions/logstash/01-wazuh-remote.con
 
若是您使用CentOS-6 / RHEL-6或Amazon AMI(logstash像服务管理器同样使用Upstart并须要修复,请参阅 此错误 ),请按照 如下步骤操做
  1. 编辑文件/etc/logstash/startup.options,将第30行从LS_GROUP = logstash更改成LS_GROUP = ossec
  2. 经过运行命令 /usr/share/logstash/bin/system-install,并使用新参数更新服务
  3. 从新启动Logstash
 
4.启用并启动Logstash服务:
a.for Systemd:
# systemctl daemon-reload
# systemctl enable logstash.service
# systemctl start logstash.service
b.for SysV Init:
# chkconfig --add logstash
# service logstash start
 
注意:若是您在不一样的系统(分布式体系结构)上运行Wazuh服务器和Elastic Stack服务器,则在Filebeat和Logstash之间配置加密很是重要。为此,请参阅 为Filebeat和Logstash设置SSL
Kibana

Kibana是一个灵活,直观的Web界面,用于可视化存储在Elasticsearch中的事件和信息。在Kibana上查找更多信息。

  1. 安装Kibana包:
# yum install kibana-6.6.0
2.为Kibana安装Wazuh应用程序插件:
# sudo -u kibana NODE_OPTIONS="--max-old-space-size=3072" /usr/share/kibana/bin/kibana-plugin install https://packages.wazuh.com/wazuhapp/wazuhapp-3.8.2_6.6.0.zip

Kibana插件安装过程可能须要几分钟。请耐心等待。

3.可选,Kibana默认只监听环回接口(localhost)。要将Kibana设置为侦听全部接口,请编辑文件/etc/kibana/kibana.yml取消注释并设置server.host,将值更改成:

server.host:"0.0.0.0"

注意:建议为Kibana设置Nginx代理,以便使用SSL加密并启用身份验证。能够在为Kibana设置SSL和身份验证中找到设置代理的说明。

4.启动Kibana服务:

a.for Systemd:

# systemctl daemon-reload
# systemctl enable kibana.service
# systemctl start kibana.service
b.for SysV Init:
# chkconfig --add kibana
# service kibana start
5.(可选)禁用Elasticsearch更新源:

建议禁用Elasticsearch更新源,以防止升级到较新的Elastic Stack版本,为此,请使用如下命令:

# sed -i "s/^enabled=1/enabled=0/" /etc/yum.repos.d/elastic.repo
 
 

使用Debian软件包安装Elastic Stack

DEB包适用于Debian,Ubuntu和其余基于Debian的系统。

注意:下面的许多命令都须要以root用户权限执行。

Preparation

1.Logstash和Elasticsearch须要Oracle Java JRE或OpenJDK:

a.对于 Debian >= 8/Jessie or Ubuntu >= 16.04/Xenial:
    # apt-get update
   # apt-get install openjdk-8-jre
a.
对于Debian <8 / Jessie:
# echo "deb http://ppa.launchpad.net/webupd8team/java/ubuntu xenial main" | tee /etc/apt/sources.list.d/webupd8team-java.list
# apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys EEA14886
# apt-get update
# apt-get install oracle-java8-installer
b.对于Ubuntu <16.04 / Xenial:
#
add-apt-repository ppa:webupd8team / java
apt-get update
apt-get install oracle-java8-installer
2.安装Elastic存储库及其GPG密钥:
# apt-get install curl apt-transport-https
# curl -s https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add -
# echo "deb https://artifacts.elastic.co/packages/6.x/apt stable main" | tee /etc/apt/sources.list.d/elastic-6.x.list
# apt-get update

Elasticsearch

Elasticsearch是一个高度可扩展的全文搜索和分析引擎。有关更多信息,请参阅Elasticsearch

  1. 安装Elasticsearch包:
# apt-get install elasticsearch=6.6.0
2.启动Elasticsearch服务:
a.for Systemd:
# systemctl daemon-reload
# systemctl enable elasticsearch.service
# systemctl start elasticsearch.service
b.for SysV Init:
# update-rc.d elasticsearch defaults 95 10
# service elasticsearch start

等待Elasticsearch服务器完成启动是很是重要。使用如下命令检查当前状态,该命令应该给出以下所示的响应:

# curl "http://localhost:9200/?pretty"

{
  "name" : "Zr2Shu_",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "M-W_RznZRA-CXykh_oJsCQ",
  "version" : {
    "number" : "6.6.0",
    "build_flavor" : "default",
    "build_type" : "deb",
    "build_hash" : "053779d",
    "build_date" : "2018-07-20T05:20:23.451332Z",
    "build_snapshot" : false,
    "lucene_version" : "7.3.1",
    "minimum_wire_compatibility_version" : "5.6.0",
    "minimum_index_compatibility_version" : "5.0.0"
  },
  "tagline" : "You Know, for Search"
}
3.为Elasticsearch加载Wazuh模板:Kibana的Wazuh应用程序须要Elasticsearch模板才能正常工做,所以确保正确它很是重要。
# curl https://raw.githubusercontent.com/wazuh/wazuh/3.8/extensions/elasticsearch/wazuh-elastic6-template-alerts.json | curl -X PUT "http://localhost:9200/_template/wazuh" -H 'Content-Type: application/json' -d @-

注意:建议编辑默认配置以提升Elasticsearch的性能。为此,请参阅Elasticsearch调优

Logstash

Logstash是收集,解析和转发数据到Elasticsearch的工具,用于索引和存储Wazuh服务器生成的全部日志。有关更多信息,请参阅Logstash

  1. 安装Logstash包:
# apt-get install logstash=1:6.6.0-1
2.下载Logstash的Wazuh配置文件:
a.本地配置(仅在单主机架构中):
# curl -so /etc/logstash/conf.d/01-wazuh.conf https://raw.githubusercontent.com/wazuh/wazuh/3.8/extensions/logstash/01-wazuh-local.conf

因为Logstash用户须要读取alerts.json文件,请运行如下命令将其添加到OSSEC组:

# usermod -a -G ossec logstash
b.远程配置(仅在分布式架构中):
# curl -so /etc/logstash/conf.d/01-wazuh.conf https://raw.githubusercontent.com/wazuh/wazuh/3.8/extensions/logstash/01-wazuh-remote.conf
3. 启用并启动Logstash服务:
a.for Systemd:
# systemctl daemon-reload
# systemctl enable logstash.service
# systemctl start logstash.service
b.for SysV Init:
# update-rc.d logstash defaults 95 10
# service logstash start

注意:若是您在不一样的系统(分布式体系结构)上运行Wazuh服务器和Elastic Stack服务器,则在Filebeat和Logstash之间配置加密很是重要。为此,请参阅为Filebeat和Logstash设置SSL

Kibana

Kibana是一个灵活,直观的Web界面,用于可视化存储在Elasticsearch中的事件和信息。在Kibana上查找更多信息。

  1. 安装Kibana包:
# apt-get install kibana=6.6.0
  1. 为Kibana安装Wazuh应用程序插件:
# sudo -u kibana NODE_OPTIONS="--max-old-space-size=3072" /usr/share/kibana/bin/kibana-plugin install https://packages.wazuh.com/wazuhapp/wazuhapp-3.8.2_6.6.0.zip

Kibana插件安装过程可能须要几分钟。请耐心等待

3.可选,Kibana默认只监听环回接口(localhost)。要将Kibana设置为侦听全部接口,请编辑该文件/etc/kibana/kibana.yml,并取消注释该设置server.host。将值更改成:

server.host: "0.0.0.0"

注意:建议为Kibana设置Nginx代理,以便使用SSL加密并启用身份验证。能够在为Kibana设置SSL和身份验证中找到设置代理的说明。

4.并启动Kibana服务:

a.for Systemd:

# systemctl daemon-reload
# systemctl enable kibana.service
# systemctl start kibana.service
b. for SysV Init:
# update-rc.d kibana defaults 95 10
# service kibana start
5.(可选)禁用Elasticsearch更新:

建议禁用Elasticsearch更新源,以防止升级到较新的Elastic Stack版本,由于可能会撤消应用程序的更改。为此,请使用如下命令:

# sed -i "s/^deb/#deb/" /etc/apt/sources.list.d/elastic-6.x.list
# apt-get update

或者,您能够将程序包状态设置为hold,这将中止更新(尽管您仍然能够手动升级它)

# echo "elasticsearch hold" | sudo dpkg --set-selections
# echo "kibana hold" | sudo dpkg --set-selections
# echo "logstash hold" | sudo dpkg --set-selections
 

安装Wazuh代理

Wazuh代理程序在您要监控的主机上运行。它是多平台的,并提供如下功能:

  • 日志和数据收集,
  • 文件完整性监控,
  • rootkit和恶意软件检测
  • 安全策略监测

此外,它还与Wazuh manger 进行通讯,经过加密和认证的通道实时地发送数据。

安装Wazuh代理有多种选择,具体取决于操做系统以及是否但愿从源代码构建。请参阅下表并选择如何继续执行:

类型 描述
RPM包 在CentOS / RHEL / Fedora上安装Wazuh agnet
DEB包 在Debian / Ubuntu上安装Wazuh agent
Windows安装程序 在Windows上安装Wazuh agent

注意:使用Puppet,Chef,SCCM或Ansible等自动化工具能够更轻松地将agnet部署到大量服务器或端点上。若是要在更大的环境中部署Wazuh,请考虑探索这些方法。

使用RPM软件包安装Wazuh agent

RPM软件包适合安装在Red Hat,CentOS和其余基于RPM的系统上。

注意:下面的许多命令都须要以root用户权限执行

添加Wazuh存储库

安装Wazuh代理的第一步是将Wazuh存储库添加到您的系统。或者,若是您想直接下载wazuh-agent软件包,或查看兼容版本,能够从这里开始。根据您的发行版运行如下命令来设置更新源:

CentOS 6 / RHEL 6,CentOS 7 / RHEL 7,Fedora 22或更高版本以及Amazon Linux

# cat > /etc/yum.repos.d/wazuh.repo <<\EOF
[wazuh_repo]
gpgcheck=1
gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH
enabled=1
name=Wazuh repository
baseurl=https://packages.wazuh.com/3.x/yum/
protect=1
EOF
 

CentOS 5 / RHEL 5

# cat > /etc/yum.repos.d/wazuh.repo <<\EOF
[wazuh_repo]
gpgcheck=1
gpgkey=http://packages.wazuh.com/key/GPG-KEY-WAZUH-5
enabled=1
name=Wazuh repository
baseurl=http://packages.wazuh.com/3.x/yum/5/$basearch/
protect=1
EOF
 

SUSE 12

# rpm --import https://packages.wazuh.com/key/GPG-KEY-WAZUH
# cat > /etc/zypp/repos.d/wazuh.repo <<\EOF
[wazuh_repo]
gpgcheck=1
gpgkey=https://packages.wazuh.com/key/GPG-KEY-WAZUH
enabled=1
name=Wazuh repository
baseurl=https://packages.wazuh.com/3.x/yum/
protect=1
EOF

SUSE 11

# rpm --import https://packages.wazuh.com/key/GPG-KEY-WAZUH-5
# cat > /etc/zypp/repos.d/wazuh.repo <<\EOF
[wazuh_repo]
gpgcheck=1
gpgkey=http://packages.wazuh.com/key/GPG-KEY-WAZUH-5
enabled=1
name=Wazuh repository
baseurl=http://packages.wazuh.com/3.x/yum/5/$basearch/
protect=1
EOF
 

安装Wazuh agent

  1. 在终端上,按以下方式安装Wazuh agent:
  • 使用yum包安装:

    # yum install wazuh-agent
  • 使用zypper包安装

    # zypper install wazuh-agent
2.(可选)禁用Wazuh存储库:

建议禁用Wazuh更新源以防止意外升级。为此,请使用如下命令:

  • 使用yum包管理器:

    # sed -i "s/^enabled=1/enabled=0/" /etc/yum.repos.d/wazuh.repo
  • 使用zypper包管理器:

    # sed -i "s/^enabled=1/enabled=0/" /etc/zypp/repos.d/wazuh.repo
 

使用DEB包安装Wazuh agent

DEB包适用于Debian,Ubuntu和其余基于Debian的系统。

注意:下面的许多命令都须要以root用户权限执行

添加Wazuh存储库

安装Wazuh代理的第一步是将Wazuh存储库添加到您的服务器。或者,若是您但愿直接下载wazuh-agent软件包,能够在此处找到它。

  1. 要执行此过程当中,curlapt-transport-httpslsb-release软件包必须安装在系统上。若是它们没有被安装,请使用如下命令安装它们:
# apt-get install curl apt-transport-https lsb-release
2.安装Wazuh存储库GPG密钥
# curl -s https://packages.wazuh.com/key/GPG-KEY-WAZUH | apt-key add -
3.添加存储库:
# echo "deb https://packages.wazuh.com/3.x/apt/ stable main" | tee /etc/apt/sources.list.d/wazuh.list
4.更新包
# apt-get update

安装Wazuh agent

  1. 在您的终端上,安装Wazuh agent
# apt-get install wazuh-agent
2.(可选)禁用Wazuh更新:

建议禁用Wazuh存储库以防止意外升级。为此,请使用如下命令:

# sed -i "s/^deb/#deb/" /etc/apt/sources.list.d/wazuh.list
# apt-get update

或者,您能够将程序包状态设置为hold,这将中止更新(尽管您仍然能够手动升级它)

# echo "wazuh-agent hold" | sudo dpkg --set-selections

在Windows上安装Wazuh agent

注意:您将须要管理员权限才能执行此安装

在Windows计算机上安装Wazuh agent的第一步是从软件包列表中下载Windows安装程序。下载完成后,可使用如下两种方法之一安装Windows代理:

使用GUI

要从GUI安装Windows agent,请运行下载的文件,而后按照安装向导中的步骤操做。若是您不肯定如何选择,只需使用默认选项安装便可。

安装后,agent 会使用图形用户界面进行配置,打开日志文件或启动和中止服务。

默认状况下,全部agent的配置文件将在:C:\Program Files(x86)\ossec-agent

注意:如今已安装agent程序,下一步是注册并配置它以与mangent通讯。有关此过程的更多信息,请访问用户手册

使用命令

注意:必须使用管理员权限运行进行自动安装

要从命令中安装Windows agent,请使用如下命令运行安装程序(该/q参数用与无人参与安装):

wazuh-agent-3.8.2-1.msi /q

要卸载 agent,将须要原始MSI文件来执行自动卸载

msiexec.exe /x wazuh-agent-3.8.2-1.msi /qn

您可使用如下参数来自动安装authd注册agent:

选项 描述
APPLICATIONFOLDER 设置安装路径。默认C:\Program Files (x86)\ossec-agent.
ADDRESS 指定管理器IP地址或主机名。此选项还接受以分号分隔的IP或主机名列表。
SERVER_PORT 指定管理器链接端口。
PROTOCOL 设置管理器和代理之间的通讯协议。接受UDP和TCP。默认为UDP。
AUTHD_SERVER 指定Authd IP地址。
AUTHD_PORT 指定Authd链接端口。
PASSWORD 设置Authd密码。
NOTIFY_TIME 设置管理器检查与agent 之间链接的时间。
TIME_RECONNECT 设置从新链接尝试以前的时间(以秒为单位)。
CERTIFICATE 指定受权路径证书。
PEM 指定证书路径。
KEY 指定密钥路径。
AGENT_NAME 指定代理的名称。默认状况下将是计算机名称。
GROUP 将指定的组分配给代理。
/ l installer.log 生成安装过程的日志。
/ l * v installer.log 生成安装过程的日志,包括详细消息。

下面是一些安装和注册Windows agent 的示例

使用带密码注册:

wazuh-agent-3.8.2-1.msi /q ADDRESS="192.168.1.1" AUTHD_SERVER="192.168.1.1" PASSWORD="TopSecret" AGENT_NAME="W2012"

使用带密码注册并分配组:

azuh-agent-3.8.2-1.msi /q ADDRESS="192.168.1.1" AUTHD_SERVER="192.168.1.1" PASSWORD="TopSecret" GROUP="my-group"

使用带CA注册的相对路径。它将在您的APPLICATIONFOLDER文件夹中搜索:

wazuh-agent-3.8.2-1.msi /q ADDRESS="192.168.1.1" AUTHD_SERVER="192.168.1.1" AGENT_NAME="W2019" CERTIFICATE="rootCA.pem"

包含空格的CA,证书或密钥的绝对路径能够写成以下所示:

wazuh-agent-3.8.2-1.msi /q ADDRESS="192.168.1.1" AUTHD_SERVER="192.168.1.1" KEY="C:\Progra~2\sslagent.key" PEM="C:\Progra~2\sslagent.cert"

数字“2”表示将在第二次出现“Progra”时搜索文件,所以,将在文件夹“C:\Program Files (x86)””中搜索密钥和证书。若是此数字为“1”,则将在“Program Files”中搜索。

注意:要经过SSL验证agent,必须同时使用KEY和PEM选项。请参阅带SSL验证主机部分。

使用带协议注册

wazuh-agent-3.8.2-1.msi /q ADDRESS="192.168.1.1" AUTHD_SERVER="192.168.1.1" AGENT_NAME="W2016" PROTOCOL="TCP"

注意:在早于Windows Server 2008或Windows 7的Windows版本中,在Wazuh管理器上ossec-authd必须使用-a标志运行程序,或者在auth配置上设置<ssl_auto_negotiate>选项以免兼容性错误。


可选配置

本节为与创建高效,稳定和安全的Wazuh环境相关的最佳实践提供指导。在这里,您将找到有关如何在分布式体系结构中设置SSL通讯的信息(Wazuh服务器与Elastic Stack集群通讯),如何使用Nginx为Kibana设置安全 agent 以及如何向Web用户添加身份验证接口。

内容

 

为Filebeat和Logstash设置SSL

若是您在单独的系统和服务器(分布式体系结构上运行Wazuh服务器和Elastic Stack ,则在Filebeat和Logstash之间配置SSL加密很是重要。(这不适用于单服务器体系结构

注意:下面的许多命令都须要以root用户权限执行

生成自签名SSL证书

  1. 生成SSL证书和密钥,以下所示:

    安装了Logstash服务器计算机上,建立OpenSSL示例配置文件的副本。文件位置可能因操做系统而异:

    1. 在Debian或Ubuntu上:

      # cp /etc/ssl/openssl.cnf custom_openssl.cnf
    2. 在CentOS或Red Hat上:

      # cp /etc/pki/tls/openssl.cnf custom_openssl.cnf

注意:一般,您将在Elastic Stack服务器中运行Logstash服务器,或者,若是已在其中一个节点中设置了分布式Elasticsearch集群,则运行Logstash服务器。

2.编辑自定义配置文件custom_openssl.cnf

找到该部分并添加以下所示的命令行,其中包含您的Elastic服务器的IP地址:

 

[ v3_ca ] subjectAltName = IP: YOUR_SERVER_IP 例如: [ v3_ca ] subjectAltName = IP: 192.168.1.2 3.生成SSL证书和密钥:
# openssl req -x509 -batch -nodes -days 365 -newkey rsa:2048 -keyout /etc/logstash/logstash.key -out /etc/logstash/logstash.crt -config custom_openssl.cnf
4.
您能够删除自定义配置文件:
# rm custom_openssl.cnf

 

配置Logstash服务器

新生成的SSL证书和密钥分别位于/etc/logstash/logstash.crt/etc/logstash/logstash.key接下来,配置Logstash以使用此新密钥与Filebeat进行通讯。

  1. 编辑文件/etc/logstash/conf.d/01-wazuh.conf并取消注释与SSL相关的行如今输入如下命令:

    input {
        beats {
            port => 5000
            codec => "json_lines"
            ssl => true
            ssl_certificate => "/etc/logstash/logstash.crt"
            ssl_key => "/etc/logstash/logstash.key"
        }
    }
  2. 从新启动Logstash。该命令取决于OS init系统:

    1. for Systemd:

      # systemctl restart logstash.service
    2. for  SysV Init:

      # service logstash restart

配置Filebeat

配置Filebeat以验证Logstash服务器的证书。

  1. 安装了Filebeat 计算机(Wazuh服务器)上,获取Logstash服务器的SSL证书文件/etc/logstash/logstash.crt并将其复制到/etc/filebeat/logstash.crt

    下面是一个示例,可用于将SSL证书从Logstash服务器复制到安装了Filebeat的Wazuh服务器:

    # scp root@LOGSTASH_SERVER_IP:/etc/logstash/logstash.crt /etc/filebeat
  2. 编辑文件/etc/filebeat/filebeat.yml,并取消注释与SSL内部相关的行,以下所示:

    output:
     logstash:
       hosts: ["192.168.1.2:5000"]
       ssl:
         certificate_authorities: ["/etc/filebeat/logstash.crt"]
  3. 从新启动Filebeat。该命令取决于OS init系统:

a.for Systemd:
# systemctl restart logstash.service
b.for SysV Init:
# service logstash restart

注意:有关更多详细信息,请参阅 Elastic的“ 与Logstash保护通讯”指南。

为Kibana设置SSL和身份验证

默认状况下,Kibana(包括Wazuh应用程序)与最终用户系统上的Web浏览器之间的通讯未加密。强烈建议将Kibana配置为使用SSL加密并启用身份验证。在本节中,咱们将介绍如何使用NGINX设置完成此操做。

NGINX是一种流行的开源Web服务器和反向代理,以其高性能,稳定性,丰富的功能集,简单的配置和低资源消耗而着称。在此示例中,咱们将其用做反向代理,以向最终用户提供对Kibana的加密和通过身份验证的访问。

注意:下面的许多命令都须要以root用户权限执行。Kibana Web界面的默认端口是5601。本案例将使80和443端口可用于HTTP / HTTPS访问。

用于Kibana的NGINX SSL代理(基于RPM的发行版)

  1. 安装NGINX:
    a.对于CentOS:
# cat > /etc/yum.repos.d/nginx.repo <<\EOF
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/centos/$releasever/$basearch/
gpgcheck=0
enabled=1
EOF

# yum install ngin
 b.对于RHEL:
# cat > /etc/yum.repos.d/nginx.repo <<\EOF
[nginx]
name=nginx repo
baseurl=http://nginx.org/packages/rhel/$releasever/$basearch/
gpgcheck=0
enabled=1
EOF

# yum install nginx

注意:有关更多信息,请参阅NGINX:官方Red Hat / CentOS软件包

2.安装SSL证书和私钥:

a.若是您拥有有效的签名证书,请将密钥文件<ssl_key>和证书文件复制到适当的位置:

 MKDIR -p的/ etc / PKI / TLS /证书的/ etc / PKI / TLS /私人
  CP <ssl_pem> /etc/pki/tls/certs/kibana-access.pem
  CP <ssl_key>的/ etc / PKI / TLS /private/kibana-access.key
b.若是您没有有效的签名证书,请按以下方式建立自签名证书。请记住将字段设置为您的服务器名称。例如,若是您的服务器是,您将执行如下操做:
# mkdir -p /etc/pki/tls/certs /etc/pki/tls/private
# openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/pki/tls/private/kibana-access.key -out /etc/pki/tls/certs/kibana-access.pem
  Generating a 2048 bit RSA private key
  ...........+++
  ................+++
  writing new private key to '/etc/pki/tls/private/kibana-access.key'
  -----
  You are about to be asked to enter information that will be incorporated
  into your certificate request.
  What you are about to enter is what is called a Distinguished Name or a DN.
  There are quite a few fields but you can leave some blank
  For some fields there will be a default value,
  If you enter '.', the field will be left blank.
  -----
  Country Name (2 letter code) [AU]: US
  State or Province Name (full name) [Some-State]: California
  Locality Name (eg, city) []: San Jose
  Organization Name (eg, company) [Internet Widgits Pty Ltd]: Example Inc.
  Organizational Unit Name (eg, section) []: section
  Common Name (e.g. server FQDN or YOUR name) []: example.com
  Email Address []: example@mail.com
3.将NGINX配置为Kibana的HTTPS反向代理:
# cat > /etc/nginx/conf.d/default.conf <<\EOF
server {
    listen 80;
    listen [::]:80;
    return 301 https://$host$request_uri;
}

server {
    listen 443 default_server;
    listen            [::]:443;
    ssl on;
    ssl_certificate /etc/pki/tls/certs/kibana-access.pem;
    ssl_certificate_key /etc/pki/tls/private/kibana-access.key;
    access_log            /var/log/nginx/nginx.access.log;
    error_log            /var/log/nginx/nginx.error.log;
    location / {
        auth_basic "Restricted";
        auth_basic_user_file /etc/nginx/conf.d/kibana.htpasswd;
        proxy_pass http://kibana-server-ip:5601/;
    }
}
EOF
 

注意:咱们配置Nginx以封装Kibana服务器的IP地址。此配置容许将Kibana请求重定向到HTTPS。使用此配置时,建议编辑文件/etc/kibana/kibana.yml以将字段设置server.hostlocalhost。必须从新启动Kibana服务才能应用此更改。

4.若是正在使用SELinux,则容许NGINX链接到Kibana端口:

# semanage port -a -t http_port_t -p tcp 5601

注意:这假设您已安装policycoreutils-python来管理SELinux。

经过htpasswd启用身份验证

  1. 安装httpd-tools包
# yum install httpd-tools
2.生成.htpasswd文件,确保替换wazuh为您选择的用户名,与auth_basic_user_file匹配
# htpasswd -c /etc/nginx/conf.d/kibana.htpasswd wazuh
3.重启NGINX:
a.for Systemd:
# systemctl restart nginx
b. for SysV Init:
# service nginx restart

如今,经过HTTPS访问Kibana Web界面。它将提示您输入在上述步骤中建立的用户名和密码。

警告:若是您遇到权限问题或得到502代码错误,请尝试执行如下命令:

 setsebool -P httpd_can_network_connect 1

用于Kibana的NGINX SSL代理(基于Debian的发行版)

  1. 安装NGINX:
# apt-get install nginx
2.安装SSL证书和私钥:
a.若是您拥有有效的签名证书,请将密钥文件<ssl_key>和证书文件复制<ssl_pem>到适当的位置:
# mkdir -p /etc/ssl/certs /etc/ssl/private
# cp <ssl_pem> /etc/ssl/certs/kibana-access.pem
# cp <ssl_key> /etc/ssl/private/kibana-access.key
b.若是您没有有效的签名证书,请按以下方式建立自签名证书:
# mkdir -p /etc/ssl/certs /etc/ssl/private
# openssl req -x509 -batch -nodes -days 365 -newkey rsa:2048 -keyout /etc/ssl/private/kibana-access.key -out /etc/ssl/certs/kibana-access.pem
  Generating a 2048 bit RSA private key
  .............+++
  ..+++
  writing new private key to '/etc/ssl/private/kibana-access.key'
  -----
3.将NGINX配置为Kibana的HTTPS反向代理:
# cat > /etc/nginx/sites-available/default <<\EOF
server {
    listen 80;
    listen [::]:80;
    return 301 https://$host$request_uri;
}

server {
    listen 443 default_server;
    listen            [::]:443;
    ssl on;
    ssl_certificate /etc/ssl/certs/kibana-access.pem;
    ssl_certificate_key /etc/ssl/private/kibana-access.key;
    access_log            /var/log/nginx/nginx.access.log;
    error_log            /var/log/nginx/nginx.error.log;
    location / {
        auth_basic "Restricted";
        auth_basic_user_file /etc/nginx/conf.d/kibana.htpasswd;
        proxy_pass http://kibana-server-ip:5601/;
    }
}
EOF

注意:咱们配置Nginx以封装Kibana服务器的IP地址。此配置容许将Kibana请求重定向到HTTPS。使用此配置时,建议编辑文件/etc/kibana/kibana.yml以将字段设置server.hostlocalhost。必须从新启动Kibana服务才能应用此更改。

经过htpasswd启用身份验证

  1. 安装apache2-utils包:
# apt-get install apache2-utils
2.使用您选择的用户名生成.htpasswd替换<user>下面的文件:
# htpasswd -c /etc/nginx/conf.d/kibana.htpasswd <user>
3.重启NGINX:
a.For Systemd:
# systemctl restart nginx
b.For SysV Init:
# service nginx restart

如今,经过HTTPS访问Kibana Web界面。它将提示您输入在上述步骤中建立的用户名和密码。

保护Wazuh API

默认状况下,Wazuh Kibana App和Wazuh API之间的通讯未加密。强烈建议您按照如下步骤保护Wazuh API:

  1. 更改默认凭据:

默认状况下,您能够经过键入用户“foo”和密码“bar”来访问Wazuh API,可是,您能够按以下方式建立新凭据:

# cd /var/ossec/api/configuration/auth
# node htpasswd -c user myUserName

而后,您须要从新启动wazuh-apiwazuh-manager服务才能使更改生效。

2.启用HTTPS:

要启用HTTPS,您须要生成或提供证书。您能够学习如何生成本身的证书或使用脚本自动生成证书:
/var/ossec/api/scripts/configure_api.sh
3.绑定到localhost:
若是您不须要从外部访问API,则应将API绑定到 localhost 使用配置文件/var/ossec/api/configuration/config.js中 的选项的config.host

Elasticsearch调整

本指南总结了容许优化Elasticsearch的相关配置。

1.Memory locking

2.Shards and replicas

Memory locking

当系统交换内存时,Elasticsearch的性能不好。对于节点的运行情况而言,任何JVM都不会交互到磁盘是相当重要的。

在本示例中,咱们将展现如何将bootstrap.memory_lock设置为true,以便Elasticsearch将进程地址空间锁定到RAM中。这能够防止任何Elasticsearch内存被溢出。

  1. 设置bootstrap.memory_lock

取消注释或将此行添加到文件中/etc/elasticsearch/elasticsearch.yml:

bootstrap.memory_lock: true
2.编辑系统资源的限制

配置系统设置的位置取决于您选择用于Elasticsearch安装的软件包和操做系统。

  • 在使用systemd的状况下,须要经过systemd指定系统限制。为此,请建立执行命令的文件夹:
# mkdir -p /etc/systemd/system/elasticsearch.service.d/

而后,在新目录中,添加一个名为elasticsearch.conf文件,并指定该文件中的设置

[Service]
LimitMEMLOCK=infinity

在其余状况下,编辑/etc/sysconfig/elasticsearch(RPM)或/etc/default/elasticsearch(Debian )并正确设置:

MAX_LOCKED_MEMORY=unlimited
3.Limit memory

若是Elasticsearch尝试分配的内存超过可用内存,则先前的配置可能会致使节点不稳定甚至节点挂掉。JVM堆限制将有助于限制内存使用并防止出现这种状况。

设置Elasticsearch内存大小时,有两个规则适用:

  • 使用不超过可用RAM的50%。
  • 使用不超过32 GB。

此外,重要的是要考虑主机上运行的操做系统,服务和软件的内存使用状况。

默认状况下,Elasticsearch配置有1 GB的内存。您可使用如下/etc/elasticsearch/jvm.options文件经过JVM标志更改内存大小:

# Xms represents the initial size of total heap space
# Xmx represents the maximum size of total heap space
-Xms4g
-Xmx4g

警告:确保min(Xms)和max(Xmx)大小相同,以防止JVM内存在运行时调整大小,由于这是一个很是重要的过程。

4.重启Elasticsearch

最后,重启Elasticsearch服务:

a.for Systemd:

# systemctl daemon-reload
# systemctl restart elasticsearch
b.for SysV Init:
# service elasticsearch restart

启动Elasticsearch后,您能够经过检查mlockall下一个请求的输出中的值来查看是否已成功应用此设置:

# curl "http://localhost:9200/_nodes?filter_path=**.mlockall&pretty"
{
  "nodes" : {
    "sRuGbIQRRfC54wzwIHjJWQ" : {
      "process" : {
        "mlockall" : true
      }
    }
  }
}
 

若是该"mlockall"字段的输出为false,则请求失败。您还会在日志(位于)中找到没法锁定JVM内存的行/var/log/elasticsearch/elasticsearch.log

参考:

Shards and replicas

Elasticsearch提供了将索引拆分为多个称为分片的段的功能。每一个分片自己都是一个功能齐全且独立的“索引”,能够托管在集群中的任何节点上。分片很重要,主要有两个缘由:

  • 您能够水平拆分/缩放内容卷
  • 您能够跨分片区分发和并行化操做,从而提升性能和吞吐量。

此外,Elasticsearch容许您将索引的分片的一个或多个副本转换成所谓的副本分片或简称副本。复制很重要,主要有两个缘由:

  • 它在碎片或节点出现故障时提供高可用性
  • 它容许您扩展搜索量和吞吐量,由于能够在全部副本上并行执行搜索。

警告:能够在建立索引时为每一个索引定义分片和副本的数量。建立索引后,您能够动态更改副本数,可是,您没法在过后更改分片数。

个人索引应该有多少个分片?

因为在没有重建索引的状况下没法从新设置(更改分片数),所以应仔细考虑在建立第一个索引以前须要多少分片。您在安装中计划的节点数将影响您应该计划的分片数。一般,经过使用与节点相同数量的分片来实现最佳性能。所以,具备三个节点的群集应该具备三个分片,而具备一个节点的群集将仅须要一个分片。

个人索引应该有多少个副本?

让咱们看看如何设置具备三个节点和三个分片的集群的一些选项:

  • 无副本:每一个节点都有一个分片。若是节点发生故障,咱们将留下两个分片的不完整索引。
  • 一个副本:每一个节点有一个分片和一个副本。若是节点出现故障,咱们仍然会有一个完整的索引。
  • 两个副本:每一个节点有一个分片和两个副本(完整索引)。经过此设置,即便两个节点发生故障,群集仍能够正常运行。这彷佛是最好的解决方案,但它确实增长了存储要求。

设置分片和副本的数量

使用RPMDebian软件包的默认安装Elastic Stack 将为每一个索引配置五个主分片和一个副本。

若是要更改这些设置,则须要编辑Elasticsearch模板。在如下示例中,分片和副本的正确值在仅包含一个节点的群集中配置。

警告:若是已建立索引,则必须在编辑模板后从新编辑索引

  1. 下载Wazuh Elasticsearch模板:
# curl https://raw.githubusercontent.com/wazuh/wazuh/3.8/extensions/elasticsearch/wazuh-elastic6-template-alerts.json -o w-elastic-template.json
2.编辑模板以设置一个没有副本的分片:
# nano w-elastic-template.json
{
  "order": 0,
  "template": "wazuh-alerts-3.x-*",
  "settings": {
    "index.refresh_interval": "5s",
    "number_of_shards" :   1,
    "number_of_replicas" : 0
  },
  "mappings": {
  "...": "..."
  }
}
3.加载模板:
# curl -X PUT "http://localhost:9200/_template/wazuh" -H 'Content-Type: application/json' -d @w-elastic-template.json
{ "acknowledged" : true }
4.可选。确认您的配置已成功更新:
# curl "http://localhost:9200/_template/wazuh?pretty&filter_path=wazuh.settings"
{
  "wazuh" : {
    "settings" : {
      "index" : {
        "number_of_shards" : "1",
        "number_of_replicas" : "0",
        "refresh_interval" : "5s"
      }
    }
  }
}
 

更改副本数量

可使用Elasticsearch API动态更改副本数。

在具备一个节点的群集中,副本数应设置为零:

# curl -X PUT "http://localhost:9200/wazuh-alerts-*/_settings?pretty" -H 'Content-Type: application/json' -d'
{
  "settings" : {
    "number_of_replicas" : 0
  }
}
'
{ "acknowledged" : true }
 

请注意,咱们假设您的目标索引模式是“wazuh-alerts- *”,可是,可使用不一样的索引模式。您可使用如下命令查看当前索引的完整列表:

# curl "http://localhost:9200/_cat/indices"

参考:

Search Guard

Search Guard可用于经过使用不一样的行业标准身份验证技术来保护您的Elasticsearch集群,例如Kerberos,LDAP/Active Directory,JSON Web令牌,TLS证书和代理身份验证 SSO。

不管您使用何种身份验证方法,基本流程以下:

  • 用户想要访问Elasticsearch集群,例如经过发出简单查询。

  • Search Guard从请求中检索用户的凭据

    • 如何检索凭据取决于身份验证方法。例如,能够从HTTP基自己份验证头,JSON Web令牌或Kerberos票证中提取它们。
  • Search Guard根据配置的身份验证后端对凭据进行身份验证。

  • Search Guard经过从配置的受权后端检索用户角色的列表来受权用户

    • 从受权后端检索的角色称为后端角色。
    • 例如,能够从LDAP / AD,JSON Web令牌或Search Guard内部用户数据库中获取角色。
  • Search Guard将用户和后端角色映射到Search Guard角色。

  • Search Guard肯定与Search Guard角色关联的权限,并决定是否容许用户执行的操做。

  • 若是您使用的是文档和字段级安全性,则还能够根据文档和单个字段应用精细化的权限。

为Logstash设置Search Guard

咱们的默认配置不使用Logstash的身份验证,所以咱们须要正确配置它。编辑Logstash配置文件(位于/etc/logstash/conf.d/01-wazuh.conf):

1.中止Logstash服务:

# systemctl stop logstash
2.查找输出部分并将其替换为如下内容:
output {
    elasticsearch {
        hosts => ["ELASTICSEARCH_HOST:9200"]
        index => "wazuh-alerts-3.x-%{+YYYY.MM.dd}"
        document_type => "wazuh"
        user => logstash
        password => logstash
        ssl => true
        ssl_certificate_verification => false
    }
}
3.从新启动Logstash。
# systemctl restart logstash

警告:必须对全部Logstash配置应用此配置,替换特定字段(如主机或索引),具体取决于您的Logstash位置和要求。

为Elasticsearch设置Search Guard

目前,不支持同时使用X-Pack安全性。若是您的环境当前正在使用X-Pack安全功能,则必须先将其禁用,而后再继续阅读本示例:

对于Elasticsearch,您须要在全部节点中编辑文件/etc/elasticsearch/elasticsearch.yml,并添加如下命令:

xpack.security.enabled: false

如今重启Elasticsearch服务:

# systemctl restart elasticsearch

Search Guard必须与 Elastic stack中的任何其余组件同样适合Elasticsearch版本。Search Guard的版本控制略有不一样,请在Search Guard版本中查看您的版本

Search Guard的版本控制语法以下:

com.floragunn:search-guard-6:<elastic_version>-<searchguard_version>

本文档是为咱们最新支持的版本设计的,它是6.5.4,因此咱们的正确的版本设置:

com.floragunn:search-guard-6:6.5.4-24.0

因为Search Guard是一个插件,咱们必须像其余Elasticsearch插件安装它:

sudo -u elasticsearch \
/usr/share/elasticsearch/bin/elasticsearch-plugin install \
-b com.floragunn:search-guard-6:6.5.4-24.0

Search Guard附带一个演示配置,它做为新手颇有用,因此让咱们安装演示配置:

$ cd /usr/share/elasticsearch/plugins/search-guard-6/tools/
$ chmod a+x install_demo_configuration.sh
# ./install_demo_configuration.sh
Install demo certificates? [y/N] y
Initialize Search Guard? [y/N] y
Enable cluster mode? [y/N] y

重启Elasticsearch服务:

# systemctl restart elasticsearch

您可使用下一个请求检查它是否按预期执行(Search Guard须要大约两分钟来建立其内部索引,所以请耐心等待):

$ curl -k -u admin:admin https://<ELASTICSEARCH_HOST>:9200/_searchguard/authinfo?pretty
{
"user" : "User [name=admin, roles=[admin], requestedTenant=null]",
"user_name" : "admin",
"user_requested_tenant" : null,
"remote_address" : "10.0.0.4:46378",
"backend_roles" : [
    "admin"
],
"custom_attribute_names" : [
    "attr.internal.attribute1",
    "attr.internal.attribute2",
    "attr.internal.attribute3"
],
"sg_roles" : [
    "sg_all_access",
    "sg_own_index"
],
"sg_tenants" : {
    "admin_tenant" : true,
    "admin" : true
},
"principal" : null,
"peer_certificates" : "0",
"sso_logout_url" : null
}

设置Search Guard角色

Search Guard使用核心角色。Search Guard用户角色使用核心角色。最后,Search Guard用户使用用户角色。

  • 角色文件
    • /usr/share/elasticsearch/plugins/search-guard-6/sgconfig/sg_roles.yml
    • Search Guard在引擎下使用核心角色
  • 角色映射
    • /usr/share/elasticsearch/plugins/search-guard-6/sgconfig/sg_roles_mapping.yml
    • Search Guard用户使用的角色。这些角色能够组合多个核心角色。
  • 内部用户
    • /usr/share/elasticsearch/plugins/search-guard-6/sgconfig/sg_internal_users.yml
    • 这些是全部组件将使用的用户。每一个组件使用具备本身角色的不一样用户。

Logstash角色

Logstash有本身的预约义用户和本身的预约义角色。因为Wazuh使用wazuh-alerts-3.x- *前缀建立自定义Elasticsearch索引,所以必须将该索引前缀添加到Logstash角色。

  1. 编辑Logstash角色,位于/usr/share/elasticsearch/plugins/search-guard-6/sgconfig/sg_roles.yml
sg_logstash:
    cluster:
        - CLUSTER_MONITOR
        - CLUSTER_COMPOSITE_OPS
        - indices:admin/template/get
        - indices:admin/template/put
    indices:
        'logstash-*':
            '*':
                - CRUD
                - CREATE_INDEX
        '*beat*':
            '*':
                - CRUD
                - CREATE_INDEX
        'wazuh-alerts-3?x-*':
            '*':
                - CRUD
                - CREATE_INDEX

注意:用于Search Guard角色的点被替换,3?x实际上意思是3.x

2.应用更改:

# /usr/share/elasticsearch/plugins/search-guard-6/tools/sgadmin.sh \
-cd /usr/share/elasticsearch/plugins/search-guard-6/sgconfig -icl -key \
/etc/elasticsearch/kirk-key.pem -cert /etc/elasticsearch/kirk.pem -cacert \
/etc/elasticsearch/root-ca.pem -h <ELASTICSEARCH_HOST> -nhnv

警告:在生产环境中,不建议使用-nhnv标识,由于它忽略了证书问题。

3.从新启动Elasticsearch和Logstash服务:

# systemctl restart elasticsearch
# systemctl restart logstash

此时,您可使用user:password 身份验证和加密通讯来保护您的Elasticsearch集群。这意味着必须对指向某个Elasticsearch节点的任何Logstash进行身份验证。此外,对Elasticsearch API的任何请求都必须使用https plus user:password 身份验证。

为Kibana设置Search Guard

目前,不支持同时使用X-Pack安全性。若是您的环境当前正在使用任何X-Pack安全功能,则必须先将其禁用,而后再继续阅读本示例。

对于Kibana,您须要编辑文件/etc/kibana/kibana.yml并添加如下行:

xpack.security.enabled:false

如今重启Kibana服务:

# systemctl restart kibana

Kibana也须要Search Guard插件。插件版本控制就像Elasticsearch插件版本同样,这意味着你必须彻底适合你的Kibana版本。

  1. 像其余安装组件同样安装:
$ sudo -u kibana NODE_OPTIONS="--max-old-space-size=3072" /usr/share/kibana/bin/kibana-plugin install https://search.maven.org/remotecontent?filepath=com/floragunn/search-guard-kibana-plugin/6.5.4-17/search-guard-kibana-plugin-6.5.4-17.zip
2. 编辑Kibana配置文件,它位于/etc/kibana/kibana.yml,添加如下行:
# Elasticsearch URL
elasticsearch.url: "https://<ELASTICSEARCH_HOST>:9200"

# Credentials
elasticsearch.username: "admin"
elasticsearch.password: "admin"

# Disable SSL verification because we use self-signed demo certificates
elasticsearch.ssl.verificationMode: none

# Whitelist the Search Guard Multi Tenancy Header
elasticsearch.requestHeadersWhitelist: [ "Authorization" , "sgtenant" ]
 
 

如今,您能够像往常同样访问Kibana UI,它将提示您登陆,您可使用现有的admin的用户访问它。

接下来的步骤咱们将学习如何定义新的Kibana UI用户以及如何根据他们的须要为全部用户定义特定角色。

有关详细信息,请参阅Kibana Search Guard插件

Kibana UI和Wazuh应用程序

Wazuh应用程序须要管理.wazuh和.wazuh-version索引才能正常工做。服务器端使用索引.wazuh-version。

警告:只需从Elasticsearch集群中的一个主节点执行

Wazuh app用户

1.在/usr/share/elasticsearch/plugins/search-guard-6/sgconfig/sg_roles.yml中建立新的Search Guard核心角色

sg_wazuh_admin:
  cluster:
    - indices:data/read/mget
    - indices:data/read/msearch
    - indices:data/read/search
    - indices:data/read/field_caps
    - CLUSTER_COMPOSITE_OPS
  indices:
    '?kiban*':
      '*':
        - MANAGE
        - INDEX
        - READ
        - DELETE
    '?wazuh':
      '*':
        - MANAGE
        - INDEX
        - READ
        - DELETE
    '?wazuh-version':
      '*':
        - MANAGE
        - INDEX
        - READ
        - DELETE

    'wazuh-alerts-3?x-*':
      '*':
        - indices:admin/mappings/fields/get
        - indices:admin/validate/query
        - indices:data/read/search
        - indices:data/read/msearch
        - indices:data/read/field_stats
        - indices:data/read/field_caps
        - READ
        - SEARCH

    'wazuh-monitoring*':
      '*':
        - indices:admin/mappings/fields/get
        - indices:admin/validate/query
        - indices:data/read/search
        - indices:data/read/msearch
        - indices:data/read/field_stats
        - indices:data/read/field_caps
        - READ
        - SEARCH
2.为您的密码建立哈希
bash /usr/share/elasticsearch/plugins/search-guard-6/tools/hash.sh -p yourpassword
3.使用步骤2中的哈希在/usr/share/elasticsearch/plugins/search-guard-6/sgconfig/sg_internal_users.yml中建立新用户。
wazuhadmin:
  hash: $2a$12$VcCDgh2NDk07JGN0rjGbM.Ad41qVR/YFJcgHp0UGns5JDymv..TOG
  roles:
    - wazuhadmin_role
3.在/usr/share/elasticsearch/plugins/search-guard-6/sgconfig/sg_roles_mapping.yml中设置Search Guard角色的角色映射
sg_wazuh_admin:
  backendroles:
    - wazuhadmin_role
4.应用更改:
# /usr/share/elasticsearch/plugins/search-guard-6/tools/sgadmin.sh \
-cd /usr/share/elasticsearch/plugins/search-guard-6/sgconfig -icl -key \
/etc/elasticsearch/kirk-key.pem -cert /etc/elasticsearch/kirk.pem -cacert \
/etc/elasticsearch/root-ca.pem -h <ELASTICSEARCH_HOST> -nhnv

Kibana简要总结

如今你有两个Kibana用户:

  • Kibana服务器使用Search Guard中预约义的管理员用户(/etc/kibana/kibana.yml)。
  • Kibana UI wazuhadmin用户能够看到全部并修改.wazuh索引。

它是如何进入Wazuh应用程序?

主要区别在于您如今必须在进入Kibana以前登陆。另请注意,若是不容许用户使用某些索引,则不能在Kibana上使用它们。

 

自动插入Wazuh API

若是您想更快地在咱们的某个应用程序上添加Wazuh API凭据,您能够执行如下命令之一,具体取决于您使用的应用程序:

Kibana应用程序

# curl -X POST "http://<ELASTICSEARCH_IP>:9200/.wazuh/wazuh-configuration/1513629884013" -H 'Content-Type: application/json' -d'
{
  "api_user": "<WAZUH_API_USERNAME>",
  "api_password": "<WAZUH_API_PASSWORD>",
  "url": "<WAZUH_API_URL>",
  "api_port": "<WAZUH_API_PORT>",
  "insecure": "true",
  "component": "API",
  "cluster_info" : {
    "manager" : "<WAZUH_MANAGER_HOSTNAME>",
    "cluster" : "<WAZUH_MANAGER_CLUSTER_NAME>",
    "status" : "<WAZUH_MANAGER_CLUSTER_STATUS>"
  },
  "extensions" : {
    "audit" : true,
    "pci" : true,
    "gdpr" : true,
    "oscap" : true,
    "ciscat" : false,
    "aws" : false,
    "virustotal" : false,
    "osquery" : false
  }
 

请注意如下事项:

  1. <ELASTICSEARCH_IP>是Elasticsearch主机的URL 
  2. cURL命令(1513629884013)上使用的数字是一个随机数,用于将Wazuh API条目标识为惟一。若是要添加更多API,则必须使用其余编号。
  3. <WAZUH_API_USERNAME>和<WAZUH_API_PASSWORD>表示要存储在应用程序中的Wazuh API凭据。
  4. API密码必须以base64格式存储。使用将以正确的格式返回密码以供使用:echo -n '<WAZUH_API_PASSWORD>' | base64
  5. <WAZUH_API_URL>和<WAZUH_API_PORT>是Wazuh API 的完整IP地址和端口。URL必须包含http://https://,具体取决于当前配置。
  6. <WAZUH_MANAGER_HOSTNAME>是安装Wazuh管理器的实例的主机名。您只需在管理器主机上运行该命令便可获取此信息。
  7. <WAZUH_MANAGER_CLUSTER_NAME>是Wazuh集群的名称。它是在文件ossec.conf上配置的。若是您没有使用Wazuh群集,请使用Disabled
  8. <WAZUH_MANAGER_CLUSTER_STATUS>是Wazuh集群的状态。使用enableddisabled取决于您的配置。

Splunk app

# curl -X POST "http://<SPLUNK_IP>:<SPLUNK_PORT>/en-US/custom/SplunkAppForWazuh/manager/add_api?url=<WAZUH_API_URL>&portapi=<WAZUH_API_PORT>&userapi=<WAZUH_API_USERNAME>&passapi=<WAZUH_API_PASSWORD>"
 
  1. <SPLUNK_IP>是安装应用程序的Splunk实例的主机名或IP地址。
  2. <SPLUNK_PORT>是安装应用程序的Splunk实例的端口。默认状况下,它是8000。
  3. <WAZUH_API_URL><WAZUH_API_PORT><WAZUH_API_USERNAME><WAZUH_API_PASSWORD>表明Wazuh API凭证存储上的应用程序。请记住,Wazuh API URL必须包含http://https://,具体取决于当前配置
 

安装包列表:

manage,agent以及API

 


操做系统 版本 系统位数 SHA512校验和 MD5校验和
基于Debian 3.8.2 32位 wazuh-agent_3.8.2-1_i386.deb 45fd4bf6210c21a9eb183ac6c9845ef380eb2da8c7a6c64c065866c0430036f01c8eb41c1caad7afc7a17d2016a2023c9415afa845b311d3144497b6a78dee23 d514d81444da3bb1a1310cc073daf57a
wazuh-manager_3.8.2-1_i386.deb 6339a1fd455f7fdc982899cdae39974528379c8d68689f3959fb5a76bea244940f136fd5c858678ea7f1722d17f22dfcf8b039c4766230bb61f4f7ab1c4b817e 475685576e13a04a862e64f4b8ef678f
64位 wazuh-agent_3.8.2-1_amd64.deb 8328534c96c12d2df29a37c120200a0bce7de1142d5b1706cb767d541d87de0e6777a08cda9d3a010c26032e72d7255fb12ff486b4dbf48782776537deb9b455 7a800037ed34070fe84b6b9fd1aa85f4
wazuh-manager_3.8.2-1_amd64.deb 5f44124d3fcbf8f89a8f056f1f0837a1684ad86c2f81281044aa0cf653d429f932574a24a916f2e75c1f998109d8730c497ec4823f6021eb5ec1ac6a5098a644 11d0fca5514f33d0a5292aa5769c4453
wazuh-api_3.8.2-1_amd64.deb 83dc3e6c71cb670b0b2c4883941152df8b6e93729830106c6f91bef47601663f238508db4f3146c61d074a586fe4f50cf6c5baf1ec2b98b42c46110cfb2be634 a6a5a2f4b7d679e02f1b26e3ba929fb7
基于RPM 3.8.2 32位 wazuh-agent-3.8.2-1.i386.rpm d2f1b7c622f12f7da682f14453f04d346df3f77b740f204b5638b736cb9bb48ebf28c502d6e705f76f39b170b65241706220a3cb08ca315244658f9e10a7f09f c711eceea1963aa783f349d3dad6ae93
wazuh-manger-3.8.2-1.i386.rpm 4d90284fad80431b47393d954d2ca5575a426753abc2f5e6e698d551ba248823fcbe6f0760e982fa6dabafe59d77b8c0d78fe952e34cebb16654869b5b923a57 928cca5405556858798fbb0cd3bcc6be
64位 wazuh-agent-3.8.2-1.x86_64.rpm 3db04f90da1701a7ff92a12e0472d78c70d2e9d9d96f075f1c2aff62a80d094acfada805b1a9edd8ac10e8eb2577470b0165171451e7a76bc44902f4b30d5b14 d97f9ded99047f9c2afbe058f72aaf89
wazuh-manager,3.8.2-1.x86_64.rpm 9d59fbf7a058df01e275b810f2741551283e379b36618348b1da931d46a0ef35085fa36167d772d94de8aad40715702a91e2ef0ad04917601131963d78716655 92d64e9edbcddf75f570bdb732ea1e18
wazuh-API 3.8.2-1.x86_64.rpm b2d9ea714cd7f98458a33508f7b1014cf3b447f1ab532481d4a1ae70f6bcd31a3f1647b03949058dec2892ec8061c1ce81895a3a34c607403c06d61abe2c540f 7a9fa1664a7fdceb0f84c6152cfbc518

CentOS 5

RedHat 5

SUSE 11

3.8.2 32位 wazuh-agent-3.8.2-1.el5.i386.rpm 0ce0cc21542388fb39421a0cb1dab8b42c7d2bb1b6afead90281bddecfadc5761f24f6805fce09c0b16a50180b6921ddb535335e3189f28b00f90060a7e322b8 32b575cde448e1747fb0a350bd6786bb
wazuh-manger,3.8.2-1.el5.i386.rpm 1504c72235aebffe29ccfddc3a5f8588e66237ac6bbc47070f50ce2778136b06e8ec3aac5e3cfe9da9d90cf34b8118abecf8c2a182b4a7c6d2139737c7293d67 d737aab2d84ebb5d0cd9ce4d447a3aeb
64位 wazuh-agent-3.8.2-1.el5.x86_64.rpm 131a69e9e4bc3a59d51d3382db58002b997cfad02da774cb34aaf577c20c031b4f57301b38b36f916bc6991e6f6acc66b58855b0a3746b4d3c2fb229cf29f9f8 769cc8a89088109b1e491ffdcb0dbf05
wazuh-manager,3.8.2-1.el5.x86_64.rpm a15c12be503be01b977d12b9b679ca834e54b19bc7615ef82b95de4267211c33344abc13ac908f0fae326ad06c86bd02602c05bcb6109c2a28cd6ba83f68c85a db57dfc16a05a8eec8bbc2c09a6d0613
windows 3.8.2 32/64位 wazuh-agnet-3.8.2-1.msi 753af161918bc3cc7fc8d3de9fc73103b54cc15453af202955e885d423293182a50e7bf5612adc2c00fdd5656698aaa94aa4618176d138ba93dd46e519dbca17 dd0b534e98b645eb1e43477b85013580
Mac OS X. 3.8.2 64位 wazuh-manager-3.8.2-1.pkg 605bcd645a518321016d33c4c0108152862581882997575b2eb3b1682a6341a807e7f92bc6f4ed483ed608cfd765be6db021a39eb3f91f310223441cadebaf1e 73bc5e724f16981130f3064a8355b700
HP-UX 11.31 3.8.2 Itanium wazuh-agent-3.8.2-1-HPUX-11v3-ia64.tar 26ce466f8c9657289383550d6277ccbffc8eb758456f57cbe8a1fc1260f1cb4cd702edec33633cf53b1d2fca6bf7e7fed3584aa07513039708c20cd2efcdeb28 2c8633fb24cbf53b869238a78073f4ad
Solaris 10 3.8.2 I386 wazuh-agent_v3.8.2-SOL10,i386.pkg a4a2ba591a39a382a9f8723f6b415138f4c44a18bc17956689e1bbbd1cfe2662871cbebc0e52dbee35ca590a2f183f4c93024c1a92c7e5785e5e397deb38b687 50c407237f6d5d496365ef30e1411c79
SPARC wazuh-agent_v3.8.2-SOL10,sparc.pkg 67d9e915a144de85c9198a76b7b97e0744b1de2cafdf31c872c2c229fd66f5e7d5b62b7a8a7651e766f304142172e9aa021eb80a4201c5b3566d828e59291236 00510447e6d9e8d7f5623bd29d356986
Solaris 11 3.8.2 I386 wazuh-agent_v3.8.2-sol11-i386.p5p 9bc17cb642e590d2d1bfb6a9a3260012ac585507aa6ddb37786e4faa9254a953dca181fdfb574db523b7a915b0fe308ebb3ef9fd69f04c1f3a7e885f04abfc7d 24aaf35aba94c8191c0b23263559d749
SPARC wazuh-agent_v3.8.2-sol11-sparc.p5p c72100439bed144d34e589662e63dced353711df21f2e0a66b4100ad45c71aa2b6e2a5f1dcb86a2895c25ed74e9e12268f3478420440296937a2ede893487076 9225474a36629b86181273fbf9cbcbfe
AIX 5.3或更高版本 3.8.2 LPARs wazuh-agent-3.8.2-1.aix.ppc.rpm 3f8da3a0deefb705c1ddad42d2fdb1240cfadd16f62285c4f7092cf327383e66f0314a0137cfb475261007cfd715c35692af9612b3d092e5941ce3de6111c599 2ea0dcec1066366873942bb89575af27

 

注意: 基于RPM的软件包包括CentOS / RHEL 6或更高版本,Fedora 22或更高版本,SLES 12和Amazon Linux

Kibana和Splunk app

产品 版本 Wazuh SHA512校验和 MD5校验和
Elastic Stack 6.6.0 3.8.2 wazuhapp-3.8.2_6.6.0.zip 0df564008cfb328c719a2847d3356dc620024535de65bb7b05204e7041d9037c7a71fff3ca544a00af3283589a2b2a4a74cdebbdb204194861f73a3f097a21ca 35ab8d3dcd0db78e67e50ecc283cf6b4
Splunk的 7.2.3 3.8.2 v3.8.2_7.2.3.tar.gz 443a16de801ff36170f36886083c6370efb3e10725dae8086e09aa986cd83471ba3f593d2e451a3204caf446201fefb0a4b95de3ede4189621ab9277b350c3e4 8cf2be3aa7f64c440e3b64f41547f961

虚拟机

系统 系统位数 VM格式 版本 软件包 SHA512校验和 MD5校验和
CentOS 7 64位 OVA 3.8.2 wazuh3.8.2_6.5.4 89386f5e0a314aef7def25fe6a46f408b014fd112df448a17784684c9ba0a253bcc5caac4e0e7ab3cf3780b8e5b7a8f9682926531cde88b01b6f94bb625160a0 dc40d69a1634271cc270bc5afd9e9539
OVF 3.8.2 wazuh3.8.2_6.5.4-disk1 a4f85d0fce81ca6020bcc1d8c88de31ec2300ec9ae6f114df225022ecb26ae7208deabe4dfb5ac41f05bc78e22e4d5a8b12311fb3d4b401e8c3fcadfe035e686 00b257363d54d9d62a8ce0b4c1f1a61f
wazuh3.8.2_6.5.4.ovf 70a283c171dfac191
 

兼容性

Wazuh软件能够安装在许多操做系统中,但根据您的须要,某些系统可能不兼容。此外,不一样的Wazuh产品之间也有特定的兼容性要求。为了帮助您,请检查如下兼容性。

操做系统兼容性

manager

下面显示了Wazuh manger的兼容性表。因为其稳定性和与Wazuh模块的彻底兼容性,建议使用CentOS / RHEL 7做为Wazuh管理器的操做系统。

操做系统 Wazuh版
3.8.x 3.7.x 3.6.x 3.5.x 3.4.x 3.3.x 3.2.x 3.1.0 3.0.0 2.1.1 2.1.0
Debian Wheezy / 7
Debian Jessie / 8
Debian Stretch / 9
Ubuntu Precise / 12.04
Ubuntu Trusty / 14.04
Ubuntu Vivid / 15.04
Ubuntu Wily / 15.10 *
Ubuntu Xenial / 16.04
Ubuntu Yakkety / 16.10
Ubuntu Zesty / 17.04
Ubuntu Artful / 17.10
Ubuntu Bionic / 18.04
CentOS 5 / RHEL 5 *
CentOS 6 / RHEL 6 **
CentOS 7 / RHEL 7
Fedora(> = 22)

(*)在这些系统中,Wazuh API不可用。

(**)要在CentOS 6中运行群集,请查看在CentOS 6中 运行群集部分

注意:该集群自Wazuh v3.0起可用,而且在CentOS 5 / RHEL 5上不起做用。

agent

在此表中,您能够查看咱们支持的操做系统列表,其中能够安装Wazuh agent

操做系统 Wazuh版
3.8.x 3.7.x 3.6.x 3.5.0 3.4.0 3.3.1 3.3.0 3.2.4 3.2.3 3.2.2 3.2.1 3.2.0 3.1.0 3.0.0 2.1.x
Debian Wheezy/7 or newer
Ubuntu Precise / 12.04或更新版本
CentOS 5 / RHEL 5
CentOS / RHEL 6或更新版本
Fedora 22或更新版本
Windows XP 2003或更高版本
Windows Server 2008或更高版本
Mac OS X.
HP-UX 11.31
Solaris 10 - i386
Solaris 11 - i386
Solaris 10 - Sparc
Solaris 11 - Sparc
AIX 5
AIX 6
AIX 7
Suse 11
Suse 12
Amazon Linux

产品兼容性

当使用Wazuh软件的全栈(这意味着,wazuh-managerwazuh-agentwazuh-apiwazuh-app),也有为了避免同的兼容性要求,使得正常运行。

manager和agent

当agent具备与管manager相同或更旧的版本时,agent和manager之间的兼容性获得保证。

agent版本 manger版本
3.8.0 3.7.2 3.7.1 3.7.0 3.6.1 3.6.0 3.5.0 3.4.0 3.3.1 3.3.0 3.2.4 3.2.3 3.2.2 3.2.1 3.2.0 3.1.0 3.0.0 2.1.1 2.1.0
3.8.0
3.7.2
3.7.1
3.7.0
3.6.1
3.6.0
3.5.0
3.4.0
3.3.1
3.3.0
3.2.4
3.2.3
3.2.2
3.2.1
3.2.0
3.1.0
3.0.0
2.1.1
2.1.0

注意:Wazuh manager也与OSSEC agent兼容,但请记住,并不是全部功能均可用。

manger和API

API须要与major.minor manager相同的版本才能兼容。

API版本 Manager 版本
3.8.x 3.7.x 3.6.x的 3.5.x的 3.4.x 3.3.x 3.2.x中 3.1.X 3.0.x的 2.1.x的
3.8.x
3.7.x
3.6.x的
3.5.x的
3.4.x
3.3.x
3.2.x中
3.1.X
3.0.x的
2.1.x的

API和Kibana应用程序

Kibana的Wazuh应用程序须要兼容两种不一样的产品:

  • 使用Wazuh API,它须要相同的major.minor版本。
  • 使用Elastic Stack,它只与彻底相同的版本兼容。
 
App version Elastic Stack version API version
3.8.x 3.7.x 3.6.x 3.5.x 3.4.x 3.3.x 3.2.x 3.1.x 3.0.x 2.1.1
3.8.x 6.5.4 to 6.6.0
3.7.x 6.4.2 to 6.5.4*
3.6.x 6.3.2 to 6.4.3*
3.5.x 6.3.2 to 6.4.0*
3.4.x 6.3.1 to 6.3.2*
3.3.x 6.2.4 to 6.3.1*
3.2.x 6.1.0 to 6.2.4*
3.1.x 6.1.0 to 6.1.3*
3.0.x 6.0.0 to 6.1.0*
2.1.1 5.6.5

 

(*)在这些Wazuh应用程序版本中,Elastic Stack有不一样的兼容版本。

您能够在Kibana存储库中找到有关Wazuh应用程序的更多信息,您能够在其中查看Wazuh应用程序和Elastic Stack版本之间更详细的兼容性.

API和Splunk应用程序

Wazuh的Splunk应用程序须要兼容两种不一样的产品:

  • 使用Wazuh API,它须要相同的major.minor版本。
  • 使用Splunk,它只与彻底相同的版本兼容。
App version Splunk version API version
3.8.x 3.7.x 3.6.x 3.5.x 3.4.x 3.3.x 3.2.x 3.1.x 3.0.x 2.1.1
3.8.x 7.2.3
3.7.x 7.2.0 to 7.2.1*
3.6.x 7.1.2 to 7.1.3*
3.5.x 7.1.2
3.4.x 7.1.2
3.3.x 7.1.1
3.2.x 7.0.3 to 7.1.1*

(*)在这些Wazuh应用程序版本中,Splunk有不一样的兼容版本。

您能够在Wazuh应用程序存储库中找到更多信息,您能够在其中查看用于Wazuh和Splunk版本的Splunk应用程序之间的更详细的兼容性.

相关文章
相关标签/搜索