在Python中,你可以使用os
和logging
库来监控sudo命令的权限日志
首先,确保你的系统已经配置了sudo权限日志。通常,这些日志位于/var/log/auth.log
(Ubuntu/Debian)或/var/log/secure
(RHEL/CentOS)。
使用Python的os
库读取日志文件内容:
import os
log_file = '/var/log/auth.log' # 或者 '/var/log/secure',根据你的系统
with open(log_file, 'r') as file:
log_content = file.readlines()
logging
库配置日志监控:import logging
logging.basicConfig(filename='sudo_log_monitor.log', level=logging.INFO, format='%(asctime)s - %(message)s')
for line in log_content:
if 'sudo' in line:
logging.info(line.strip())
将以上代码片段整合到一个完整的Python脚本中:
import os
import logging
# 配置日志文件路径
log_file = '/var/log/auth.log' # 或者 '/var/log/secure',根据你的系统
# 配置日志监控
logging.basicConfig(filename='sudo_log_monitor.log', level=logging.INFO, format='%(asctime)s - %(message)s')
# 读取日志文件内容
with open(log_file, 'r') as file:
log_content = file.readlines()
# 监控sudo命令
for line in log_content:
if 'sudo' in line:
logging.info(line.strip())
运行此脚本后,它将监控指定的日志文件,并将包含"sudo"的行记录到sudo_log_monitor.log
文件中。你可以根据需要修改日志文件路径和日志格式。