[Graylog] [LAB] [Phần 2] Thu thập log của Linux thông qua graylog sidecar

30/12/2020

Ở bài trước ta đã cấu hình Graylog 3.1 trên CentOS 7, ở bài này mình sẽ hướng dẫn cấu hình thu thập log CentOS 7 sử dụng Collector Sidecar.

Graylog Sidecar là 1 input có khả năng quản lý cấu hình phía client để thu thập log. Graylog Sidecar hỗ trợ cả window lẫn linux. Sidecar nhận chỉ thị từ Graylog server để cấu hình việc đẩy log, còn để có thể đẩy log từ client về server có thể dùng filebeat hoặc nxlog.

1 . Mô hình

Mô hình lab được triển khai như sau:

Mô hình ip phanning được triển khai như sau:

2 . Cài đặt

2.1 Thiết lập môi trường :

  • Thực hiện update và cài đặt gói bổ trợ :
yum install -y epel-release yum update -y yum install -y git wget curl byobu yum install -y pwgen
  • Thiết lập hostname
hostnamectl set-hostname client01 echo  "127.0.0.1 localhost client01" > /etc/hosts echo  "10.10.34.102 client01" >> /etc/hosts
  • Tắt selinux
sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config setenforce 0
  • Khởi động lại hệ thống
reboot

2.2 Cài đặt NTP

Ở bài trước ta đã tiến hành cài đặt NTP cho Client01 rồi nên bước này ta không cần cài nữa. Chỉ cần kiểm tra thời gian trên hệ thống đã đúng chưa :

[root@client01 ~]# timedatectl       Local time: Fri 2019-12-27 17:21:58 +07   Universal time: Fri 2019-12-27 10:21:58 UTC         RTC time: Fri 2019-12-27 10:21:59        Time zone: Asia/Ho_Chi_Minh (+07, +0700)      NTP enabled: yes NTP synchronized: yes  RTC in local TZ: no       DST active: n/a

2.3 Cài đặt Sidecar và filebeat

2.3.1 Cài đặt File Beats

Để thu thập log, cần phải kết hợp với thành phần collector là filebeat hoặc NXlog. Trong hướng dẫn này, mình sẽ sử dụng thành phần collector là filebeat.

  • Để cài filebeat, ta vào link sau đây để tìm và tải về phiên bản hệ điều hành thích hợp, ở đây mình sử dụng CentOS 7 nên mình sẽ tải về phiên bản sau :
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-7.4.2-x86_64.rpm
  • Cài đặt filebeat :
rpm -i filebeat-7.4.2-x86_64.rpm

2.3.2 Cài đặt graylog -sidecar

Đối với graylog 3, ta sẽ dùng bản graylog-sidecar 1.x trở lên. Có thể tham khảo các bản cài graylog-sidecar ở đây , để chọn phiên bản phù hợp với hệ điều hành của máy.

  • Tiến hành tải về phiên bản phù hợp với hệ điều hành :
wget https://github.com/Graylog2/collector-sidecar/releases/download/1.0.2/graylog-sidecar-1.0.2-1.x86_64.rpm
  • Kiểm tra thư mục đã tải về :
[root@client01 ~]# ls anaconda-ks.cfg  graylog-sidecar-1.0.2-1.x86_64.rpm
  • Cài đặt file graylog-sidecar :
rpm -i graylog-sidecar-1.0.2-1.x86_64.rpm graylog-sidecar -service install
  • Trước khi cấu hình sidecar, ta cần đăng nhập vào Web interface của graylog-server để tạo và lấy TOKEN :

Vào web interface của graylog, truy cập tab System/Sidecars, sau đó chọn Create or reuse a token for the graylog-sidecar user :

  • Tiếp theo nhập tên và chọn Create Token để tạo token :
  • Sau đó copy mã token để sử dụng cho việc cấu hình graylog-sidecar :

Mã token sẽ có dạng như sau :

157vjbs3t175upg3id65gb6k2nhj0v8k2k17j51g057ed8h9rl4

Quay lại máy graylog-sidecar (client01) để chỉnh sửa file config, các thao tác sửa đổi sẽ được thự hiện ở file /etc/graylog/sidecar/sidecar.yml :

  • Khai báo ip của graylog-server :
sed -i 's|#server_url: "http://127.0.0.1:9000/api/"|server_url: "http://10.10.34.101:9000/api/"|' /etc/graylog/sidecar/sidecar.yml
  • Thay giá trị api_token bằng chuỗi token đã tạo trước đó :
sed -i 's|server_api_token: ""|server_api_token: "157vjbs3t175upg3id65gb6k2nhj0v8k2k17j51g057ed8h9rl4"|' /etc/graylog/sidecar/sidecar.yml
  • Sửa đổi và bỏ comment 1 số dòng để graylog-sidecar hoạt động :
sed -i 's|#log_path: "/var/log/graylog-sidecar"|log_path: "/var/log/graylog-sidecar"|' /etc/graylog/sidecar/sidecar.yml sed -i 's|#tls_skip_verify: false|tls_skip_verify: true|' /etc/graylog/sidecar/sidecar.yml sed -i 's|#node_name: ""|node_name: "client01"|' /etc/graylog/sidecar/sidecar.yml
  • Tiến hành khởi động dịch vụ graylog-sidecar :
systemctl start graylog-sidecar.service systemctl enable graylog-sidecar.service

2.4 Cấu hình sidecar trên Web interface của graylog-server .

2.4.1 Khai báo input cho sidecar

  • Để graylog-server biết nơi cần nhận log, ta cần khai báo input cho graylog-server :

Truy cập System/Inputs chọn input là Beats và bấm Launch new input :

  • Có thể tham khảo edit input như sau :
  • Sau khi chỉnh sửa input, ta bấm save để lưu lại cấu hình .
  • Sau khi tạo, input sẽ có dạng như sau :

2.4.2 Cấu hình sidecars

  • Truy cập vào System/Sidecars chọn Configuration sau đó chọn Create Configuration :
  • Khai báo các thông số và sửa địa chỉ ip thành địa chỉ của Graylog-server như sau :
  • Chọn tab Overview sau đó chọn Manage sidecar.
  • Tích chọn filebeat và chọn cấu hình configuration mới tạo.
  • Chọn Confim để tiếp tục .

2.4.3 Kiểm tra kết quả

  • Trên web interface của server, vào tab Search.
  • Trên máy client01, tiến hành đăng nhập vào ssh để tạo log ssh, sau đó quay trở lại để kiểm tra log nhận được :

Ta thấy ở đây, khi đăng nhập sai password với user là hungnv đã có log trả về.

Chúc các bạn thành công !

ONET IDC thành lập vào năm 2012, là công ty chuyên nghiệp tại Việt Nam trong lĩnh vực cung cấp dịch vụ Hosting, VPS, máy chủ vật lý, dịch vụ Firewall Anti DDoS, SSL… Với 10 năm xây dựng và phát triển, ứng dụng nhiều công nghệ hiện đại, ONET IDC đã giúp hàng ngàn khách hàng tin tưởng lựa chọn, mang lại sự ổn định tuyệt đối cho website của khách hàng để thúc đẩy việc kinh doanh đạt được hiệu quả và thành công.
Bài viết liên quan

Vimrc Tutorial

In this article, we’re going to dive deep into the vimrc file of Vim. Once you’re inside the vimscript, it’s easy...
29/12/2020

Install XFCE on OpenSUSE

Among all the desktop environments out there, XFCE is truly a magnificent one. It’s visually appealing, intuitive and...
29/12/2020

Hướng dẫn cài đặt MariaDB-10.x trên Ubuntu-18.04

MariaDB là một nhánh của MySQL, là một hệ quản trị cơ sở dữ liệu rất phổ biến ngày nay....
30/12/2020