基本的搭建步骤都在这个博客下:
https://www.cnblogs.com/backlion/p/10394369.html
下面写一些我再安装过程中遇到的问题
1、首先安装wazuh中的各个版本都需要一致,例如我安装的是
wazuh-manager-3.8.2-1.x86_64.rpm 那么与wazuh 相关的都应该是 3.8.2版本
wazuh-agent-3.8.2-1.x86_64.rpm 、wazuh-api-3.8.2-1.x86_64.rpm
wazuhapp-3.8.2_6.7.1.zip // 这里的下划线后面哪个要和自己安装的elastic版本对应上,前面的哪个需要和wazuh对应上。
安装这几个可以按照上面链接里面的进行安装,配置好yum,直接安装,
2、安装elk的时候,最好去elasticsearch 官网下载 elasticsearc.tar.gz ,以及 logstash.tar.gz 、kibana.tar.gz然后再/opt目录或者其他目录下安装。
下载地址:https://www.elastic.co/cn/downloads/past-releases ,下载自己需要的各种版本和插件。
在安装es相关软件的时候,需要保证自己的nodejs版本6.5以上,以及python 版本 >=2.7.jdk 版本使用 1.8以上版本(这里这些如那件最好使用各个大版本下小版本里最新的,例如,6.7.1就是6版本下的最新的,jdk1.8.201 居士1.8 下最新的)
这里安装完elasticsearch的时候,最好使用自己独有的用户进行启动,
#使用root用户进行下面的操作
groupadd esgroup
useradd es
#然后将elasticsearch 解压出来的都授权为 esgroup 和es
chown -R es:esgroup ..../elasticsearch/
这里修改为es用户的时候启动会报错需要修改下面的配置
然后启动(注意非root用户)
报错,如下:
ERROR: [4] bootstrap checks failed
[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
[2]: max number of threads [1024] for user [elk] is too low, increase to at least [4096]
[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
解决,[1]: max file descriptors [4096] for elasticsearch process is too low, increase to at least [65536]
#切换到root用户修改
vim /etc/security/limits.conf
# 在最后面追加下面内容
es hard nofile 65536
es soft nofile 65536
解决第二个[2]: max number of threads [1024] for user [elk] is too low, increase to at least [4096] ,改为4096
#切换到root用户修改
进入limits.d下的配置文件:vi /etc/security/limits.d/90-nproc.conf ,修改配置如下:
* soft nproc 4096
root soft nproc unlimited
解决第三个[3]: max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]
#切换到root用户修改
修改sysctl文件:vi /etc/sysctl.conf ,增加下面配置项
增加改行配置:vm.max_map_count=655360
保存退出后,执行:
sysctl -p
然后是对elasticsearch配置文件进行修改。
vim config/elasticsearch.yml
#这里修改为自己的ip地址
network.host: 192.168.0.105
然后切换到es 用户,启动elasticsearch ,最后访问,下面这样就算成功了
如果启动的时候磁盘空间过小报错(此时日志中提示为只读模式,就是这个错误),那么需要再elasticsearch.yml中添加下面的几句
cluster.routing.allocation.disk.threshold_enabled: true
cluster.routing.allocation.disk.watermark.low: 93%
cluster.routing.allocation.disk.watermark.high: 95%
和执行这句话:
PUT _settings
{
"index": {
"blocks": {
"read_only_allow_delete": "false"
}
}
}
3、安装kibana 很简单,直接解压tar.gz然后修改配置文件就好
vim config/kibana.yml
#下面这两处进行修改
server.host: "192.168.0.105"
elasticsearch.url: "http://192.168.0.105:9200"
为Kibana安装Wazuh应用程序插件:(Kibana插件安装过程可能需要几分钟。请耐心等待)
[root@wazhu-manage opt]# 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.0_6.5.4.zip
Attempting to transfer from https://packages.wazuh.com/wazuhapp/wazuhapp-3.8.0_6.5.4.zip
Transferring 17809056 bytes....................
Transfer complete
Retrieving metadata from plugin archive
Extracting plugin archive
Extraction complete
Optimizing and caching browser bundles...
Plugin installation complete
4、 安装logstash的时候出现问题,按照前面链接里的安装速度过慢,所以我只能去下载好对应版本的rpm 包,然后执行rpm -ivh logstash.rpm安装,然后需要执行下面两句命令
本地配置(仅在单主机架构中):
[root@wazhu-manage opt]# 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组
[root@wazhu-manage opt]# 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
5、然后 直接使用 systemctl start logstash.service 启动(下载地址在2中说了)
5.1在启动之前需要修改配置文件(不然数据同步不到es中)
vim /etc/logstash/conf.d/01-wazuh.conf
#里面的localhost改为对应的ip
output {
elasticsearch {
hosts => ["192.168.0.105:9200"]
index => "wazuh-alerts-3.x-%{+YYYY.MM.dd}"
document_type => "wazuh"
}
}
5.2查看logstash的日志,
tail -f /var/log/logstash/logstash-plain.log
6、通过api链接 wazuh app 的时候需要关闭防火墙或者开放端口
7、添加api之前的准备工作
在填用户名、密码、url、端口之前,要先到Wazuh server主机上,使用命令生成非默认的认证来保护Wazuh API。
cd /var/ossec/api/configuration/auth/
node htpasswd -c user wazuh-api
service wazuh-api restart
8、最后就是注册agent
在另一台主机上安装wazuh-agents 也可以通过yum install wazuh-agent 安装
然后再manage 端添加代理,然后获取到key 去到agent端注册进去。
这里还需要修改一下agent端的 ossec.conf文件
vim /var/ossec/etc/ossec.conf
最后就可以在这里看到自己添加的agent了
注:如果启动以后openscap没有数据
1、需要在agent主机上安装扫描器(scanner)
yum install openscap-scanner
2、在agent和manage端的本地配置文件ossec.conf (/var/ossec/etc/ossec.conf), 更改如下内容(默认安装完成后文件中已添加完成):
<wodle name="open-scap">
<disabled>no</disabled>
<timeout>1800</timeout>
<interval>1d</interval>
<scan-on-start>yes</scan-on-start>
<content type="xccdf" path="ssg-centos-7-ds.xml">
<profile>xccdf_org.ssgproject.content_profile_pci-dss</profile>
<profile>xccdf_org.ssgproject.content_profile_common</profile>
</content>
</wodle>
3、首先重启manage端
要应用新的配置,请重新启动管理器:
#systemctl restart wazuh-manager
现在,重新启动所有代理:
#/var/ossec/bin/agent_control -R -a
4、在agent端
systemctl restart wazuh-agent
5、当Vulnerabilities这个菜单下没有数据的时候,需要修改manage端的配置文件(wazuh配置Vulnerabilities-漏洞扫描)
1.
agent: 编辑/var/ossec/etc/ossec.conf
<ossec_config>
<wodle name="syscollector">
<disabled>no</disabled>
<interval>1h</interval>
<scan_on_start>yes</scan_on_start>
<hardware>yes</hardware>
<os>yes</os>
<network>yes</network>
<packages>yes</packages>
<ports all="no">yes</ports>
<processes>yes</processes>
</wodle>
</ossec_config>
2.重启agent
systemctl restart wazuh-agent
3.manager:编辑 /var/ossec/etc/ossec.conf
<ossec_config>
<wodle name="vulnerability-detector">
<disabled>no</disabled>
<interval>1m</interval>
<ignore_time>6h</ignore_time>
<run_on_start>yes</run_on_start>
<feed name="ubuntu-18">
<disabled>no</disabled>
<update_interval>1h</update_interval>
</feed>
<feed name="redhat">
<disabled>no</disabled>
<update_interval>3m</update_interval>
<update_from_year>2015</update_from_year>
</feed>
<feed name="debian-9">
<disabled>no</disabled>
<update_interval>1h</update_interval>
</feed>
</wodle>
</ossec_config>
4.重启manager
systemctl restart manager
5.1 然后等几分钟,查看日志 vim /var/ossec/logs/ossec.log,如果有下面几句说明成功
6、还有不懂得查看这个链接
https://my.oschina.net/u/4082432/blog/3031336