티스토리 뷰

ssh, ftp, smtp 등 무작위로 로그인 시도를 할 경우 서비스를 보호하기 위하여 fail2ban 을 사용하여 접속을 차단합니다.

 

#yum install fail2ban-firewalld fail2ban-systemd

 

설치 후 설정 파일을 생성합니다.

 

#cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

 

jail.local 파일의 경우 jail.conf 설정의 내용 중 중복되는 부분을 overwrite 하는 역할을 합니다. 하지만 yum 등의 패키지 매니저를 통한 업데이트가 발생할 경우 conf 파일은 교체되니 복사하여 local 파일을 생성합니다. DEFAULT 에 기본 설정을 지정하고 적용하고자하는 서비스에 enabled = true 를 추가하면 됩니다.

 

[DEFAULT]
bantime = 3600 # 1시간 동안 차단
findtime = 600 # 10분 이내의 로그 데이터로 검사
maxretry = 5 # 5회 이상 로그인 실패시
backend = pooling
destemail = 이메일주소
mta = mail
banaction = firewallcmd-multiport
banaction_allports = firewallcmd-allports

[sshd]
enabled = true

[sshd-ddos]
enabled = true

[postfix]
enabled = true

[postfix-rbl]
enabled = true

[dovecot]
enabled = true

[postfix-sasl]
enabled = true


 

fail2ban 을 재실행하고 확인합니다.

 

#systemctl restart fail2ban
#fail2ban-client status

 

 


차단된 IP 를 풀어줄 경우,

(dovecot 에서 x.x.x.x IP를 차단해제)

#fail2ban-client set dovecot unbanip x.x.x.x 

 

특정 IP를 항상 차단 하지 않을 경우,

 

vi /etc/fail2ban/jail.conf 에 추가함

ignoreip = 127.0.0.1/8 x.x.x.x
댓글
댓글쓰기 폼