我们目前正在寻找一种方法来验证一段时间内我们的 IIS 8.5 网站做了哪些更改。
我们查看了 IIS 审计事件日志,它有助于追踪确切的时间点和更改者。但我们希望找到可以设置为每周运行的程序,其中概述了自上次比较以来 IIS 配置发生的任何变化。
有没有人有什么建议?
谢谢
尼尔
答案1
IIS 自带配置变更历史记录,它存储了最新的 x 个全局配置文件。默认情况下,最新的 10 个位于 中%SystemDrive%\inetpub\history
,您可以增加存储的更改数量:
Set-WebConfigurationProperty -pspath 'MACHINE/WEBROOT/APPHOST' -filter "system.applicationHost/configHistory" -name "maxHistories" -value 50
或者如果你不使用 PowerShell,可以使用老式的方法:
appcmd.exe set config -section:system.applicationHost/configHistory /maxHistories:"50" /commit
您可以将这些配置备份复制到更永久的位置以供稍后检查。
您可以使用差异工具来查看差异,或者更好地将所有文件检查到像 git 这样的源代码控制系统中,以便在一个地方获得完整的更改历史记录。
这样做会显示所有更改,但不会告诉您是谁做的更改。因此,潜在的脚本可以在事件日志中查找事件(使用更改时间),然后在源代码控制系统的提交消息中记录用户帐户。