在之前的问题我发现了一个“系统自动死亡 cron 作业”,它会每天关闭我的默认网络路由。
因为我以前从未听说过这样的东西,我想知道它到底是什么以及它有什么用途?
答案1
的目标system-autodeath
是每天将一台机器从网络上移除,直到有人采取措施。
手册页:
system-autodeath 是一个每天运行的 cron 作业,用于检查当前时间与机器的配置死亡日期。在此日期后的一周内,系统将向 syslog.alert 发出日志通知,通知系统在特定日期自动死亡。在此日期,系统将删除其默认路由。它会继续每天执行此操作,直到有人采取措施。
当我看到 Paul Fenwick 关于 autodie 的博客时,我的灵魂飞向了天堂,因为我很久以来就想要在 Linux 中实现 autodie 功能。然后我读了这篇文章,发现它根本不是我想象的那样。
...
Linux 可以运行。所以有些人不更新它。这没什么问题——除非是互联网上的机器。在这种情况下,较旧且不受支持的机器很容易被滥用。有很多这样的机器。前几天,我拔掉了一台运行 Red Hat Linux 5.2 的机器的电源。
我希望所有发行版都附带自动死亡 cron 作业。在发行版中设定预期到期日期,到期后删除所有默认路由。如果供应商延长维护期限,那么他们可以将自动死亡包作为维护的一部分进行更新。对于发行版“遗留”维护项目,情况也类似。
如果您想要强制更新,这实际上非常有用。在维护的网络中(例如企业网络),可能需要能够强制更新,并且如果系统未更新,则出于安全原因将其从网络中移除。因此,每次更新时,自动死亡日期都会被推迟到将来,如果没有更新(无论出于何种原因),机器就会从网络中移除,直到系统管理员查看它。
Fedora 中的实现似乎来自 Seth Vidal,在 Fedora 开发邮件列表中讨论。
[回应詹姆斯·哈伯德关于此系统必要性的提问。]
作为一名前系统管理员,我为人们维护了多个 Linux 发行版的重新发布,然后人们安装了我无法控制的上述系统 [该系统默认被破坏] 正是我的意图。
如果实验室中安装了大学 Linux 发行版的研究生决定不跟上并监控他们的系统,我希望它放弃默认路由,这样至少只能从本地网络访问。
还有这个想法的最初起源在邮件列表中。
事实上,我找不到 Glen Turner 引用的博客文章,除了Perl 的 autodie 工具,它似乎服务于完全不同的目的。我也不知道它是来自 UNIX 世界的东西还是几年前才诞生的想法。
无论如何,这确实有它的目的,一个非常有限和专门的目的,但仍然是一个目的。在一个错误报告明确指出系统自动死亡从未出现在默认安装中。如果这个最终出现在您的机器上,那么您可能不小心将它与另一个软件包一起安装了(Fedora 的人们很可能想知道有一个软件包依赖于这个),或者是其他人好心地为您安装了它。
答案2
根据这一页它会在给定日期自动禁用默认路由。
查找它的配置文件system-autodeath.conf
,你会发现类似这样的内容:
DEATHDATE=2999-12-31
至于你是如何设置它的,我不知道,你应该添加你用于虚拟化的东西以及从哪里得到你的 fedora 模板。
您应该通过在您的 shell 上运行来检查您的 vm 日期是否正常date
,也许错误的日期导致您的死亡日期比预期的更早。
答案3
我不知道是否有人对我的建议进行了充分的思考,并将其编码。看来我欠 Seth Vidal 一杯啤酒。博客帖子移至http://vk5tu.livejournal.com/19594.html我在 Fedora 开发邮件列表中写了更详细的描述https://lists.fedoraproject.org/pipermail/devel/2008-September/009618.html
向大家致以最良好的祝愿,格伦。