弹性 Beanstalk 安全补丁

14

我目前在所有的ec2实例上使用Ubuntu和无人值守升级(unattended-upgrades)来保持安全漏洞的关闭状态,但是当通过弹性Beanstalk运行应用程序时,我看不到任何处理它们的补丁的选项。唯一的选择是手动登录并运行yum。

我如何处理弹性Beanstalk实例的安全补丁?


这个问题有点老了,但是对于任何正在阅读的人来说,使用Beanstalk时应该使用Chef、Puppet、Ansible、Salt或类似的CM,以便实例在启动时自行设置并保持适当的配置和细粒度控制。当然,如果你选择这条路线,你也可以使用OpWorks或裸EC2+CM。 - MV.
使用Beanstalk的原因是不需要运行其他任何东西。 - glance
我同意你的观点。然而,在我们使用Beanstalk托管的应用程序中,我们设置了几个cron作业(使用ebextensions)来进行自动修补、备份和日志处理。然而,自动修补总是让我感到紧张(如果出了问题,所有服务器都会崩溃),因此对于一个非常关键的应用程序,我仍然手动进行修补(在这个应用程序上,修补只在部署时进行,所以我只需重新部署即可)。Beanstalk为我们简化了大部分任务(我非常喜欢它),但根据您的需求可能仍需要一些定制。 - MV.
2个回答

12
我们将以下内容添加到我们的 .ebextensions/01run.config 文件中以解决此问题:
commands:
  security_updates: 
    command: "yum update -y --security"

1
那只会在实例启动时部署安全补丁,而不会部署在机器运行期间发布的补丁。我希望像 Amazon rhel 克隆版的无人值守升级一样的东西。 - glance
1
仍然可以在您的实例终止并重新启动时运行。有一个名为yum crontab的应用程序可能会有所帮助,它可以进行每晚更新。 - radtek

3
你可以使用每晚或每小时的定时任务来运行以下操作。 sudo yum update --sec-severity=critical,important 在应用程序失败的情况下,要考虑如何进行回滚和通知。

1
亚马逊在将安全补丁推送到其Amazon Linux仓库之前,对其进行了多少测试?当需要时,yum是否重新启动已打补丁的服务?是否需要重新启动实例?对我来说,弹性Beanstalk的整个安全补丁方面似乎被忽略了。 - glance

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接