我正在寻找一种方法来跟踪服务器中的系统管理员工作。假设系统管理员 1 和系统管理员 2 可以访问任何服务器,但我们需要确保跟踪它们在我们的服务器中所做的一切。
就像是:
server 1 ---- auditd or history>syslog---|
server 2 ---- auditd or history>syslog------- somthing like log.ly or saas
server 3 ---- auditd or history>syslog---|
有没有 SaaS 做这样的事情?你如何监控正在工作的朋友或系统管理员,以便我们可以在中心位置获得类似这样的信息:
server 1, on 24-12-2013 12:42:32 user root command : ls
server 1, on 24-12-2013 12:42:32 user root command : cd /home
server 2, on 24-12-2013 12:42:32 user example command : ls
我知道像 papertrailapp 这样的服务,但它们只有系统日志,而不会跟踪用户的 bash 命令。
答案1
一种解决方案是强制所有命令都具有 sudo 访问权限。用户以自己的身份登录,然后使用 sudo 执行其活动。如果您设置了集中式系统日志服务器,则可以监视所有 sudoers 条目。
当然,像我这样棘手的系统管理员会以自己的身份登录,然后 sudo -i 为所有后续命令提供一个非日志 shell。如果您想消除这种可能性,您可能需要使用书面政策而不是技术解决方案。执行/获得支持可能很棘手。