Image

지식 기반 → Fail2Ban을 사용하여 비밀번호 추측으로부터 메일 서버 보호

[가상 서버]
출판 날짜: 30.05.2023

Fail2Ban을 설정해 보겠습니다. 이 서비스를 사용하면 서비스의 폭주 및 비밀번호 추측으로부터 서버를 보호할 수 있습니다. 수천 개의 타사 서비스가 매일 서버에 액세스하며 그 중 일부는 악성입니다. Fail2Ban을 사용하면 인증 시도가 여러 번 실패한 후 IP 주소를 차단합니다.

이 가이드에서는 메일 서버 자체를 이미 구성했으며 비밀번호 추측 및 기타 원치 않는 네트워크 활동에 대한 보호 기능을 설치해야 한다고 가정합니다. 메일 서버 설정에 대한 자세한 내용은 여기에서 확인할 수 있습니다:


사전 구성된 운영 체제가 포함된 VPS를 주문하고 VPS 서버 가격으로 기성 기업 메일 서버를 얻을 수도 있습니다.


1. Fail2Ban 서비스 설치 

apt install fail2ban

설정을 수정해보자

vi /etc/fail2ban/jail.d/defaults-debian.conf

[sshd]

enabled = true

[postfix]

enabled = true filter = postfix port = smtp,465,submission,imap,imaps,pop3,pop3s action = iptables[name=Postfix, port=smtp, protocol=tcp] logpath = /var/log/mail.log bantime = 120m maxretry = 3 findtime = 60m

이 구성에서는 인증 시도가 여러 번 실패할 경우 로그 파일을 처리하고 IP 주소를 차단하는 ssh 및 postfix 서비스에 대한 보호를 활성화했습니다.

일치하는 항목이 있는지 확인하려면 다음 명령을 사용하십시오

fail2ban-regex /var/log/mail.log /etc/fail2ban/filter.d/postfix.conf

우리는 기본적으로 기성 필터를 사용했고 우리의 경우에는 즉시 작동했습니다.

2. 서비스 시작

systemctl enable --now fail2ban

서비스를 시작하고 자동 시작에 추가했습니다.

이제 로그를 확인할 수 있습니다:

more /var/log/fail2ban.log

3. 서비스 관리

상태와 최신 활동을 보려면 다음 명령을 사용하십시오

fail2ban-client status - 모든 감옥과 그 상태가 표시됩니다.

fail2ban-client status postfix - 현재 차단된 IP 주소를 포함하여 감옥 활동이 표시됩니다.

IP 주소 차단을 해제하려면 다음 명령을 사용하십시오

fail2ban-client set postfix unbanip xxx.xxx.xxx.xxx

여기서: postfix는 감옥 이름이고 xxx.xxx.xxx.xxx는 목록의 IP 주소입니다 #fail2ban-client status postfix

4. Rouncube 인증을 위한 감옥 추가

파일에 추가

vi /etc/fail2ban/jail.d/defaults-debian.conf

[roundcube-auth]

enabled    = true

filter = roundcube-auth

port    = http,https

action = iptables[name=Roundcube-auth, port=http, protocol=tcp]

logpath    = /usr/share/nginx/html/webmail/logs/errors.log

bantime = 120m

maxretry = 3

findtime = 60m

웹메일 로그인 시도가 3회 실패할 경우 2시간 동안 접속을 차단합니다.

서비스를 다시 시작하자:

service fail2ban restart

필터 설정이 완료되었습니다.





No Comments Yet