Lỗi này xảy ra vì Elasticsearch yêu cầu cấu hình SSL trên HTTP layer khi bạn cố gắng tạo token đăng ký (enrollment token) cho Kibana. Để giải quyết vấn đề này, bạn cần phải cài đặt và cấu hình SSL trên Elasticsearch. Quá trình này yêu cầu cấu hình một keystore để lưu chứng chỉ SSL.
Dưới đây là hướng dẫn từng bước để cấu hình SSL trên Elasticsearch:
Bước 1: Tạo keystore và chứng chỉ SSL Tạo keystore và certificate authority (CA): Sử dụng lệnh elasticsearch-certutil để tạo keystore và CA:
bin/elasticsearch-certutil ca
Lệnh này sẽ tạo một file elastic-stack-ca.p12 để sử dụng làm CA cho các chứng chỉ.
Tạo cặp chứng chỉ cho node Elasticsearch: Sau khi tạo CA, bạn cần tạo một keystore với các chứng chỉ SSL cho Elasticsearch node:
bin/elasticsearch-certutil cert --ca elastic-stack-ca.p12
Lệnh này sẽ tạo ra một file elastic-certificates.p12, đây là keystore bạn cần cấu hình trong Elasticsearch.
Bước 2: Cấu hình Elasticsearch để sử dụng SSL Sao chép keystore vào thư mục cấu hình của Elasticsearch:
cp elastic-certificates.p12 /path/to/elasticsearch/config/
Cập nhật file elasticsearch.yml để cấu hình keystore và SSL: Mở file elasticsearch.yml và thêm các cấu hình sau:
xpack.security.enabled: true
xpack.security.http.ssl.enabled: true
xpack.security.http.ssl.keystore.path: "elastic-certificates.p12"
xpack.security.http.ssl.truststore.path: "elastic-certificates.p12"
chmod 660 /path/to/elasticsearch/config/elastic-certificates.p12
chown elasticsearch:elasticsearch /path/to/elasticsearch/config/elastic-certificates.p12
Khởi động lại Elasticsearch: Sau khi đã cập nhật các cấu hình và thiết lập keystore, khởi động lại Elasticsearch để áp dụng thay đổi.
sudo systemctl restart elasticsearch
Bước 3: Tạo Enrollment Token cho Kibana Sau khi SSL được cấu hình thành công, bạn có thể tạo token cho Kibana bằng lệnh:
bin/elasticsearch-create-enrollment-token -s kibana
Nếu mọi thứ đã được cấu hình đúng cách, bạn sẽ nhận được token để đăng ký Kibana.