Cách thiết lập Fail2Ban trên CentOS

Giới thiệu về Fail2Ban

Theo mặc định, một máy khách kết nối với SSH bằng cổng 22. Vì đây là cổng nổi tiếng, nên cấu hình mặc định dễ bị tấn công bởi nhiều cuộc tấn công vũ phu. Fail2Ban là một giải pháp để tự động bảo vệ máy chủ khỏi các cuộc tấn công này. Chương trình chạy ở chế độ nền, quét các tệp nhật ký để phát hiện IP nào đang tấn công và tự động cấm chúng truy cập SSH.

Cài đặt Fail2Ban

Trong hướng dẫn này, chúng tôi sẽ cài đặt Fail2Ban trên CentOS 6 thông qua kho EPEL. Chạy các lệnh sau.

yum install epel-release
yum install fail2ban

Giải trình

  • yum install epel-release: Cài đặt kho EPEL (Gói bổ sung cho Enterprise Linux).
  • yum install fail2ban: Cài đặt Fail2Ban từ kho EPEL.

Định cấu hình cài đặt Fail2Ban

Mở tệp cấu hình Fail2Ban.

nano /etc/fail2ban/jail.conf

Trong tệp, bạn sẽ thấy một số tham số như hiển thị bên dưới. Điều chỉnh bất kỳ giá trị nào theo nhu cầu của bạn.

[DEFAULT]

# "ignoreip" can be an IP address, a CIDR mask or a DNS host. Fail2ban will not
# ban a host which matches an address in this list. Several addresses can be
# defined using space separator.
ignoreip = 127.0.0.1

# "bantime" is the number of seconds that a host is banned.
bantime = 600

# A host is banned if it has generated "maxretry" during the last "findtime"
# seconds.
findtime = 600

# "maxretry" is the number of failures before a host get banned.
maxretry = 3

Giải trình

  • ignoreip: Đừng cấm các máy chủ phù hợp với một địa chỉ trong danh sách này. Một số địa chỉ có thể được xác định bằng cách sử dụng dấu phân cách không gian. Viết IP cá nhân của bạn trên dòng này.
  • bantime: Số giây mà máy chủ bị cấm.
  • findtime: Một máy chủ bị cấm nếu nó được tạo maxretrytrong thời gian qua findtime.
  • maxretry: Số lần thất bại trước khi máy chủ bị cấm.

Định cấu hình Fail2Ban để bảo vệ SSH

Đầu tiên, chúng ta cần tạo một tập tin cấu hình.

nano /etc/fail2ban/jail.local

Sao chép các dòng dưới đây và dán vào tập tin.

[ssh-iptables]

enabled  = true
filter   = sshd
action   = iptables[name=SSH, port=ssh, protocol=tcp]
#           sendmail-whois[name=SSH, dest=root, [email protected]]
logpath  = /var/log/secure
maxretry = 5
  • enabled: Kích hoạt bảo vệ. Nếu bạn muốn tắt nó, thay đổi giá trị thành false.
  • filter: Theo mặc định, nó được đặt thành sshd để chỉ tệp /etc/fail2ban/filter.d/sshd.conf.
  • action: Fail2Ban sẽ cấm IP khớp với bộ lọc /etc/fail2ban/action.d/iptables.conf. Nếu trước đây bạn đã thay đổi cổng SSH, hãy đổi port=sshsang cổng mới port=2222. Nếu bạn đang sử dụng cổng 22, bạn sẽ không cần thay đổi giá trị.
  • logpath: Đường dẫn của tệp nhật ký được sử dụng bởi Fail2Ban.
  • maxretry: Số lần đăng nhập thất bại tối đa.

Bắt đầu dịch vụ Fail2Ban

Chạy hai lệnh dưới đây để bắt đầu dịch vụ Fail2Ban:

chkconfig --level 23 fail2ban on
service fail2ban start

Cuối cùng, kiểm tra iptablesxem nó có các quy tắc được thêm bởi Fail2Ban không.

iptables -L

Kết quả sẽ trông tương tự như đầu ra này.

Chain INPUT (policy ACCEPT)
target prot opt source destination
f2b-SSH tcp -- anywhere anywhere tcp dpt:EtherNet/IP-1

Chain FORWARD (policy ACCEPT)
target prot opt source destination

Chain OUTPUT (policy ACCEPT)
target prot opt source destination

Chain f2b-SSH (1 references)
target prot opt source destination
RETURN all -- anywhere anywhere

Cách theo dõi các lần đăng nhập thất bại

Bạn có thể sử dụng lệnh này để kiểm tra xem máy chủ của bạn có bị lỗi đăng nhập không (các cuộc tấn công có thể xảy ra).

cat /var/log/secure | grep 'Failed password'

Kết quả sẽ trông tương tự như những dòng này.

Dec  6 22:47:12 vultr sshd[7942]: Failed password for root from 43.229.53.67 port 23021 ssh2
Dec  6 22:47:15 vultr sshd[7944]: Failed password for root from 43.229.53.67 port 40996 ssh2
Dec  6 22:47:16 vultr sshd[7944]: Failed password for root from 43.229.53.67 port 40996 ssh2
Dec  6 22:47:18 vultr sshd[7944]: Failed password for root from 43.229.53.67 port 40996 ssh2
Dec  6 22:47:31 vultr sshd[7948]: Failed password for root from 43.229.53.67 port 29907 ssh2
Dec  6 22:47:34 vultr sshd[7948]: Failed password for root from 43.229.53.67 port 29907 ssh2
Dec  6 22:47:36 vultr sshd[7948]: Failed password for root from 43.229.53.67 port 29907 ssh2
Dec  6 22:47:39 vultr sshd[7950]: Failed password for root from 43.229.53.67 port 48386 ssh2
Dec  6 22:47:41 vultr sshd[7950]: Failed password for root from 43.229.53.67 port 48386 ssh2
Dec  6 22:47:43 vultr sshd[7950]: Failed password for root from 43.229.53.67 port 48386 ssh2
Dec  6 22:47:47 vultr sshd[7952]: Failed password for root from 43.229.53.67 port 62846 ssh2
Dec  6 22:47:49 vultr sshd[7952]: Failed password for root from 43.229.53.67 port 62846 ssh2

Để xem IP nào đã bị cấm, hãy sử dụng lệnh sau.

iptables -L -n

Để xóa địa chỉ IP khỏi danh sách bị cấm, hãy chạy lệnh sau. Thay đổi banned_ipIP mà bạn muốn unban.

iptables -D f2b-SSH -s banned_ip -j DROP


Leave a Comment

Cách cài đặt SuiteCRM trên Ubuntu 16.04

Cách cài đặt SuiteCRM trên Ubuntu 16.04

Hướng dẫn cài đặt SuiteCRM, một giải pháp CRM mã nguồn mở, trên Ubuntu 16.04 với các bước chi tiết và dễ hiểu.

ReactOS: Đây có phải là tương lai của Windows?

ReactOS: Đây có phải là tương lai của Windows?

ReactOS, một hệ điều hành mã nguồn mở và miễn phí đã có phiên bản mới nhất. Liệu nó có thể đáp ứng đủ nhu cầu của người dùng Windows hiện đại và hạ gục Microsoft? Hãy cùng tìm hiểu thêm về trải nghiệm hệ điều hành kiểu cũ nhưng mới hơn này.

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Liệu AI có thể chiến đấu với số lượng các cuộc tấn công bằng Ransomware ngày càng tăng

Các cuộc tấn công ransomware đang gia tăng, nhưng liệu AI có thể giúp đối phó với loại virus máy tính mới nhất? AI có phải là câu trả lời? Đọc ở đây biết là AI boone hay cấm

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Luôn kết nối thông qua Ứng dụng WhatsApp Desktop 24 * 7

Whatsapp cuối cùng đã ra mắt ứng dụng Máy tính để bàn cho người dùng Mac và Windows. Giờ đây, bạn có thể truy cập Whatsapp từ Windows hoặc Mac một cách dễ dàng. Có sẵn cho Windows 8+ và Mac OS 10.9+

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Làm thế nào AI có thể đưa quá trình tự động hóa lên cấp độ tiếp theo?

Hãy đọc phần này để biết Trí tuệ nhân tạo đang trở nên phổ biến như thế nào đối với các công ty quy mô nhỏ và làm thế nào nó đang tăng khả năng khiến họ phát triển và giúp đối thủ cạnh tranh của họ có thể cạnh tranh.

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Bản cập nhật bổ sung macOS Catalina 10.15.4 đang gây ra nhiều vấn đề hơn là giải quyết

Gần đây Apple đã phát hành macOS Catalina 10.15.4 một bản cập nhật bổ sung để khắc phục các sự cố nhưng có vẻ như bản cập nhật đang gây ra nhiều vấn đề hơn dẫn đến việc máy mac bị chai. Đọc bài viết này để tìm hiểu thêm

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

13 Công cụ trích xuất dữ liệu thương mại của Dữ liệu lớn

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Hệ thống tệp nhật ký là gì và nó hoạt động như thế nào?

Máy tính của chúng tôi lưu trữ tất cả dữ liệu một cách có tổ chức được gọi là hệ thống tệp Ghi nhật ký. Đây là một phương pháp hiệu quả cho phép máy tính tìm kiếm và hiển thị các tệp ngay khi bạn nhấn tìm kiếm. Https://wethegeek.com/? P = 94116 & preview = true

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Điểm kỳ dị về công nghệ: Tương lai xa của nền văn minh nhân loại?

Khi Khoa học phát triển với tốc độ nhanh chóng, chiếm rất nhiều nỗ lực của chúng ta, những rủi ro của việc phục tùng bản thân trước một Điểm kỳ dị không thể giải thích cũng tăng lên. Hãy đọc, điểm kỳ dị có thể có ý nghĩa gì đối với chúng ta.

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1

Hiểu rõ hơn về 26 kỹ thuật phân tích dữ liệu lớn: Phần 1