在 CentOS 和 RHEL 系统上安装或自动更新安全补丁

2021-09-10 17:45:30 浏览数 (1)

在 Linux 系统上,其中一个最重要的需求就是保持定期更新最新的安全补丁,或者为相应的 Linux 版本更新可用的安全补丁。

和它同一家族的其它 Linux 版本(Fedora 或 Scientific Linux)中可以用类似的方法进行配置。

在 CentOS/RHEL 系统上配置自动安全更新

在 CentOS/RHEL 7/6 系统上,你需要安装下面的安装包:

代码语言:javascript复制
# yum update -y && yum install yum-cron -y

在 CentOS/RHEL 7 系统上启用自动安全更新

安装完成以后,打开 /etc/yum/yum-cron.conf,然后找到下面这些行内容,你必须确保它们的值和下面展示的一样

代码语言:javascript复制
update_cmd = securityupdate_messages = yesdownload_updates = yesapply_updates = yes

第一行表明自动更新命令行应该像这样:

代码语言:javascript复制
# yum --security upgrade

而其它的行保证了能够通知并自动下载、安装安全升级。

为了使来自 root@localhost 的通知能够通过邮件发送给同一账户(再次说明,你可以选择其他账户,如果你想这样的话),下面这些行也是必须的。

代码语言:javascript复制
emit_via = emailemail_from = root@localhostemail_to = root

在 CentOS/RHEL 6 上启用自动安全更新

默认情况下, cron 任务被配置成了立即下载并安装所有更新,但是我们可以通过在 /etc/sysconfig/yum-cron 配置文件中把下面两个参数改为 yes,从而改变这种行为。

代码语言:javascript复制
# 不要安装,只做检查(有效值: yes|no)CHECK_ONLY=yes# 不要安装,只做检查和下载(有效值: yes|no)# 要求 CHECK_ONLY=yes(先要检查后才可以知道要下载什么)DOWNLOAD_ONLY=yes

为了启用关于安装包更新的邮件通知,你需要把 MAILTO 参数设置为一个有效的邮件地址。

代码语言:javascript复制
# 默认情况下 MAILTO 是没有设置的,crond 会将输出发送邮件给自己
# (LCTT 译注:执行 cron 的用户,这里是 root)# 例子: MAILTO=rootMAILTO=admin@tecmint.com

最后,打开并启用 yum-cron 服务:

代码语言:javascript复制
------------- On CentOS/RHEL 7 ------------- systemctl start yum-cronsystemctl enable yum-cron------------- On CentOS/RHEL 6 -------------  # service yum-cron start# chkconfig --level 35 yum-cron on

恭喜你,你已经成功的在 CentOS/RHEL 7/6 系统上设置了自动升级。

0 人点赞