[Rsyslog] [LAB] [Cơ bản] [Phần 1] Hướng dẫn cấu hình Log tập trung trên Linux

30/12/2020

Log tập trung là quá trình tập trung, thu thập, phân tích… các log cần thiết từ nhiều nguồn khác nhau về một nơi an toàn để thuận lợi cho việc phân tích, theo dõi hệ thống. Ở bài viết này mình sẽ hướng dẫn cấu hình rsyslog để chuyển tiếp log đến máy chủ log tập trung.

Mô hình:

IP Planning:

Triển khai

Cấu hình Rsyslog Server:

Bước 1: Chỉnh sửa trong file cấu hình /etc/rsyslog.conf của máy chủ Syslog-server để nó có thể nhận các bản tin log từ các client gửi về.

Bỏ comment 2 dòng sau: bạn có thể lựa chọn sử dụng UDP hoặc TCP để cho phép server nhận các bản tin log thông qua giao thức UDP. Mặc định syslog sử dụng port 514 để gửi và nhận thông tin log. Ở đây mình sử dụng UDP.

Để máy chủ log tạo thành các thư mục lưu riêng log đối với từng máy Client gửi về thêm dòng này vào cuối file cấu hình:

  • Cách 1: Thư mục lưu log client trả về sẽ là Ip-client
$template RemoteServer, "/var/log/%fromhost-ip%/%SYSLOGFACILITY-TEXT%.log" *.* ?RemoteServer
  • Cách 2: Thư mục lưu log client trả về sẽ là tên máy client
$template RemoteServer, "/var/log/%HOSTNAME%/%SYSLOGFACILITY-TEXT%.log" *.* ?RemoteServer

Ngoài ra bạn có thể sử dụng cấu hình sau để lưu các file log với tên các chương trình:

$template TmplAuth,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log" #hostname *.*     ?TmplAuth $template TmplAuth,"/var/log/%fromhost-ip%/%PROGRAMNAME%.log" #ip-server *.*     ?TmplAuth

Ở đây mình sẽ sử dụng cách 1. Với cú pháp này, các tệp cập nhật sẽ được nhóm theo Ip-client gửi log và sau đó theo cơ sở syslog (kern, user, auth, v.v.)

Bước 2: Mở port 514
firewall-cmd --permanent --add-port=514/udp firewall-cmd --permanent --add-port=514/tcp firewall-cmd --reload
Bước 3: Khởi động lại Rsyslog-server của bạn và đảm bảo rằng nó hiện đang lắng nghe trên cổng 514 cho UDP hoặc TCP
[root@vqmanh ~]# systemctl restart rsyslog [root@vqmanh ~]# netstat -una | grep 514 udp        0      0 0.0.0.0:514             0.0.0.0:* udp6       0      0 :::514                  :::*

Nếu bạn sử dụng TCP có thể sử dụng lệnh:

netstat -tna | grep 514

Đây là cấu trúc thư mục ở phía máy chủ:

Cấu hình Rsyslog Client

Lưu ý trên client cũng phải truyền đúng với giao thức như trên server:

  • *.* @IPserver:514 : Đối với giao thức UDP
  • *.* @@IPserver:514 : Đối với giao thức TCP

VD:

  • *.* @66.0.0.199:514
  • *.* @@66.0.0.199:514
Đối với client CentOS7

Bước 1: Khai báo IP của Rsyslog-server (dưới mục Rule)

[root@client01 ~]# vi /etc/rsyslog.conf

Bước 2: Restart service Rsyslog

systemctl restart rsyslog
Đối với client Ubuntu

Bước 1: Khai báo IP của Rsyslog-server

[root@client02 ~]# vi /etc/rsyslog.d/50-default.conf 

Bước 2: Restart service Rsyslog

systemctl restart rsyslog

Sau khi restart rsyslog, các bạn có thể đứng trên Rsyslog Server dùng tcpdump để bắt và kiểm chứng các gói tin từ 2 client gửi về.

Như các bạn đã thấy, các log messages như daemon, syslog,authpriv,.. sẽ được đẩy từ client về server qua port 514

Sau đó, đứng trên Rsyslog-server kiểm tra thư mục đẩy về trên /var/log

Thư mục 127.0.0.1 là thư mục chứa file log tại local. Xuất hiện thêm 2 thư mục chứa log của 2 client đẩy về. Trên mỗi thư mục sẽ chứa những file log dựa trên cơ sở sinh ra log. VD: trên thư mục 66.0.0.200

Tham khảo: https://onet.com.vn/tag/log/

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

Kết nối máy chủ bằng SSH trên Ubuntu

Để có thể điều khiển từ xa một máy chủ, người ta thường sử dụng giao thức SSH. Bài viết...
30/12/2020

[Apache Tomcat] Làm thế nào để chạy ở cổng 80

Bài viết này sẽ hướng dẫn cho bạn vài cách để có thể thay đổi cổng khi chạy apache tomcat,...
30/12/2020

Hướng dẫn cài đặt LEMP stack trên CentOS 8

LEMP là một nhóm các phần mềm có thể dùng để phục vụ các web động được viết bằng PHP. LEMP...
30/12/2020
Bài Viết

Bài Viết Mới Cập Nhật

SỰ KHÁC BIỆT GIỮA RESIDENTIAL PROXY VÀ PROXY DATACENTER
17/02/2024

Mua Proxy v6 US Private chạy PRE, Face, Insta, Gmail
07/01/2024

Mua shadowsocks và hướng dẫn sữ dụng trên window
05/01/2024

Tại sao Proxy Socks lại được ưa chuộng hơn Proxy HTTP?
04/01/2024

Mua thuê proxy v4 nuôi zalo chất lượng cao, kinh nghiệm tránh quét tài khoản zalo
02/01/2024