Fail2ban cho phép ngăn chặn các cuộc tấn công vào dịch vụ SSH, tổng đài (VoIP), Web,Databases,…
Dù không đảm bảo là an toàn tuyệt đối nhưng khi bị tấn công và phát hiện sớm thì sẽ phương án ứng phó kịp thời để không ảnh hưởng đến dịch vụ và hệ thống.
Cài đặt Fail2ban
Trên CentOS
- Đảm bảo hệ thống của bạn được cập nhật
- Cài đặt Fail2ban
- Cài đặt sendmail nếu muốn cảnh báo qua Email
- Kích hoạt và start Fail2ban
Nếu start gặp lỗi “no directory /var/run/fail2ban to contain the socket file /var/run/fail2ban/fail2ban.sock” thì gõ lệnh sau:
Trên Debian
- Cập nhật server
- Cài đặt Fail2ban
- Cài đặt sendmail nếu cần
- Kích hoạt và start Fail2ban
Cấu hình Fail2ban
Fail2ban sẽ đọc các cấu hình trong file .conf trước. Sau đó là các cấu hình trong file .local, các cấu hình này sẽ ghi đè những cấu hình có trước nó. Do đó tất cả các cấu hình mới thường được ghi vào file .local để không ảnh hưởng bởi các conf khác.
Thư mục chứa file cấu hình:
Cấu hình file fail2ban.local
- fail2ban.conf
Là file chứa cấu hình mặc định. Các thiết lập mặc định sẽ cung cấp cho bạn một thiết lập làm việc hợp lý. Nếu bạn muốn thực hiện bất kỳ thay đổi nào, tốt nhất là thực hiện nó trong một tệp riêng biệt fail2ban.local, nó sẽ ghi đè fail2ban.conf. Copy file fail2ban.conf thành fail2ban.local và bắt đầu cấu hình.
- fail2ban.local
Từ đây, bạn có thể chọn chỉnh sửa các định nghĩa fail2ban.local để phù hợp với cấu hình mong muốn của bạn. Các giá trị có thể được thay đổi là:
- loglevel: Mức độ chi tiết mà nhật ký của Fail2ban cung cấp có thể được đặt thành 1 (error), 2 (warn), 3 (info), or 4 (debug).
- logtarget: Ghi nhật ký hành động vào một tệp cụ thể. Giá trị mặc định của file log là /var/log/fail2ban.log. Bạn có thể thay đổi giá trị thành:
- STDOUT: xuất bất kỳ dữ liệu nào
- STDERR: xuất bất kỳ lỗi nào
- SYSLOG: ghi nhật ký dựa trên tin nhắn
- FILE: xuất ra tệp
- socket: Vị trí của tệp socket.
- pidfile: Vị trí của tệp PID.
Cấu hình file jail.local
- jail.conf
Là file chứa các cấu hình mặc định cho phép bật fail2ban cho dịch vụ SSH trên Debian, Ubuntu không có trên CentOS. Để thay đổi, thêm các cấu hình ta sao chép ra file jail.local để cấu hình
- jail.local
Nếu bạn đang sử dụng CentOS hoặc Fedora bạn cần chuyển config backend từ auto thành system. Nếu dùng Debian, Ubuntu thì không cần.
Để bật fail2ban cho SSH thay đổi config
Để thêm các cấu hình fail2ban cho các dịch vụ khác ta thực hiện thêm vào file jail.local. Ví dụ dưới đây là cấu hình fail2ban cho freeswitch.
[freeswitch]
enabled = true
port = 5060:5091
protocol = all
filter = freeswitch
logpath = /usr/local/freeswitch/log/freeswitch.log
action = iptables-allports[name=freeswitch, protocol=all]
maxretry = 5
findtime = 600
bantime = 3600
ignoreip =
Giải thích các cấu hình như sau:
- enabled : bật fail2ban cho dịch vụ này.
- port: cổng sẽ áp dụng.
- protocol: giao thức được áp dụng.
- filter: bộ lọc được áp dụng cho dịch vụ này (được đặt ở /etc/fail2ban/filter.d/).
- logpath: log dịch vụ được giám sát.
- action: hành động được áp dụng (được cấu hình ở /etc/fail2ban/action.d/).
- maxretry: số lần thử sai trong thời gian cho phép
- findtime: Khoảng thời gian giữa các lần thử đăng nhập trước khi lệnh cấm được đặt. Ví dụ: nếu Fail2ban được đặt để cấm IP sau năm (5) lần đăng nhập không thành công, 5 lần thử đó phải xảy ra trong findtime giới hạn 10 phút đã đặt . Các findtime giá trị phải là một số thiết lập của giây.
- bantime : Khoảng thời gian tính bằng giây mà IP bị cấm. Nếu được đặt thành số âm, lệnh cấm sẽ là vĩnh viễn. Giá trị mặc định 600 được đặt để cấm IP trong thời gian 10 phút.
- ignoreip: ip được bỏ qua, không áp dụng hành động. (Whitelist IP)
Whitelist IP
Danh sách trắng là các ip được phép truy cập vào server mà không bị giám sát và ngăn chặn khi có các hành động tấn công. Mọi hành động đều bị fail2ban bỏ qua với các IP nằm trong danh sách này.
Có thể cấu hình Whitelist cho tất cả dịch vụ hoặc từng dịch vụ:
Hoặc bạn có thể thêm nhanh vào Whitelist vào một dịch vụ bằng lệnh sau:
Thông báo qua email:
Để nhận email khi fail2ban được kích hoạt, hãy điều chỉnh cài đặt email:
- destemail: Địa chỉ email nơi bạn muốn nhận email.
- sendername: Tên mà theo đó email hiển thị.
- sender: Địa chỉ email mà Fail2ban sẽ gửi email.
Để kiểm tra xem sendmail đã hoạt động hay chưa ta dùng lệnh sau:
Sử dụng lệnh với fail2ban
Fail2ban cung cấp một lệnh fail2ban-clientcó thể được sử dụng để chạy Fail2ban từ dòng lệnh:
- start: Khởi động máy chủ Fail2ban
- reload: Tải lại tập tin cấu hình của Fail2ban.
- reload JAIL: Thay thế JAIL bằng tên của rule Fail2ban
- stop: Dừng fail2ban.
- status: Sẽ hiển thị trạng thái của máy chủ và kích hoạt
- status JAIL: Sẽ hiển thị trạng thái của nhà tù, bao gồm mọi IP hiện đang bị cấm.
Ví dụ: để kiểm tra Fail2Ban đang chạy:
Xem thêm về fail2ban: Wiki fail2ban
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile: 0902912888
⚡️ Skype: tranbinh48ca
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: http://bit.ly/ytb_binhoraclemaster
👨 Tiktok: https://www.tiktok.com/@binhoraclemaster?lang=vi
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhoracle
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội
=============================
học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,khóa học pl/sql, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, middleware, hoc solaris, hoc linux, hoc aix, unix, securecrt, xshell, mobaxterm, putty