通過yum-cron對linux進行安全更新


配置yum-cron工具。

安裝

[root@localhost ~]# yum -y install yum-cron

配置

yum-cron有兩個配置文件:/etc/yum/yum-cron.conf 和 /etc/yum/yum-cron-hourly.conf。這兩個配置文件內容差不多,用於配置每天需要執行的內容和每小時需要執行的內容。

在配置文件中,提供的更新策略為:

[root@localhost ~]# vi /etc/yum/yum-cron.conf 
[commands]
#  What kind of update to use:
# default                            = yum upgrade
# security                           = yum --security upgrade
# security-severity:Critical         = yum --sec-severity=Critical upgrade
# minimal                            = yum --bugfix update-minimal
# minimal-security                   = yum --security update-minimal
# minimal-security-severity:Critical =  --sec-severity=Critical update-minimal
default 默認的更新,類似yum update
security 安全更新, 類似yum --secruity upgrade
security-severity:Critical 重要的安全更新,類似yum --sec-severity=Critical upgrade
minimal 最小化更新,類似yum --bugfix update-minimal
minimal-security 最小化安全更新,類似yum --security update-minimal
minimal-security-severity:Critical 最小化重要安全更新,類似yum --sec-severity=Critical update-minimal

通過update-cmd指定相應的更新策略。
如: 需要配置只需要更新重要的安全更新,則配置為

update_cmd = security-severity:Critical

apply_updates設置是否提交相應的安全更新,如果設置為no,則只會檢測存在更新,但不會直接更新,如要自動更新,需將apply_updates設置為yes

apply_updates = yes

random_sleep設置最大的隨機啟動時間,設置隨機啟動是為了解決大量服務器同時啟動更新,對服務器環境造成影響。(考慮的很周到呢,不同於我們通過crontab設置一個固定的時間進行更新)
random_sleep的時間單位為秒。
系統默認設置為6*60 = 360,即6小時:

random_sleep = 360

在生產環境,我們通常不願意去更新系統的內核,那么,通過exclude和YUM_PARAMETER可以將內核類的更新排除掉.
在CentOS/RHEL 7.x系統中,加入下面內容排除:

exclude=kernel*

在RHEL/CentOS 6.x系統中,加入以下內容排除:

YUM_PARAMETER=kernel*

配置參考:

[root@ttt yum]# cat yum-cron.conf | grep -vE '^#|^$'
[commands]
update_cmd = security-severity:Critical
update_messages = yes
download_updates = yes
apply_updates = yes
random_sleep = 360
exclude=kernel*
[emitters]
system_name = None
emit_via = stdio
output_width = 80
[email]
email_from = root@localhost
email_to = root
email_host = localhost
[groups]
group_list = None
group_package_types = mandatory, default
[base]
debuglevel = -2
mdpolicy = group:main

配置完成后,需要配置 /etc/yum/yum-cron-hourly.conf 讓yum-cron每小時都執行。如果需要讓yum-cron每天執行一次,需要配置/etc/cron.daily/0yum-daily.cron。

[root@ttt yum]# cat /etc/cron.hourly/0yum-hourly.cron 
#!/bin/bash

# Only run if this flag is set. The flag is created by the yum-cron init
# script when the service is started -- this allows one to use chkconfig and
# the standard "service stop|start" commands to enable or disable yum-cron.
if [[ ! -f /var/lock/subsys/yum-cron ]]; then
  exit 0
fi

# Action!
exec /usr/sbin/yum-cron /etc/yum/yum-cron-hourly.conf
[root@ttt yum]# cat /etc/cron.daily/0yum-daily.cron
#!/bin/bash
 
# Only run if this flag is set. The flag is created by the yum-cron init
# script when the service is started -- this allows one to use chkconfig and
# the standard "service stop|start" commands to enable or disable yum-cron.
if [[ ! -f /var/lock/subsys/yum-cron ]]; then
  exit 0
fi
 
# Action!
exec /usr/sbin/yum-cron

以上就是yum-cron的大概的配置信息。如果需要查看更詳細的,可以通過系統的man命令。
[root@ttt yum]# man yum-cron


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM