Fail2Ban은 서버에 대한 무차별 대입 공격을 격퇴하는 탁월한 옵션입니다.

실패한 2ban

서버에 대한 가장 일반적인 공격 벡터 중 하나는 무차별 대입 로그인 시도입니다. 공격자가 사용자 이름과 암호의 무한한 조합을 시도하여 서버에 액세스하려고 시도하는 곳입니다.

이런 종류의 문제 가장 빠르고 효과적인 솔루션은 시도 횟수를 제한하고 사용자 또는 해당 IP에 대한 액세스를 차단하는 것입니다. 특정 시간 동안. 이를 위해 이러한 유형의 공격을 방어하도록 특별히 설계된 오픈 소스 애플리케이션도 있다는 것을 아는 것도 중요합니다.

오늘의 포스트에서 Fail2Ban이라는 이름을 소개하겠습니다.. 2004 년 Cyril Jaquier가 처음 개발 한 Fail2Ban은 무차별 대입 공격으로부터 서버를 보호하는 침입 방지 소프트웨어 프레임 워크입니다.

Fail2ban 정보

Fail2ban은 로그 파일을 스캔합니다. (/ var / log / apache / error_log) 악의적 인 활동을 보여주는 IP를 금지합니다. 잘못된 비밀번호가 너무 많고 취약성 검색 등

일반적으로, Fail2Ban은 IP 주소를 거부하도록 방화벽 규칙을 업데이트하는 데 사용됩니다. 지정된 시간 동안 다른 임의의 작업 (예 : 이메일 보내기)도 구성 할 수 있습니다.

Linux에 Fail2Ban 설치

Fail2Ban은 주요 Linux 배포판의 대부분의 리포지토리에서 찾을 수 있으며 특히 CentOS, RHEL 및 Ubuntu와 같은 서버에서 가장 많이 사용되는 저장소에서 찾을 수 있습니다.

Ubuntu의 경우 설치를 위해 다음을 입력하십시오.

sudo apt-get update && sudo apt-get install -y fail2ban

Centos 및 RHEL의 경우 다음을 입력해야합니다.

yum install epel-release
yum install fail2ban fail2ban-systemd

SELinux가있는 경우 다음을 사용하여 정책을 업데이트하는 것이 중요합니다.

yum update -y selinux-policy*

이 작업이 완료되면 Fail2Ban 구성 파일이 / etc / fail2ban에 있음을 포 그라운드에서 알아야합니다.

구성 Fail2Ban은 주로 두 개의 주요 파일로 나뉩니다.; 이들은 fail2ban.conf 및 jail.conf입니다. fail2ban.confes는 다음과 같은 설정을 구성 할 수있는 더 큰 Fail2Ban 구성 파일을 저장합니다.

  • 로그 수준.
  • 로그인 할 파일입니다.
  • 프로세스 소켓 파일.
  • 파일 pid.

jail.conf는 다음과 같은 옵션을 구성하는 곳입니다.

  • 방어 할 서비스의 구성.
  • 공격을 받아야하는 경우 금지 할 기간입니다.
  • 보고서를 보낼 이메일 주소입니다.
  • 공격이 감지 될 때 취할 조치입니다.
  • SSH와 같은 미리 정의 된 설정 집합입니다.

구성

이제 구성 부분으로 이동하겠습니다. 가장 먼저 할 일은 jail.conf 파일의 백업 복사본입니다.

cp -pf /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

이제 nano로 편집을 진행합니다.

nano /etc/fail2ban/jail.local

내부에서 [Default] 섹션으로 이동하여 일부를 조정할 수 있습니다.

여기 "ingoreip"부분에는 생략 될 IP 주소가 있습니다. Fail2Ban은 기본적으로 서버의 IP (로컬 IP)이고 무시해야한다고 생각하는 다른 IP는 완전히 무시됩니다.

거기서부터 액세스에 실패한 다른 IP는 금지됩니다. 금지 될 시간 (기본적으로 3600 초)을 기다립니다. fail2ban은 6 회 실패한 후에 만 ​​작동합니다.

일반 구성 후 이제 서비스를 표시합니다. Fail2Ban에는 이미 다양한 서비스에 대해 미리 정의 된 필터가 있습니다. 그래서 약간의 적응을하십시오. 다음은 예입니다.

[ssh] enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 6

관련 변경 사항이 적용되면 마침내 Fail2Ban을 다시로드해야합니다.:

service fail2ban reload
systemctl enable firewalld
systemctl start firewalld

이 작업이 완료되면 Fail2Ban이 실행 중인지 빠르게 확인합니다.

sudo fail2ban-client status

IP 차단 해제

이제 IP를 성공적으로 차단 했으므로 IP 차단을 해제하려면 어떻게해야합니까? 이를 위해 아래 예제와 같이 fail2ban-client를 다시 사용하고 특정 IP를 차단 해제하도록 지시 할 수 있습니다.

sudo fail2ban-client set ssh unbanip xxx.xxx.xx.xx

여기서 "xxx…." 표시하는 IP 주소가됩니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.