У меня есть правило, которое настроено так;
В /etc/sec/rules.d у меня есть;
type=SingleWithSuppress
ptype=regexp
pattern=(\S+) sshd\[\d+\]: PAM \d+ more authentication failures\; logname=.* uid=.* euid=.* tty=ssh ruser=.* rhost=(.*) user=(.*)
desc=Login Failure: $0
action=pipe '%s ' /bin/mail -s "login failure $2 to $3@$1" team@team.com
window=300
Так что, если это произошло через системный журнал;
Nov 21 11:24:10 servername.server.com sshd[26846]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost= user=kloggins
Это должно соответствовать этому (что, согласно моему редактору регулярных выражений) согласно шаблону;
servername.server.com sshd[26846]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost= user=kloggins
У нас была проблема со спамом, потому что метка времени менялась. Поэтому я переписал шаблон, чтобы соответствовать всему после имени хоста.
Однако, похоже, что это не работает, и каждый раз, когда пользователь «не проходит аутентификацию», я все равно получаю электронное письмо.
Я использовал следующее, чтобы проверить;
logger -p syslog.err 'sshd[26846]: PAM 2 more authentication failures; logname= uid=0 euid=0 tty=ssh ruser= rhost= user='
Есть идеи? Я мог бы просто неправильно понять с. Это первый раз, когда я работаю с этим! Любая помощь будет принята с благодарностью. Благодарность!