Fail2ban: 정규식 테스트는 성공했지만 실패2ban은 IP를 금지하지 않습니다.

Fail2ban: 정규식 테스트는 성공했지만 실패2ban은 IP를 금지하지 않습니다.

어떤 IP도 차단할 수 없습니다. 정규식을 테스트할 때 +2000개의 일치 항목이 있다고 생각했습니다.

> fail2ban-regex '/var/log/nginx/access.log' '/etc/fail2ban/filter.d/bad-request.conf'
Date template hits:
|- [# of hits] date format
|  [1172344] Day(?P<_sep>[-/])MON(?P=_sep)Year[ :]?        24hour:Minute:Second(?:\.Microseconds)?(?: Zone offset)?
Lines: 1172344 lines, 0 ignored, 2198 matched, 1170146 missed [processed in 223.96 sec]  

내 실패 정규식은 다음과 같습니다.

^<HOST> -.*GET.*(\.php|\.asp|\.exe|\.pl|\.cgi|\scgi)

저는 0.9를 사용하고 있습니다. 버전.

로그 파일은 다음과 같습니다.

1.39.61.27,151.249.92.71,118.186.70.18,118.186.70.8,192.168.99.251,118.186.70.181,118.186.70.17,118.186.70.112,118.186.70.18,118.186.70.18,192.168.99.251 - "OPTIONS /js/shs/json HTTP/1.1" - [09/Oct/2015:15:33:29 +0800] 200 508 "-" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Ubuntu Chromium/43.0.2357.130 Chrome/43.0.2357.130 Safari/537.36" "-"
- - "GET /wp-login.php HTTP/1.1" - [09/Oct/2015:15:33:30 +0800] 200 130761 "-" "-" "-"

확인해 보니 iptables -L출력이 정상이고 금지된 IP가 없습니다.

Fail2ban 표준을 준수하지 않는 로그 날짜 형식입니까? 다음은 어디에서 확인해야 할까요?

답변1

마침내 작동하게 되었는데, 내 실수는 다음과 같이 작업을 설정한 것입니다.

action = %(action_mwl)s

메일 서버가 없었을 때 Jail.local 내부. 나는 행동을 다음과 같이 조정했다.

action = %(action_)s

기본 설정이며 이제 Fail2ban을 사용하여 많은 악성 트래픽을 자동으로 차단하고 있습니다. 다음 단계는 영구적으로 차단하는 것입니다. 건배.

관련 정보