👉点击这里申请火山引擎VIP帐号,立即体验火山引擎产品>>>
应用场景
应用 | 本示例中的作用说明 | 相关文档 |
Suricata | 对流量镜像的数据解除VXLAN封装。 | What is Suricata |
Filebeat | 收集日志数据并将其转发至 Elasticsearch 。 | Filebeat overview |
Elasticsearch | 存储数据并提供搜索索引。 | What is Elasticsearch? |
Kibana | 分析Elasticsearch中的数据并可视化呈现。 | What is Kibana? |
前提条件
已完成 流量镜像快速入门 的步骤。
在同一VPC内,新增两台绑定公网IP的云服务器ECS-Elasticsearch、ECS-Kibana。
在云服务器ECS-Kibana所在安全组的入方向放通协议TCP、网段为0.0.0.0/0、端口为5601的流量。操作请参见 添加安全组规则。
操作步骤
步骤一:安装Suricata
登录云服务器ECS-TrafficMirrorTarget。
依次执行以下命令,安装Suricata。
sudo yum install epel-release yum-plugin-coprsudo yum copr enable @oisf/suricata-7.0sudo yum install suricata
执行以下命令,启动Suricata。
sudo systemctl enable suricatasudo systemctl start suricata
执行以下命令,查看日志文件。
cd /var/log/suricatals
步骤二:安装Elasticsearch
登录云服务器ECS-Elasticsearch。
执行以下命令,创建并切换至elastic-install-files目录。
mkdir elastic-install-filescd elastic-install-files
执行以下命令,下载Elasticsearch。
执行以下命令,安装Elasticsearch。
启用身份验证和授权,包括一个内置的elastic超级用户账户。
会为传输层和HTTP层生成TLS(传输层安全协议)的证书和密钥,并且使用这些密钥和证书启用和配置TLS。
将安装命令的终端输出复制到本地文件。尤其是elastic超级用户账户的密码。
执行以下命令,使Elasticsearch开机自动启动。
sudo systemctl daemon-reloadsudo systemctl enable elasticsearch.service
打开sudo vim /etc/elasticsearch/elasticsearch.yml配置文件,配置如下信息。
# ---------------------------------- Cluster -----------------------------------cluster.name: elasticsearch-demo # 在多节点的Elasticsearch集群中,所有的Elasticsearch实例都需要有相同的名称。# ---------------------------------- Network -----------------------------------network.host: 192.168.1.4 #云服务器ECS-Elasticsearch的IP地址http.port: 9200#----------------------- BEGIN SECURITY AUTO CONFIGURATION -----------------------transport.host: 0.0.0.0 #0.0.0.0这个设置可使Elasticsearch监听所有可用网络接口上的连接。您也通过设置此值以匹配为network.host设置的值来限制监听范围。
执行以下命令,启动Elasticsearch。
如果有需要,您可以通过运行“sudo systemctl stop elasticsearch.service”来停止该服务。
确保Elasticsearch正在正常运行。
执行以下命令,查看Elasticsearch的状态。
步骤三:安装Kibana
登录云服务器ECS-Kibana。
执行以下命令,并创建并切换到kibana-install-files目录。
mkdir kibana-install-filescd kibana-install-files
执行以下命令,下载Kibana安装包。
执行以下命令,安装Kibana。
切换至云服务器ECS-Elasticsearch,执行以下命令,生成Kibana连接Elasticsearch时需要输入的令牌。
从命令输出中复制生成的注册令牌。
执行以下两个命令,使Kibana开机自动启动。
sudo systemctl daemon-reloadsudo systemctl enable kibana.service
打开sudo vim /etc/kibana/kibana.yml 配置文件,配置如下信息:
#=================== System: Kibana Server ===================server.port: 5601server.host: "192.168.1.5" #ECS-Kibana的IP地址
执行以下命令,启动Kibana服务:
如果有需要,你可以通过运行“sudo systemctl stop kibana.service”来停止该服务。
执行以下命令,查看Kibana状态。
在本地电脑的浏览器,输入http://<kibana的公网IP>:5601。
输入前文在云服务器ECS-Elasticsearch生成的令牌,并单击“Configure Elastic”按钮。
若无法连接,请您检查云服务器ECS-Kibana所在安全组的入方向是否放通协议TCP、网段为0.0.0.0/0、端口为5601的流量。
云服务器ECS-Elasticsearch生成的令牌30分钟内未使用就会过期,若已过期,请重新生成。
输入验证码。
输入用户名和密码,用户名为“elastic”,密码为Elasticsearch安装时终端输出的elastic超级用户账户的密码,本文示例为_Nf0kK+rP3_2=9qVLRp7。
单击 “Log in”按钮,登录成功。
步骤四:安装Filebeat
登录云服务器ECS-TrafficMirrorTarget。
执行以下命令,并创建并切换到Filebeat-install-files目录。
mkdir Filebeat-install-filescd Filebeat-install-files
执行以下命令,下载和解压Filebeat安装包。
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.17.2-linux-x86_64.tar.gztar -xzvf filebeat-8.17.2-linux-x86_64.tar.gz
切换到云服务器ECS-Elasticsearch,执行以下命令,获取filebeat.yml文件中的ca_trusted_fingerprint值。
切换到云服务器ECS-TrafficMirrorTarget,进入Filebeat的安装包目录,打开filebeat.yml文件,配置Elasticsearch和Kibana的连接信息。
# =================================== Kibana ===================================setup.kibana:host: "192.168.1.5:5601" #设置为kibana的IP地址username: "elastic"password: "_Nf0kK+rP3_2=9qVLRp7" #本文设置为elasticsearch的注册密码# ---------------------------- Elasticsearch Output ----------------------------output.elasticsearch:hosts: ["192.168.1.4:9200"] #设置为elasticsearch的IP地址protocol: "https" # 设置为HTTPSusername: "elastic"password: "_Nf0kK+rP3_2=9qVLRp7" #设置为elasticsearch的注册密码ssl:enabled: trueca_trusted_fingerprint: "A1F5C46689D24ADEB7CE84D76206BC52A8730D21A880CE3350C5B20ADC2027D3"# ca_trusted_fingerprint的值:在云服务器ECS-Elasticsearch,执行命令【openssl x509 -fingerprint -sha256 -noout -in /etc/elasticsearch/certs/http_ca.crt 】,将输入的结果[xx:xx:xx:xx]去掉冒号
执行以下命令,查看filebeat可用的模块,确认suricata是否可用。
执行以下命令,启用suricata模块。
切换至modules.d目录,打开suricata.yml文件,配置如下信息。
- module: suricataeve:enabled: truevar.paths: ["/var/log/suricata/eve*"] #该路径为suricata的日志路径。
切换至安装Filebeat二进制文件的目录,并运行Filebeat。
cd .../filebeat test config -e
执行以下命令,设置assets。预计需要3分钟,请耐心等待。
执行如下命令,启动Filebeat。
sudo chown root filebeat.ymlsudo chown root modules.d/suricata.ymlsudo ./filebeat -e
验证
在本地电脑的浏览器中输入http://<kibana的公网IP>:5601。
输入账号密码。
在左侧导航树,选择“Discover”,按需输入命令进行分析。