Вы хотите /var/log/auth.log
, а не системный журнал.
Он будет содержать такие строки:
Mar 20 10:47:24 Opus su[15918]: pam_unix(su:auth): authentication failure; logname=lfaraone uid=1000 euid=0 tty=/dev/pts/25 ruser=lfaraone rhost= user=root
Основной, наивный код для решения проблемы будет выглядеть следующим образом:
loginattempts = {"root": 0,
"someuser": 0,} # Usernames you want to check
with open('/var/log/auth.log', 'r') as authlog:
for line in authlog:
if "authentication failure" in line:
username = line.split('=')[-1] # split the string into an array,
# using '=' as the delimiter
if username in loginattempts: # is the username one we care about?
loginattempts[username] += 1
Как и предположил пользователь quieth, вероятно, будет лучше проанализировать регулярные выражения в долгосрочной перспективе, но если вы их еще не знаете, изучение может оказаться нетривиальным