Sunday, January 19, 2025

[CrowdSec] – Phần 3 -Triển khai CrowdSec bằng Docker Compose

-

1. CrowdSec là gì?

CrowdSec là một hệ thống bảo mật phân tán mã nguồn mở được phát triển để bảo vệ các hệ thống và ứng dụng khỏi các cuộc tấn công trực tuyến và các hành vi độc hại. Nó hoạt động bằng cách phân tích dữ liệu đăng nhập và lưu lượng mạng để nhận biết các hoạt động đáng ngờ hoặc có hại, sau đó thực hiện các biện pháp bảo mật để ngăn chặn hoặc đối phó với các mối đe dọa này.

2. Cài đặt CrowdSec bằng Docker sử dụng Docker Compose.

Bài viết này này giải thích cách tích hợp CrowdSec vào môi trường triển khai sử dụng Docker Compose. Nó thiết lập nhiều container với các vai trò cụ thể:

  • app: Một máy chủ Apache phục vụ file “index.html” chứa một nội dung là “Hello World”.
  • reverse-proxy: Máy chủ Nginx phục vụ cho container “app”.
  • crowdsec: Container này đọc logs từ container “reverse-proxy” thông qua một thư mục được chia sẻ.
  • dashboard: Sử dụng Metabase để hiển thị dữ liệu từ cơ sở dữ liệu CrowdSec.

Dưới đây là cách thực hiện trong ví dụ này:

Chia sẻ Thư mục để Thu Thập Logs:

Ví dụ này sử dụng phương pháp đơn giản để thu thập logs bằng cách chia sẻ thư mục giữa các container. Logs của container “reverse-proxy” được chia sẻ với container “crowdsec”.

Trong môi trường prod, bạn có thể sử dụng driver ghi logs như rsyslog để tập trung logs. Bạn cần điều chỉnh cấu hình Docker Compose của CrowdSec để đọc logs từ driver bạn chọn.

Yêu Cầu Tiên Quyết:

Bạn cần phải cài đặt Docker và Docker Compose trên hệ thống của bạn để chạy cấu hình này.

Thông tin đăng nhập Metabase:

Thông tin đăng nhập mặc định cho Metabase được cung cấp với email là “crowdsec@crowdsec.net” và mật khẩu là “!!Cr0wdS3c_M3t4b4s3??”.

Lưu ý quan trọng là ví dụ này cung cấp một cài đặt cơ bản cho mục đích thử nghiệm. Trong môi trường prod bạn cần xem xét các yếu tố bổ sung như bảo mật, khả năng mở rộng và quản lý thông tin nhạy cảm.

Hãy nhớ rằng cấu hình và chi tiết tích hợp cụ thể có thể thay đổi dựa trên trường hợp sử dụng cụ thể của bạn và các công cụ bạn đang sử dụng. Luôn đảm bảo bạn tuân theo các phương pháp tốt nhất và điều chỉnh cài đặt theo yêu cầu của môi trường của bạn.

Để triển khai Crowdsec bằng Docker Compose hãy tải source về từ repo trên Github.

$ git clone https://github.com/crowdsecurity/example-docker-compose.git
Cloning into 'example-docker-compose'...
remote: Enumerating objects: 30, done.
remote: Counting objects: 100% (30/30), done.
remote: Compressing objects: 100% (23/23), done.
remote: Total 30 (delta 8), reused 17 (delta 2), pack-reused 0
Unpacking objects: 100% (30/30), 147.00 KiB | 1.51 MiB/s, done.

Di chuyển vào thư mục repo vừa tải về.

cd example-docker-compose/

Sử dụng docker-compose up -d để triển khai nó.

docker-compose up -d

Kết quả sau khi triển khai xong.

$ docker-compose ps -a
NAME                                     COMMAND                  SERVICE             STATUS              PORTS
example-docker-compose-app-1             "httpd-foreground"       app                 running             80/tcp
example-docker-compose-crowdsec-1        "/bin/sh -c '/bin/ba…"   crowdsec            running
example-docker-compose-dashboard-1       "/app/run_metabase.sh"   dashboard           running             0.0.0.0:3000->3000/tcp, :::3000->3000/tcp
example-docker-compose-reverse-proxy-1   "/docker-entrypoint.…"   reverse-proxy       running             0.0.0.0:8000->80/tcp, :::8000->80/tcp

Dùng trình duyệt truy cập vào http://<ipaddress_crowdsec>:3000 sử dụng username và password theo thông tin ở trên.

Kết quả.

LEAVE A REPLY

Please enter your comment!
Please enter your name here

4,956FansLike
256FollowersFollow
223SubscribersSubscribe
spot_img

Related Stories