NỘI DUNG

Hosting tốc độ cao Vietnix - tốc độ tải trang trung bình dưới 1 giây
VPS siêu tốc Vietnix - trải nghiệm mượt mà, ổn định
15/06/2023
Lượt xem

Hướng dẫn cài đặt SIEM với Suricata và Elastic Stack trên Ubuntu 20.04

15/06/2023
24 phút đọc
Lượt xem

Đánh giá

5/5 - (117 bình chọn)

Trong bài viết này, bạn sẽ khám phá cách tích hợp Suricata với Elasticsearch, Kibana và Filebeat để có thể tạo ra công cụ Security Information and Event Management (SIEM) của riêng bạn. Đây là công cụ cực hữu ích cho quá trình bảo mật dữ liệu cho mạng và máy chủ của bạn. Cùng Vietnix tìm hiểu về cách cài đặt SIEM với Suricata và Elastic Stack trên Ubuntu 20.04 ngay.

Giới thiệu về SIEM

Các công cụ SIEM được sử dụng để thu thập, tổng hợp, lưu trữ và phân tích dữ liệu các sự kiện nhằm tìm kiếm các mối đe dọa bảo mật và hoạt động đáng ngờ ở trong mạng và server của bạn.

Giới thiệu về SIEM
Giới thiệu về SIEM

Các thành phần mà bạn sẽ sử dụng để xây dựng công cụ SIEM là:

  • Elasticsearch để lưu trữ, lập chỉ mục, thể hiện tương quan dữ liệu và tìm kiếm các sự kiện bảo mật đến từ máy chủ Suricata của bạn.
  • Kibana để hiển thị và điều hướng xung quanh nhật ký sự kiện bảo mật được lưu trữ trong Elasticsearch.
  • Filebeat để phân tích file nhật ký eve.json của Suricata và gửi từng sự kiện tới Elasticsearch để xử lý.
  • Suricata giúp quét lưu lượng mạng để tìm kiếm các sự kiện đáng ngờ và ghi nhật ký hoặc loại bỏ các gói không hợp lệ.

Trong bài viết này, bạn sẽ được hướng dẫn cách xây dựng hệ thống SIEM với Suricata và Elastic Stack trên Ubuntu 20.04.

Điều kiện để cài đặt SIEM với Suricata và Elastic Stack trên Ubuntu 20.04

Để thực hiện theo bài hướng dẫn này, bạn cần đáp ứng những điều kiện sau:

  • Suricata chạy trên Ubuntu server 20.04. Server này sẽ là server Suricata của bạn (Hướng dẫn chi tiết về cách cài đặt Suricata trên Ubuntu 20.04 tại đây).
  • Bạn sẽ cần tải và cấu hình một số Suricata signature để tạo cảnh báo hoặc giảm lưu lượng truy cập.
  • Một server thứ hai để lưu trữ Elasticsearch và Kibana. Đây sẽ là server Elasticsearch của bạn, với 4GB RAM và 2 CPU được thiết lập với user non-root có quyền sudo.
  • Cả hai server cần phải giao tiếp bằng địa chỉ IP riêng. Bạn có thể dùng VPN (như WireGuard) để kết nối các server hoặc sử dụng dịch vụ của các nhà cung cấp thứ 3. Ngoài ra, bạn cũng có thể chọn chạy Elasticsearch, Kibana, Filebeat và Suricata trên cùng một server để thử nghiệm.

Và cuối cùng, nếu bạn muốn đảm bảo tính ổn định và độ tin cậy của hệ thống, VPS (Virtual Private Server) là lựa chọn tốt nhất cho những điều này. Việc sử dụng VPS sẽ cung cấp cho hệ thống một môi trường ổn định, đáp ứng đầy đủ những yêu cầu của phần mềm, đồng thời giảm thiểu rủi ro về bảo mật và tiết kiệm chi phí so với việc sử dụng server riêng.

Vietnix hiện đang cung cấp đa dạng các gói VPS với nhiều tính năng, mức giá; giúp bạn dễ dàng chọn được gói dịch vụ phù hợp với nhu cầu và ngân sách của bạn gồm: VPS Giá Rẻ, VPS Phổ Thông, VPS Cao Cấp, VPS NVMe và VPS GPU.

Bên cạnh đó, Vietnix thực hiện trợ kỹ thuật 24/7 để đảm bảo hệ thống của bạn luôn hoạt động ổn định và tin cậy. Với VPS Vietnix, bạn hoàn toàn yên tâm về tính ổn định và độ bảo mật cho hệ thống của mình.

Hãy tham khảo ngay các gói dịch vụ VPS của Vietnix để lựa chọn cho mình một giải pháp tốt nhất.

Bước 1: Cài đặt Elasticsearch và Kibana

Bước đầu tiên là cài đặt Elasticsearch và Kibana trên Elasticsearch server của bạn. Để bắt đầu, hãy thêm khóa GPG Elastic vào server của bạn bằng lệnh sau:

curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

Tiếp theo, thêm danh sách Elastic source vào thư mục sources.list.d, nơi apt sẽ tìm kiếm các source mới:

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

Bây giờ hãy cập nhật package index của server, sau đó cài đặt Elasticsearch và Kibana:

sudo apt update
sudo apt install elasticsearch kibana

Khi bạn đã cài đặt xong các gói, hãy tìm và ghi lại địa chỉ IP riêng của server bằng cách sử dụng lệnh ip address show:

ip -brief address show

Bạn sẽ nhận được output như sau:

Output
lo               UNKNOWN        127.0.0.1/8 ::1/128
eth0             UP                  159.89.122.115/20 10.20.0.8/16 2604:a880:cad:d0::e56:8001/64 fe80::b832:69ff:fe46:7e5d/64
eth1             UP                  10.137.0.5/16 fe80::b883:5bff:fe19:43f3/64

Interface của mạng riêng trong output là thiết bị eth1 đã được đánh dấu, với địa chỉ IPv4 10.137.0.5/16. Tên thiết bị và địa chỉ IP của bạn sẽ khác so với bài này. Tuy nhiên, địa chỉ IP sẽ được chia như sau:

  • 10.0.0.0 tới 10.255.255.255 (10/8 prefix)
  • 172.16.0.0 tới 172.31.255.255 (172.16/12 prefix)
  • 192.168.0.0 tới 192.168.255.255 (192.168/16 prefix)

Ghi lại địa chỉ private IP cho Elasticsearch server của bạn (trong trường hợp này là 10.137.0.5). Địa chỉ này sẽ được gọi là your_private_ip. Bạn cũng nên lưu ý tên của network interface, trong trường hợp này là eth1. Trong phần tiếp theo, bạn sẽ cấu hình Elasticsearch và Kibana để lắng nghe các kết nối trên địa chỉ private IP đến từ Suricata server của bạn.

Bước 2: Cấu hình Elasticsearch

Theo mặc định, Elasticsearch được cấu hình để chỉ chấp nhận các kết nối local. Ngoài ra, không có bất kỳ xác thực nào được bật, vì vậy các công cụ như Filebeat sẽ không thể gửi log tới. Vì vậy ở phần này, bạn sẽ tiến hành cài đặt mạng cho Elasticsearch và sau đó kích hoạt module bảo mật xpack tích hợp trên Elasticsearch để giải quyết tình trạng này.

Cấu hình mạng cho Elasticsearch

Vì Elasticsearch và Suricata server là riêng biệt nên bạn sẽ cần cấu hình Elasticsearch để lắng nghe các kết nối trên network interface. Bạn cũng sẽ cần cấu hình các rule cho tường lửa để cho phép truy cập vào Elasticsearch trên network interface.

Sử dụng nano hoặc trình chỉnh sửa khác để mở /etc/elasticsearch/elasticsearch.yml:

sudo nano /etc/elasticsearch/elasticsearch.yml

Tìm dòng #network.host: 192.168.0.1 ở giữa các dòng 50–60 và thêm một dòng mới sau đó để cấu hình cài đặt network.bind_host:

# By default Elasticsearch is only accessible on localhost. Set a different
# address here to expose this node on the network:
#
#network.host: 192.168.0.1
network.bind_host: ["127.0.0.1", "your_private_ip"]
#
# By default Elasticsearch listens for HTTP traffic on the first free port it
# finds starting at 9200. Set a specific HTTP port here:

Thay thế IP private của bạn vào địa chỉ your_private_ip. Dòng này sẽ đảm bảo rằng Elasticsearch vẫn khả dụng trên địa chỉ local của chính nó và cho phép Kibana có thể truy cập vào đó và vào địa chỉ IP server của bạn.

Tiếp theo, đi đến cuối file bằng phím tắt trong nanoCTRL+v.

Thêm các dòng sau vào cuối tệp:

. . .
discovery.type: single-node
xpack.security.enabled: true

Cài đặt discovery.type sẽ cho phép Elasticsearch chạy dưới dạng một node. Còn cài đặt xpack.security.enabled sẽ bật một số tính năng bảo mật có trong Elasticsearch.

Lưu và đóng tệp khi bạn chỉnh sửa xong. Nếu đang sử dụng nano, bạn có thể dùng tổ hợp phím CTRL+X, sau đó YENTER để xác nhận.

Cuối cùng, thêm các quy tắc tường lửa để đảm bảo máy chủ Elasticsearch có thể truy cập được trên private network interface. Nếu như bạn đạt đủ điều kiện và đang sử dụng Uncomplicated Firewall (ufw), hãy chạy các lệnh sau:

sudo ufw allow in on eth1
sudo ufw allow out on eth1

Thay thế private network interface của bạn vào thông số eth1.

Tiếp theo, bạn sẽ khởi động Elasticsearch daemon và sau đó cấu hình mật khẩu để sử dụng với module bảo mật xpack.

Khởi động Elasticsearch

Sau khi đã định cấu hình mạng và cài đặt bảo mật xpack cho Elasticsearch, bạn cần khởi động nó lên để các thay đổi có hiệu lực.

Chạy lệnh systemctl để bắt đầu Elasticsearch:

sudo systemctl start elasticsearch.service

Ở bước tiếp theo, bạn có thể tạo mật khẩu cho người dùng mặc định được tích hợp sẵn trong Elasticsearch.

Thiết lập mật khẩu cho Elasticsearch

Một tiện ích trong thư mục /usr/share/elasticsearch/bin của Elasticsearch có thể tự động tạo mật khẩu ngẫu nhiên cho những user mặc định. Bạn chạy lệnh sau để cd vào thư mục và tạo mật khẩu:

cd /usr/share/elasticsearch/bin
sudo ./elasticsearch-setup-passwords auto

Bạn sẽ nhận được output như sau. Khi được nhắc tiếp tục, nhấn y rồi nhấn RETURN hoặc ENTER:

Initiating the setup of passwords for reserved users elastic,apm_system,kibana,kibana_system,logstash_system,beats_system,remote_monitoring_user.
The passwords will be randomly generated and printed to the console.
Please confirm that you would like to continue [y/N]y


Changed password for user apm_system
PASSWORD apm_system = eWqzd0asAmxZ0gcJpOvn

Changed password for user kibana_system
PASSWORD kibana_system = 1HLVxfqZMd7aFQS6Uabl

Changed password for user kibana
PASSWORD kibana = 1HLVxfqZMd7aFQS6Uabl

Changed password for user logstash_system
PASSWORD logstash_system = wUjY59H91WGvGaN8uFLc

Changed password for user beats_system
PASSWORD beats_system = 2p81hIdAzWKknhzA992m

Changed password for user remote_monitoring_user
PASSWORD remote_monitoring_user = 85HF85Fl6cPslJlA8wPG

Changed password for user elastic
PASSWORD elastic = 6kNbsxQGYZ2EQJiqJpgl

Bạn sẽ không thể chạy lại tiện ích, vì vậy hãy đảm bảo ghi lại những mật khẩu này ở một nơi an toàn. Mật khẩu của người dùng kibana_systemelastic sẽ được sử dụng trong phần tiếp theo của hướng dẫn này.

Bước 3: Cấu hình Kibana

Trong phần trước của hướng dẫn này, bạn đã định cấu hình Elasticsearch để lắng nghe các kết nối trên địa chỉ IP riêng của Elasticsearch server. Bạn sẽ cần thực hiện tương tự với Kibana để Filebeats trên Suricata server của bạn có thể truy cập được.

Bật tính năng xpack.security trong Kibana

Để bắt đầu cài đặt bảo mật xpack trong Kibana, bạn cần tạo một số khóa mã hóa. Kibana sử dụng các khóa này để lưu trữ dữ liệu của session (như cookie), cũng như những bảng điều khiển và chế độ xem dữ liệu trong Elasticsearch.

Bạn có thể tạo các khóa mã hóa cần thiết bằng tiện ích kibana-encryption-keys có trong thư mục /usr/share/kibana/bin. Chạy code sau để cd vào thư mục và tạo khóa:

cd /usr/share/kibana/bin/
sudo ./kibana-encryption-keys generate -q

Cờ -q ở cuối đoạn code giúp bạn nhận được output như sau:

Output
xpack.encryptedSavedObjects.encryptionKey: 66fbd85ceb3cba51c0e939fb2526f585
xpack.reporting.encryptionKey: 9358f4bc7189ae0ade1b8deeec7f38ef
xpack.security.encryptionKey: 8f847a594e4a813c4187fa93c884e92b

Sao chép output của bạn vào nơi an toàn. Bây giờ, bạn sẽ thêm chúng vào file cấu hình /etc/kibana/kibana.yml của Kibana.

Mở file bằng nano hoặc trình chỉnh sửa ưa thích của bạn:

sudo nano /etc/kibana/kibana.yml

Đi đến cuối tệp bằng phím tắt trong nano bằng cách CTRL+v. Dán ba dòng xpack mà bạn đã sao chép vào cuối tệp:

. . .

# Specifies locale to be used for all localizable strings, dates and number formats.
# Supported languages are the following: English - en , by default , Chinese - zh-CN .
#i18n.locale: "en"

xpack.encryptedSavedObjects.encryptionKey: 66fbd85ceb3cba51c0e939fb2526f585
xpack.reporting.encryptionKey: 9358f4bc7189ae0ade1b8deeec7f38ef
xpack.security.encryptionKey: 8f847a594e4a813c4187fa93c884e92b

Tiếp tục mở tệp và chuyển sang phần tiếp theo – nơi bạn sẽ cấu hình cài đặt network cho Kibana.

Cấu hình mạng cho Kibana

Để cấu hình mạng Kibana sao cho khả dụng trên địa chỉ IP private của máy chủ Elasticsearch thì bạn cần tìm dòng #server.host: "localhost" đã được comment trong /etc/kibana/kibana.yml. Dòng này thường nằm gần đầu tệp. Thêm một dòng mới sau địa chỉ IP private:

# Kibana is served by a back end server. This setting specifies the port to use.
#server.port: 5601

# Specifies the address to which the Kibana server will bind. IP addresses and host names are both valid values.
# The default is 'localhost', which usually means remote machines will not be able to connect.
# To allow connections from remote users, set this parameter to a non-loopback address.
#server.host: "localhost"
server.host: "your_private_ip"

Thay thế IP private của bạn cho địa chỉ your_private_ip.

Lưu và đóng tệp khi chỉnh sửa xong. Nếu đang sử dụng nano, bạn có thể thực hiện lệnh CTRL+X, sau đó YENTER để xác nhận.

Tiếp theo, bạn sẽ cần cấu hình tên người dùng và mật khẩu mà Kibana sử dụng để kết nối với Elasticsearch.

Thiết lập thông tin đăng nhập cho Kibana

Có hai cách để đặt tên người dùng và mật khẩu mà Kibana sử dụng để xác thực với Elasticsearch. Đầu tiên là chỉnh sửa tệp cấu hình /etc/kibana/kibana.yml và thêm các giá trị vào đó. Phương pháp thứ hai là lưu trữ các giá trị trong kho khóa của Kibana (keystore). Đây là một file được xử lý đặc biệt giúp Kibana lưu trữ bí mật.

Bạn sẽ sử dụng phương pháp keystore trong hướng dẫn này để tránh chỉnh sửa trực tiếp tệp cấu hình của Kibana. Để thêm dữ liệu bí mật vào keystore bằng tiện ích kibana-keystore, trước tiên hãy cd vào thư mục /usr/share/kibana/bin. Tiếp theo, chạy lệnh dưới đây để đặt tên người dùng cho Kibana:

sudo ./kibana-keystore add elasticsearch.username

Bạn sẽ nhận được một prompt như sau:

Enter value for elasticsearch.username: *************

Nhập kibana_system khi được nhắc bằng cách sao chép và dán hoặc nhập tên người dùng thủ công. Mỗi ký tự bạn nhập sẽ được che dấu bằng dấu hoa thị *. Nhấn ENTER hoặc RETURN khi bạn nhập xong tên người dùng.

Bây giờ lặp lại lệnh tương tự cho mật khẩu. Đảm bảo sao chép mật khẩu cho người dùng kibana_system mà bạn đã tạo trong phần trước của hướng dẫn này. Ví dụ mật khẩu là 1HLVxfqZMd7aFQS6Uabl thì hãy chạy lệnh sau:

sudo ./kibana-keystore add elasticsearch.password

Khi được nhắc, hãy dán mật khẩu để tránh bất kỳ lỗi sao chép nào:

Enter value for elasticsearch.password: ********************

Khởi động Kibana

Bây giờ bạn đã cấu hình network, cài đặt bảo mật xpack cho Kibana, cũng như đã thêm thông tin xác thực vào keystore hoàn tất. Để toàn bộ những thay đổi này có hiệu lực thì việc khởi động Kibana là điều cần thiết. Chạy lệnh systemctl:

sudo systemctl start kibana.service

Khi Kibana khởi động xong, bạn có thể tiếp tục thực hiện cấu hình Filebeat trên máy chủ Suricata của mình để gửi nhật ký tới Elasticsearch.

Bước 4: Cài đặt Filebeat

Giờ đây, các quy trình Elasticsearch và Kibana của bạn đã được cấu hình với cài đặt xác thực và network chính xác. Bước tiếp theo bạn sẽ cần cài và thiết lập Filebeat trên máy chủ Suricata.

Để bắt đầu cài đặt Filebeat, thêm khóa elastic GPG vào máy chủ Suricata bằng lệnh sau:

curl -fsSL https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -

Tiếp theo, thêm danh sách nguồn của elastic vào thư mục sources.list.d, nơi apt sẽ tìm kiếm các nguồn mới:

echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list

Bây giờ hãy cập nhật package index của server và cài đặt gói Filebeat:

sudo apt update
sudo apt install filebeat

Tiếp theo, bạn sẽ cấu hình Filebeat để có thể kết nối với cả Elasticsearch và Kibana. Mở tệp cấu hình /etc/filebeat/filebeat.yml bằng nano hoặc trình chỉnh sửa ưa thích của bạn:

sudo nano /etc/filebeat/filebeat.yml

Tìm phần Kibana trong file ở vị trí xung quanh dòng thứ 100. Thêm một dòng sau dòng #host: "localhost:5601" để trỏ đến cổng và địa chỉ IP private của phiên bản Kibana:

. . .
# Starting with Beats version 6.0.0, the dashboards are loaded via the Kibana API.
# This requires a Kibana endpoint configuration.
setup.kibana:

  # Kibana Host
  # Scheme and port can be left out and will be set to the default (http and 5601)
  # In case you specify and additional path, the scheme is required: http://localhost:5601/path
  # IPv6 addresses should always be defined as: https://[2001:db8::1]:5601
  #host: "localhost:5601"
  host: "your_private_ip:5601"

. . .

Thay đổi này sẽ đảm bảo rằng Filebeat có thể kết nối với Kibana; đồng thời tạo các chỉ số SIEM, dashboard và quy trình xử lý pipeline trong Elasticsearch để xử lý Suricata log.

Tiếp theo, tìm phần Elasticsearch Output trong file ở vị trí xung quanh dòng 130. Sau đó chỉnh sửa cài đặt hosts, usernamepassword để khớp với các giá trị Elasticsearch server của bạn:

output.elasticsearch:
  # Array of hosts to connect to.
  hosts: ["your_private_ip:9200"]

  # Protocol - either `http` (default) or `https`.
  #protocol: "https"

  # Authentication credentials - either API key or username/password.
  #api_key: "id:api_key"
  username: "elastic"
  password: "6kNbsxQGYZ2EQJiqJpgl"

. . .

Thay thế địa chỉ IP private của Elasticsearch server trên dòng hosts tương ứng với giá trị your_private_ip. Bỏ comment ở dòng username và đặt thông số đấy thành elastic user. Thay đổi trường password từ changeme thành mật khẩu cho elastic user mà bạn đã tạo trong phần trước.

Lưu và đóng tệp khi bạn chỉnh sửa xong. Nếu đang sử dụng nano, bạn có thể dùng phím tắt CTRL+X, sau đó nhấn YENTER để xác nhận.

Tiếp theo, kích hoạt module Suricata tích hợp trên Filebeats bằng lệnh sau:

sudo filebeat modules enable suricata

Giờ đây, Filebeat đã được cấu hình để kết nối với cả Elasticsearch và Kibana cùng module Suricata được bật sẵn. Bước tiếp theo là tải dashboard SIEM và pipepline vào Elasticsearch.

Chạy lệnh filebeat setup. Bạn có thể mất vài phút để tải:

sudo filebeat setup

Khi lệnh kết thúc, bạn sẽ nhận được output như sau:

Output
Overwriting ILM policy is disabled. Set `setup.ilm.overwrite: true` for enabling.

Index setup finished.
Loading dashboards (Kibana must be running and reachable)
Loaded dashboards
Setting up ML using setup --machine-learning is going to be removed in 8.0.0. Please use the ML app instead.
See more: https://www.elastic.co/guide/en/machine-learning/current/index.html
It is not possible to load ML jobs into an Elasticsearch 8.0.0 or newer using the Beat.
Loaded machine learning job configurations
Loaded Ingest pipelines

Nếu không có lỗi, hãy sử dụng lệnh systemctl để khởi động. Filebeat sẽ bắt đầu gửi các sự kiện từ log eve.json của Suricata tới Elasticsearch sau khi khởi chạy.

sudo systemctl start filebeat.service

Bây giờ bạn đã cấu hình Filebeat, Kibana và Elasticsearch để xử lý Suricata log. Bước cuối cùng trong hướng dẫn này là kết nối với Kibana và khám phá dashboard của SIEM.

Bước 5: Điều hướng dashboard SIEM của Kibana

Kibana là thành phần đồ họa của Elastic stack. Bạn sẽ sử dụng Kibana kết hợp cùng trình duyệt để khám phá các event và dữ liệu cảnh báo trên Suricata. Vì các bước trên đã cấu hình Kibana chỉ khả dụng qua địa chỉ IP private của máy chủ Elasticsearch nên bạn sẽ cần sử dụng SSH tunnel để kết nối với Kibana.

Kết nối tới Kibana bằng SSH

SSH có một tùy chọn -L cho phép bạn chuyển tiếp lưu lượng mạng trên port nội bộ để kết nối với địa chỉ IP từ xa và port trên máy chủ. Bạn sẽ sử dụng tùy chọn này để chuyển tiếp lưu lượng truy cập từ trình duyệt đến phiên bản Kibana của mình.

Trên Linux, macOS và các phiên bản cập nhật của Windows 10 trở lên, bạn có thể sử dụng ứng dụng SSH client có sẵn để tạo tunnel mỗi khi muốn kết nối với Kibana. Kết nối này sẽ được phép đóng bất cứ lúc nào và sau đó chạy lại SSH để thiết lập lại tunnel.

Chạy lệnh sau trong terminal trên máy tính local để tạo SSH tunnel tới Kibana:

ssh -L 5601:your_private_ip:5601 sammy@203.0.113.5 -N

Các thông số trong lệnh trên bao gồm:

  • Cờ -L chuyển tiếp lưu lượng truy cập từ hệ thống nội bộ trên port 5601 đến máy remote server.
  • Phần your_private_ip:5601 của lệnh chỉ định dịch vụ trên máy chủ Elasticsearch – nơi lưu lượng truy cập của bạn sẽ được chuyển tiếp đến. Trong trường hợp này, dịch vụ đó là Kibana. Hãy thay thế địa chỉ IP private của máy chủ Elasticsearch vào trường your_private_ip.
  • 203.11.0.5 là địa chỉ IP public mà bạn sử dụng để kết nối và quản trị server của mình. Thay thế địa chỉ IP public của máy chủ Elasticsearch vào tương ứng.
  • Cờ -N hướng dẫn SSH không chạy lệnh như shell /bin/bash mà thay vào đó chỉ giữ kết nối mở. Cờ này thường được sử dụng khi chuyển tiếp các port như trong ví dụ này.

Nếu bạn muốn đóng tunnel bất cứ lúc nào, hãy nhấn CTRL+C. Trên Windows, terminal của bạn sẽ giống như ảnh chụp màn hình sau:

Lưu ý: Bạn có thể được nhắc nhập mật khẩu nếu không sử dụng khóa SSH. Nhập hoặc dán mật khẩu vào lời nhắc và nhấn ENTER hoặc RETURN.

Kibana port foward cho Windows
Kibana port foward cho Windows

Ở trên macOS và Linux thì terminal có dạng như sau:

Kibana port foward cho MacOS và Linux
Kibana port foward cho MacOS và Linux

Khi đã kết nối với máy chủ Elasticsearch qua SSH port forward, hãy mở trình duyệt của bạn và truy cập http://127.0.0.1:5601. Bạn sẽ được chuyển hướng đến trang đăng nhập của Kibana:

Trang đăng nhập Kibana
Trang đăng nhập Kibana

Nếu trình duyệt không thể kết nối với Kibana, bạn sẽ nhận được thông báo như sau trong terminal của mình:

Output
channel 3: open failed: connect failed: No route to host

Lỗi này cho biết rằng SSH tunnel không thể truy cập dịch vụ Kibana trên máy chủ của bạn. Hãy xem lại bạn đã chỉ định đúng địa chỉ IP private cho máy chủ Elasticsearch chưa và tải lại trang một lần nữa.

Tiếp theo, thực hiên đăng nhập vào máy chủ Kibana bằng cách sử dụng tên người dùng elastic và mật khẩu mà bạn đã sao chép trước đó.

Tra cứu dữ liệu tại dashboard SIEM Kibana

Sau khi đăng nhập vào Kibana, bạn có thể khám phá bảng điều khiển Suricata mà Filebeat đã cấu hình.

Trong trường tìm kiếm ở đầu trang Kibana Welcome, nhập cụm từ tìm kiếm type:dashboard suricata. Tìm kiếm này sẽ trả về hai kết quả: Bảng điều khiển Suricata Event và Suricata Alert theo ảnh chụp màn hình sau:

Bảng điều khiển tìm kiếm của Kibana
Bảng điều khiển tìm kiếm của Kibana

Nhấp vào kết quả [Filebeat Suricata] Events Overview để truy cập bảng điều khiển Kibana – nơi hiển thị tổng quan về tất cả các sự kiện Suricata đã ghi:

Các sự kiện Kibana đã ghi lại
Các sự kiện Kibana đã ghi lại

Để truy cập Suricata Alert dashboard, hãy lặp lại tìm kiếm hoặc nhấp vào liên kết Alert có trong bảng điều khiển Event. Trang của bạn sẽ giống như ảnh sau:

Kibana Alert
Kibana Alert

Nếu bạn muốn kiểm tra các sự kiện và cảnh báo mà mỗi trang dashboard hiển thị, hãy cuộn xuống cuối trang để xem xét. Bạn có thể mở rộng từng mục để xem log gốc từ Suricata và kiểm tra chi tiết các trường khác như: IP nguồn và đích của một cảnh báo, loại tấn công, ID chữ ký Suricata và các trường khác.

Kibana cũng có một bảng điều khiển Security tích hợp mà bạn có thể truy cập bằng menu ở bên trái cửa sổ trình duyệt. Điều hướng đến Network dashboard để biết tổng quan về các sự kiện được hiển thị trên bản đồ cũng như dữ liệu tổng hợp về các sự kiện trên mạng. Trang dashboard của bạn sẽ giống như hình sau:

Trang dữ liệu tổng hợp về các sự kiện trên mạng
Trang dữ liệu tổng hợp về các sự kiện trên mạng

Hãy cuộn xuống cuối Network dashboard để xem bảng liệt kê tất cả các sự kiện phù hợp với khung thời gian tìm kiếm đã chỉ định. Bạn cũng có thể kiểm tra chi tiết từng sự kiện hoặc chọn một sự kiện để tạo dòng thời gian Kibana. Chúng rất hữu ích điều tra các luồng lưu lượng truy cập, community IDs hoặc alert.

Vietnix với hơn 11 năm hoạt động đã đồng hành với hơn 50.000 khách hàng cá nhân và doanh nghiệp. Đến năm 2022 Vietnix vinh dự được nhận giải Thương hiệu Việt Nam xuất sắc. Đồng thời, với tỷ lệ 97% khách hàng sau khi sử dụng dịch vụ tại Vietnix đã giới thiệu đến bạn bè, đồng nghiệp cũng là một minh chứng cho chất lượng dịch vụ luôn đáp ứng được mọi nhu cầu của khách hàng.

Nhanh tay đăng ký Vietnix VPS ngay và trải nghiệm dịch vụ ổn định, tốc độ cao, hỗ trợ nhanh chóng với nhiều ưu đãi hấp dẫn nhất.

  • Địa chỉ: 265 Hồng Lạc, Phường 10, Quận Tân Bình, Thành Phố Hồ Chí Minh.
  • Hotline: 1800 1093
  • Email: sales@vietnix.com.vn

Lời kết

Trong bài viết này, bạn đã cài đặt và cấu hình Elasticsearch và Kibana trên một server độc lập. Bên cạnh đó là cấu hình xác thực Elasticsearch và Kibana bằng cách sử dụng module bảo mật xpack đi kèm với mỗi công cụ. Chúc bạn thực hiện thành công.

THEO DÕI VÀ CẬP NHẬT CHỦ ĐỀ BẠN QUAN TÂM

Đăng ký ngay để nhận những thông tin mới nhất từ blog của chúng tôi. Đừng bỏ lỡ cơ hội truy cập kiến thức và tin tức hàng ngày

Chọn chủ đề :

Hưng Nguyễn

Co-Founder
tại

Kết nối với mình qua

Kết nối với mình qua

Theo dõi
Thông báo của
guest
1 Comment
Cũ nhất
Mới nhất Được bỏ phiếu nhiều nhất
Phản hồi nội tuyến
Xem tất cả bình luận
Antony
Khách
Antony
1 năm trước

có cách cấu hình nào để trực quan hóa dữ liệu của Suricata hơn không ạ

Tăng tốc độ website - Nâng tầm giá trị thương hiệu

Banner group
Tăng tốc tải trang

95 điểm

Nâng cao trải nghiệm người dùng

Tăng 8% tỷ lệ chuyển đổi

Thúc đẩy SEO, Google Ads hiệu quả

Tăng tốc ngay

SẢN PHẨM NỔI BẬT

Black Friday Hosting & VPS

Chương trình bắt đầu sau

Giảm giá 40% hosting VPS

50 coupon mỗi ngày

Gia hạn giá không đổi

NHẬN DEAL NGAY
Pattern

7 NGÀY DÙNG THỬ HOSTING

NẮM BẮT CƠ HỘI, THÀNH CÔNG DẪN LỐI

Cùng trải nghiệm dịch vụ hosting tốc độ cao được hơn 100,000 khách hàng sử dụng

Icon
ĐĂNG KÝ NHẬN TÀI LIỆU THÀNH CÔNG
Cảm ơn bạn đã đăng ký nhận tài liệu mới nhất từ Vietnix!
ĐÓNG

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1

ĐĂNG KÝ DÙNG THỬ HOSTING

Asset

7 NGÀY MIỄN PHÍ

Asset 1
Icon
XÁC NHẬN ĐĂNG KÝ DÙNG THỬ THÀNH CÔNG
Cảm ơn bạn đã đăng ký thông tin thành công. Đội ngũ CSKH sẽ liên hệ trực tiếp để kích hoạt dịch vụ cho bạn nhanh nhất!
ĐÓNG