温馨提示×

centos filebeat怎样设密码

小樊
38
2026-09-18 02:39:18
栏目: 智能运维

在 CentOS 上给 Filebeat 设置密码,通常指两种情况之一:

  1. Filebeat 连接 Elasticsearch / Logstash 时的认证密码
  2. Filebeat 自身配置文件的权限保护(不常见)

下面以最常见场景说明:Filebeat 向 Elasticsearch / Logstash 发送数据时使用用户名和密码。


一、Filebeat → Elasticsearch(带密码)

1. 安装 Filebeat(CentOS)

sudo yum install filebeat -y

2. 修改配置文件

编辑配置文件:

sudo vi /etc/filebeat/filebeat.yml

3. 配置 Elasticsearch 输出 + 密码

output.elasticsearch:
  hosts: ["https://es-host:9200"]
  username: "filebeat_user"
  password: "your_password"

如果是 HTTPS + 证书:

output.elasticsearch:
  hosts: ["https://es-host:9200"]
  username: "filebeat_user"
  password: "your_password"
  ssl.certificate_authorities: ["/etc/filebeat/certs/ca.crt"]

4. 测试配置

sudo filebeat test output

5. 启动 Filebeat

sudo systemctl enable filebeat
sudo systemctl start filebeat

二、Filebeat → Logstash(带密码)

filebeat.yml

output.logstash:
  hosts: ["logstash-host:5044"]
  username: "filebeat"
  password: "your_password"

⚠️ Logstash 需要配置 input { beats { } } 并启用 ssl + user 认证(通常配合 Elasticsearch X-Pack)


三、使用 Elasticsearch Keystore(推荐,更安全)

不要明文写密码

sudo filebeat keystore create
sudo filebeat keystore add ES_PASSWORD

然后在 filebeat.yml 中:

output.elasticsearch:
  hosts: ["https://es-host:9200"]
  username: "filebeat_user"
  password: "${ES_PASSWORD}"

四、如果是 Kibana 中创建 Filebeat 用户

# Elasticsearch 中创建角色和用户
bin/elasticsearch-users useradd filebeat_user -p password -r filebeat_writer

或者在 Kibana → Stack Management → Users 创建。


五、常见问题

1. 报 401 未授权

  • 用户名/密码错误
  • 用户没有 filebeat-* 写权限

2. 报证书错误

  • 缺少 ca.crt
  • ES 使用了自签证书

如果你说的是 “CentOS 系统用户给 filebeat 设密码” 或 “filebeat 配置文件加密”,可以告诉我具体场景,我给你对应方案。

0 踩