dnf-automatic - 在 CentOS 8 中自動安裝安全更新
保持軟體最新對於維護系統安全性和可靠性至關重要。對於暴露於網際網路的伺服器和其他生產系統尤其如此,因為它們經常成為惡意行為者的目標,這些惡意行為者試圖利用過時軟體中的漏洞。
對於 CentOS 8 和其他基於 RPM 的發行版的使用者,dnf 包管理器提供了一個強大的工具來管理軟體包並使其保持最新。但是,手動檢查和安裝更新可能是一個耗時且容易出錯的過程,尤其是在安裝了大量軟體包的系統上。
幸運的是,dnf-automatic 提供了一個簡單且自動化的解決方案來解決此問題。透過配置 dnf-automatic 自動檢查和安裝更新,您可以確保您的系統始終使用最新的安全補丁,而無需手動安裝更新。
在這篇博文中,我們將探討如何在 CentOS 8 上安裝和配置 dnf-automatic 以自動安裝系統上的安全更新。我們還將瞭解如何檢查 dnf-automatic 日誌,以及如何在需要時測試、排程和停用它。
什麼是 dnf-automatic?
dnf-automatic 是 DNF 包管理器(CentOS 8 中的預設包管理器)附帶的一個工具。它旨在自動安裝系統上的更新,包括安全更新。預設情況下,dnf-automatic 配置為每天安裝更新,但您可以根據需要自定義其行為。
安裝 dnf-automatic
要在您的 CentOS 8 系統上安裝 dnf-automatic,您可以使用以下命令:
sudo dnf install dnf-automatic
這將安裝 dnf-automatic 包及其依賴項。
配置 dnf-automatic
安裝 dnf-automatic 後,您需要將其配置為自動安裝系統上的安全更新。為此,您需要編輯 /etc/dnf/automatic.conf 檔案。此檔案包含 dnf-automatic 的配置設定。
使用您選擇的文字編輯器開啟檔案:
sudo nano /etc/dnf/automatic.conf
在檔案中,您可以自定義許多配置設定以滿足您的需求。目前,我們將重點關注控制安全更新自動安裝的設定。
找到 `upgrade_type` 設定並將它的值更改為 `security`。這將告訴 dnf-automatic 只安裝安全更新:
upgrade_type = security
接下來,找到 `apply_updates` 設定並將它的值更改為 `yes`。這將啟用 dnf-automatic 自動安裝安全更新:
apply_updates = yes
最後,找到 `emit_via` 設定並將它的值更改為 `stdio`。這將確保 dnf-automatic 的任何輸出都發送到標準輸出(即控制檯),而不是記錄到檔案中:
emit_via = stdio
儲存並關閉檔案。
測試 dnf-automatic
要測試 dnf-automatic 是否按預期工作,您可以手動觸發更新檢查並安裝任何安全更新,方法是執行:
sudo dnf-automatic
如果有任何安全更新可用,dnf-automatic 將自動下載並安裝它們。
排程 dnf-automatic
預設情況下,dnf-automatic 配置為每天檢查更新並安裝任何可用的更新。但是,您可以透過修改 /etc/dnf/automatic.conf 檔案來自定義其行為。
要更改更新頻率,您可以修改 `random_sleep` 設定,這是 dnf-automatic 在檢查更新之前等待的最大秒數:
random_sleep = 1440
在此示例中,dnf-automatic 將每 1440 分鐘(即一天一次)檢查一次更新。
您還可以透過將 `system_name` 設定設定為您的主機名來指定 dnf-automatic 檢查更新的特定時間。例如:
system_name = mycomputer.localdomain
預設情況下,dnf-automatic 將在 0 到 23 小時之間隨機時間檢查更新。但是,如果您指定主機名,dnf-automatic 將使用該主機名來確定每天檢查更新的小時數。例如,如果您的主機名是 mycomputer.localdomain,dnf-automatic 將每天在 00:00 到 00:59 之間隨機時間檢查更新。
您還可以配置 dnf-automatic 在安裝更新時或更新過程中出現任何錯誤時傳送電子郵件通知。為此,您需要修改 `email_from` 和 `email_to` 設定。
配置安全更新的電子郵件通知
首先,將 `email_from` 設定設定為 dnf-automatic 應作為電子郵件通知發件人使用的電子郵件地址:
email_from = root@example.com
接下來,將 `email_to` 設定設定為應接收電子郵件通知的電子郵件地址:
email_to = admin@example.com
儲存並關閉檔案。
檢視 dnf-automatic 日誌
dnf-automatic 將其活動記錄到 /var/log/dnf.log 檔案中。您可以透過執行以下命令來檢視 dnf-automatic 的日誌:
sudo less /var/log/dnf.log
這將在 less 分頁器中顯示日誌,允許您滾動瀏覽日誌並搜尋特定條目。
停用 dnf-automatic
如果您需要停用 dnf-automatic,您可以透過執行以下命令來實現:
sudo systemctl disable dnf-automatic.timer
這將停用 dnf-automatic 定時器,阻止其自動執行。您可以隨時透過執行以下命令重新啟用它:
sudo systemctl enable dnf-automatic.timer
這將重新啟用 dnf-automatic 定時器並使其根據其配置的計劃自動執行。
自定義 dnf-automatic
除了上面討論的設定之外,您還可以自定義 /etc/dnf/automatic.conf 檔案中的許多其他設定,以微調 dnf-automatic 的行為。例如,您可以透過修改 `exclude` 設定來指定要從更新中排除的軟體包列表,或者您可以透過修改 `priority` 設定來指定應在任何其他軟體包之前更新的軟體包列表。
結論
dnf-automatic 為在 CentOS 8 和其他基於 RPM 的發行版上自動安裝安全更新提供了一個簡單有效的解決方案。透過配置 dnf-automatic 自動檢查和安裝更新,您可以確保您的系統始終使用最新的安全補丁,而無需手動安裝更新。
在本文中,我們介紹了 dnf-automatic 的基礎知識以及如何將其配置為自動安裝安全更新。我們還探討了 dnf-automatic 中可用的某些高階配置選項,例如排程和電子郵件通知。
透過遵循本文中概述的步驟並自定義 dnf-automatic 的配置以滿足您的需求,您可以確保您的 CentOS 8 系統保持安全並使用最新的安全補丁。
資料結構
網路
關係資料庫管理系統 (RDBMS)
作業系統
Java
iOS
HTML
CSS
Android
Python
C語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP