Ở 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ọnConfiguration
sau đó chọnCreate 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 !