117.info
人生若只如初见

如何在CentOS上安全地部署Filebeat

在CentOS上安全地部署Filebeat涉及多个步骤,包括安装、配置、安全设置和监控。以下是一个详细的指南:

1. 安装Filebeat

首先,确保你的CentOS系统已经更新到最新版本:

sudo yum update -y

然后,添加Elastic的官方YUM仓库:

sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch
echo "[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md" | sudo tee -a /etc/yum.repos.d/elasticsearch.repo

接下来,安装Filebeat:

sudo yum install filebeat -y

2. 配置Filebeat

编辑Filebeat的配置文件 /etc/filebeat/filebeat.yml

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/*.log
  fields:
    type: syslog

output.elasticsearch:
  hosts: ["localhost:9200"]
  ssl.verification_mode: certificate
  ssl.certificate_authorities: ["/etc/pki/tls/certs/ca-bundle.crt"]
  ssl.certificate: "/etc/pki/tls/certs/filebeat.crt"
  ssl.key: "/etc/pki/tls/private/filebeat.key"

setup.template.enabled: false
setup.kibana:
  host: "localhost:5601"

3. 配置SSL/TLS

为了确保数据传输的安全性,你需要为Filebeat和Elasticsearch配置SSL/TLS。

生成证书

使用OpenSSL生成自签名证书:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/pki/tls/private/filebeat.key -out /etc/pki/tls/certs/filebeat.crt -subj "/CN=filebeat/O=example.com"
sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/pki/tls/private/elasticsearch.key -out /etc/pki/tls/certs/elasticsearch.crt -subj "/CN=elasticsearch/O=example.com"
sudo openssl req -new -x509 -days 365 -nodes -keyout /etc/pki/tls/certs/ca-bundle.crt -out /etc/pki/tls/certs/ca-bundle.crt -subj "/CN=ca/O=example.com"

配置Elasticsearch

编辑Elasticsearch的配置文件 /etc/elasticsearch/elasticsearch.yml,添加以下内容:

xpack.security.enabled: true
xpack.security.transport.ssl.enabled: true
xpack.security.transport.ssl.verification_mode: certificate
xpack.security.transport.ssl.keystore.path: elastic-certificates.p12
xpack.security.transport.ssl.truststore.path: elastic-certificates.p12

xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.keystore.path: elastic-certificates.p12
xpack.security.http.ssl.truststore.path: elastic-certificates.p12

然后,重启Elasticsearch:

sudo systemctl restart elasticsearch

配置Filebeat

确保Filebeat的配置文件中包含了SSL/TLS相关的设置,如上文所示。

4. 启动和启用Filebeat服务

启动Filebeat服务并设置为开机自启:

sudo systemctl start filebeat
sudo systemctl enable filebeat

5. 监控和日志

确保你有一个监控系统来跟踪Filebeat的状态和性能。你可以使用Elastic Stack(包括Kibana)来监控和分析日志数据。

安装和配置Kibana

如果你还没有安装Kibana,可以按照以下步骤进行安装:

sudo yum install kibana -y

编辑Kibana的配置文件 /etc/kibana/kibana.yml,确保它指向正确的Elasticsearch实例:

server.host: "0.0.0.0"
elasticsearch.hosts: ["https://localhost:9200"]

然后,启动Kibana服务并设置为开机自启:

sudo systemctl start kibana
sudo systemctl enable kibana

现在,你应该能够通过浏览器访问 http://your_server_ip:5601 来使用Kibana。

6. 安全加固

  • 防火墙设置:确保只允许必要的端口(如9200和5601)对外开放。

    sudo firewall-cmd --permanent --zone=public --add-port=9200/tcp
    sudo firewall-cmd --permanent --zone=public --add-port=5601/tcp
    sudo firewall-cmd --reload
    
  • SELinux设置:如果你启用了SELinux,可能需要调整相关策略以允许Filebeat和Elasticsearch的正常运行。

通过以上步骤,你应该能够在CentOS上安全地部署Filebeat,并确保数据传输的安全性。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fe1f3AzsKCAZeA1M.html

推荐文章

  • CentOS readdir在实际应用中的案例分析

    readdir 是一个在 Linux 系统中用于读取目录内容的函数,它在 CentOS 系统中同样适用。以下是一个使用 readdir 的实际应用案例分析:
    案例背景
    假设我...

  • CentOS Java应用部署流程解析

    在CentOS系统上部署Java应用的流程可以分为以下几个主要步骤:
    1. 安装JDK 更新系统软件包:确保系统软件包是最新的。sudo yum update -y 安装JDK:使用yum...

  • MongoDB日志文件如何配置

    在MongoDB中,日志文件的配置可以通过修改配置文件或启动命令行参数来实现。以下是两种方法的详细说明:
    方法一:修改配置文件 打开MongoDB的配置文件。默认...

  • CentOS Python依赖库怎么安装

    在CentOS上安装Python依赖库,通常需要使用pip这个包管理工具。以下是详细的步骤:
    1. 安装Python和pip
    首先,确保你的系统上已经安装了Python和pip。...

  • 如何使用SFTP进行目录同步

    使用SFTP(Secure File Transfer Protocol)进行目录同步可以通过多种方法实现,以下是几种常见的方法:
    方法一:使用rsync命令
    rsync是一个非常强大的...

  • 如何在centos上配置weblogic

    在CentOS上配置WebLogic服务器的步骤如下:
    准备工作 安装JDK: 确保服务器上已经安装了JDK。WebLogic需要JDK支持。
    可以参考之前的博客或官方文档来安...

  • readdir在Debian中的兼容性问题

    在Debian系统中,readdir函数通常是兼容的,它用于列出指定目录中的所有文件和子目录名。然而,可能会遇到一些情况导致兼容性问题,例如: 文件系统限制:某些特...

  • ubuntu怎样触发日志记录

    在Ubuntu系统中,日志记录通常是由系统服务和应用程序自动完成的。但是,如果你想要手动触发某些日志记录,可以采用以下方法: 使用logger命令:
    logger命令...