Thật không may là nếu như mod_cloudflare cài đặt trên máy chủ web backend, sẽ không nhận diện chuẩn được IP thực của client và việc bảo vệ sẽ không hiệu quả.
Để khắc phục điều này, Bạn có thể sử dụng CSF (Config Server Firewall) cài đặt trên máy chủ FrontEnd tự động chạy script để thực hiện điều này.
Nếu chưa biết cài đặt CSF, hãy tham khảo ngay bài viết: Chống DDOS cho server bằng CSF
Cách thực hiện:
Đơn giản nhất là mỗi khi IP được đưa vào Firewall qua LFD (Login Failure Daemon), CSF sẽ chạy script và gửi nó đến CloudFlare thông qua API của CloudFlare.
Đưới đây là Script viết bằng shell trên linux để thực hiện việc này. Lưu nó dưới tên: block_report.sh
#!/bin/bash
ip=$(printf "%q" $1)
no=$(printf "%q" $6)
curl -X POST "https://api.cloudflare.com/client/v4/user/firewall/access_rules/rules" -H "X-Auth-Email: YOU@YOUREMAIL.COM" -H "X-Auth-Key: YOURCLOUDFLAREAUTHCODE" -H "Content-Type: application/json" --data '{"mode":"block","configuration":{"target":"ip","value":"'$ip'"},"notes":"fromcsflfd"}'
chmod +x /my-script-path/block_report.shThay YOU@YOUREMAIL.COM bằng email của bạn trên CloudFlare. Thay YOURCLOUDFLAREAUTHCODE bằng Auth Code của bạn trên CloudFlare->Account->Setting
Tiêp theo mở file CSF config:
/etc/csf/csf.conf
Tìm đến phần BLOCK REPORT và đặt script:# Block Reporting. lfd can run an external script when it performs and IP
# address block following for example a login failure. The following setting
# is to the full path of the external script which must be executable. See
# readme.txt for format details
#
# Leave this setting blank to disable
BLOCK_REPORT = "/my-script-path/block_report.sh"
Tiếp theo cần khởi động lại CSF và LFD để các thay đổi được áp dụng.Xem thêm: Hướng dẫn cài đặt Wordpress trên Centos 7
Không có nhận xét nào:
Đăng nhận xét