Я уверен, что LFD (Login Failure Daemon) проверяет журнал ошибок Apache на предмет неудачных попыток аутентификации HTTP, т.е. записи журнала, такие как:
[Mon Feb 25 10:12:45 2013] [error] [client 10.0.0.1] user FAKEUSER not found: /index.html
[Mon Feb 25 10:11:56 2013] [error] [client 10.0.0.1] user REALUSER: authentication failure for "/index.html": Password Mismatch
Все приведенные выше попытки являются неудачными для входа в систему HTTP Basic. Следующий - неудачный HTTP-дайджест-аутентификация из того же error_log
[Mon Feb 25 10:10:37 2013] [error] [client 10.0.0.1] Digest: user 'FAKEUSER' in realm 'REALM' not found: index.html
Правильно ли я думаю, что это говорит о том, что LFD не проверяет неудачные попытки входа в систему HTTP Digest? И если да, то есть ли простой способ добавить такой шаблон «проверки» в сценарий?
Любое предложение будет очень признательно!
Хорошо, я сам решил:
Зайдите и отредактируйте файл: /etc/csf/regex.custom.pm
Перед строка, начинающаяся с:
# The return values from this example are as follows:
Добавьте следующее регулярное выражение:
# 1. Include failed HTTP Digest method - Invalid User
if (($config{LF_HTACCESS}) and ($lgfile eq $config{HTACCESS_LOG}) and ($line =~ /^\[\S+\s+\S+\s+\S+\s+\S+\s+\S+\] \[error\] \[client (\S+)\] Digest: user `(\S*)' in realm `\S+' not found:/)) {
return ("Failed web page login from",$1,"htdigest",5,"80,443","1");
}
# 2. Include failed HTTP Digest method - Invalid Password
if (($config{LF_HTACCESS}) and ($lgfile eq $config{HTACCESS_LOG}) and ($line =~ /^\[\S+\s+\S+\s+\S+\s+\S+\s+\S+\] \[error\] \[client (\S+)\] Digest: user (\S*): password mismatch:/)) {
return ("Failed web page login from",$1,"htdigest",5,"80,443","1");
}