如何记录服务器更改?

sco*_*obi 52 configuration-management

所以我们可能都遇到过这种情况:你调试了一些问题,却发现它是由你六个月前所做的配置更改引起的,而且你不记得你为什么这样做。所以你撤消它并解决问题,现在其他一些问题又回来了。哦,是的,现在我想起来了!然后你正确修复它。

那是因为你没有做好笔记,你这个笨蛋!但是这样做的好方法是什么?

在工程方面,我们有大量软件可以帮助我们检测和跟踪变化。源代码控制、代码审查等。跟踪每个更改,每个更改都需要对其进行注释。典型的工程部门需要良好的评论,以便在六个月内弄清楚为什么会这样破坏它时,您可以使用历史“责备”功能或二进制搜索构建来查明问题。这些工具是非常有效的交流工具和历史记录。

但是在服务器领域,我们有 500 种不同的服务,所有这些服务的配置方式都不同。而且它们并不总是具有文本格式(考虑设置文件夹的权限或更改页面文件位置),尽管它们可能具有文本表示。

在我们的环境中,我们检查了可以进入 Perforce 的配置文件,但这些文件很少。无法完全检查 Active Directory DB ..虽然可能是一个可以区分的转储......

过去,我曾尝试在我们的 wiki 中保留手动更改日志,但要保持这样做的纪律非常困难(我知道,这不是一个好借口,但确实很难)。

我的问题:您使用什么策略和工具来解决跟踪服务器配置更改的问题?

- 更新 -

注意:我不是在寻找共享笔记工具(我熟悉 OneNote 等),而是专门用于帮助跟踪服务器更改的自动化工具。没有用于跟踪服务器配置更改的综合工具,但也许有一些针对特定应用程序(如 GPO)的工具。

此外,我对您认为有用的特定策略非常感兴趣。“我们在 Sharepoint 中共享笔记”非常含糊。你如何保持纪律?您使用什么格式来跟踪您的更改?您如何组织变更数据?我真的很喜欢例子和想法。

jld*_*ger 20

在 Linux 领域,人们正在追求几种不同的策略:

  • 配置约束系统,如cfenginepuppetChef。这些类似于 Windows GPO。重点是所有服务器配置都特意记录在一个地方,并且您知道制定策略的粒度(服务器机房、组、特定服务器)。这不会让你免于“六个月前到底有什么不同?” 但它确实让您只需核对服务器配置并从头开始重建。您可以将 cfengine 和 puppet 策略置于修订控制之下来回答这个问题。
  • 修订控制 /etc。通常,Linux 程序将它们的配置存储在一个地方,/etc。大胆的人开始编写脚本来将 /etc 置于版本控制中。我知道的一个这样的程序是etckeeper
描述:将 /etc 存储在 git、mercurial、bzr 或 darcs 中
 etckeeper 程序是一个工具,可以让 /etc 存储在 git、mercurial、
 bzr 或 darcs 存储库。它挂接到 APT 以自动提交更改
 在软件包升级期间对 /etc 进行设置。它跟踪该版本的文件元数据
 控制系统通常不支持,但这对 /etc 很重要,例如
 作为 /etc/shadow 的权限。它非常模块化和可配置,而
 如果您了解使用版本的基础知识,也很容易使用
 控制。


Sco*_*ack 10

这种情况下的问题之一是,实际上,这是一个业务流程/技术问题的组合。而且它绝对不仅仅是跟踪管理员所做的更改。您还需要留意意外更改,以及管理员或单位之间的良好协调,以便 AD 控制器上的更改不会破坏某些部门服务器上的数据库权限设置。即,你的问题是一大罐蠕虫:)

在我的组织中,我们推出流程和系统来解决这个问题大约需要一年时间。对于业务流程方面,我们组建了一个变更管理团队。根据 SOP,对生产环境的所有更改都通过它们进行协调。他们编译所有更改,以及范围、受影响的系统、受影响的服务等。强制执行关于更改的良好文档,以及推出和回滚计划。主持每周(公开)会议以讨论即将发生的环境变化,然后发送详细说明所有这些变化的电子邮件。这个过程的最终目标是,实际上,IT 中的每个人都知道正在发生的一切。这有助于解决一些问题,例如,系统管理员安装内核补丁并重新启动系统,从而关闭时钟数据库。

至于技术方面,我只能说 Unix/Linux 的人,因为我不处理 Windows。他们已经推出了 Reductive Labs 的 Puppet,用于所有这些系统的配置管理。简单地说,是一个客户端/服务器系统,其中一个人在服务器上定义机器配置,并且客户端每隔一段时间(默认为 30 分钟)就会提取这些机会。此外,如果有机会在本地管理文件,那么它们也会在那时恢复。我们用它来管理正在运行的服务、防火墙配置、用户授权等。

我还建议研究像 TippingPoint 这样的东西。它是一种客户端服务,用于监视系统配置,并发送有关更改的警报。这让我们安全人员最高兴。它主要用于跟踪恶意或未发布的更改。


Tho*_*ton 4

我曾经在四、五家公司工作过,现在我不太记得了。

我们都有这个问题。我们中没有人能百分百解决这个问题,但在我现在所在的公司,我们拥有我认为迄今为止最好的策略。

Sharepoint/Wiki/Evernote/PIN

  • 共享点
    • 随心所欲地抱怨...它有一些非常好的列表功能。
    • IP地址列表
    • 存货
    • 服务帐户和使用
    • 更改通知日志
  • 一周
    • 操作方法
    • 长期任务清单
  • 印象笔记
    • 我和我的搭档用它把我们不想要的所有内容放入 Wiki 中
    • 更多技术性的操作方法
    • 我们都需要看的草稿笔记
    • 本周任务统计
    • 承包商任务清单
    • Evernote Clipper 可轻松截屏 AD/权限设置
    • 随处可用
  • PIN 码
    • 密码存储库