0

Làm thế nào để bật xpack.security và thiết lập tài khoản, mật khẩu cho Elasticsearch?

Việc kích hoạt xpack.security yêu cầu thực hiện theo đúng thứ tự để tránh lỗi từ chối truy cập trên toàn bộ hệ thống. Từ phiên bản Elasticsearch 8.0 trở đi, tính năng bảo mật đã được bật mặc định. Nếu bạn đang dùng bản 7.x hoặc đã tắt tính năng này trước đó, hãy làm theo quy trình sau:

**1.Chỉnh sửa file elasticsearch.yml:**Yêu cầu quyền root hoặc admin.

Mở tệp cấu hình elasticsearch.yml và thêm dòng khai báo sau vào cuối file để bật module bảo mật:

YAML

xpack.security.enabled: true

Lưu ý: Nếu bạn đang thiết lập một cụm (cluster) gồm nhiều node, bạn bắt buộc phải bật thêm SSL cho lớp giao tiếp nội bộ giữa các node:

YAML

xpack.security.transport.ssl.enabled: true

**2.Khởi động lại dịch vụ Elasticsearch:**Dịch vụ sẽ gián đoạn.

Để áp dụng cấu hình mới, bạn cần khởi động lại tiến trình Elasticsearch. Trên các hệ thống Linux sử dụng systemd:

Bash

sudo systemctl restart elasticsearch

**3.Khởi tạo mật khẩu cho các tài khoản mặc định:**Chạy công cụ setup-passwords.

Mở terminal, di chuyển đến thư mục bin của Elasticsearch (thường nằm ở /usr/share/elasticsearch/bin/ trên Linux) và chạy công cụ tạo mật khẩu. Chế độ interactive cho phép bạn tự gõ mật khẩu theo ý muốn:

Bash

./elasticsearch-setup-passwords interactive

Hệ thống sẽ yêu cầu bạn nhập mật khẩu lần lượt cho các tài khoản cốt lõi:

  • elastic: Tài khoản quản trị viên tối cao (superuser).

  • kibana_system: Tài khoản để Kibana giao tiếp với Elasticsearch.

  • logstash_system, beats_system, apm_system, remote_monitoring_user: Các tài khoản dành cho hệ sinh thái Elastic Stack.

(Nếu muốn hệ thống tự động sinh ra chuỗi mật khẩu ngẫu nhiên cho an toàn, hãy thay interactive bằng auto và nhớ lưu lại output).

**4.Kiểm tra trạng thái xác thực:**Xác thực qua API.

Sử dụng lệnh curl để gọi vào API của Elasticsearch bằng tài khoản elastic vừa tạo để xem hệ thống đã nhận diện thông tin đăng nhập hay chưa:

Bash

curl -X GET "http://localhost:9200/" -u elastic:mat_khau_cua_ban

Nếu màn hình trả về chuỗi JSON chứa thông tin node và dòng "tagline" : "You Know, for Search", bạn đã thiết lập thành công.


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.