Path: blob/master/exercices/parse_auth_log.py
305 views
users, ips = {}, {}12with open("auth.log") as log_file:3for log in log_file.readlines():4ip, user = "", ""5log_data = log.split('\n')[0].split(": ")[1].split(" ")6if "Failed password" in log:7if "message repeated" not in log:8if "invalid user" in log:9ip = log_data[7]10user = log_data[5]11else:12ip = log_data[5]13user = log_data[3]14elif "Invalid user" in log:15ip = log_data[4]16user = log_data[2]17ips[ip] = ips.get(ip, 0) + 118users[user] = users.get(user, 0) + 11920for ip, count in ips.items():21print(f"ip: {ip} seen {count} times")22for user, count in users.items():23print(f"user: {user} seen {count} times")2425