在RHEL/CentOS 8最小化安裝中停用和刪除不需要的服務


安裝RHEL/CentOS 8最小化版本後,系統只預裝了一套最小的軟體包和服務,以保持系統輕量級和安全。但是,隨著時間的推移,當您安裝新的軟體包和服務時,您的系統可能會變得臃腫,並容易受到安全威脅。

在本文中,我們將討論如何在RHEL/CentOS 8最小化安裝中停用和刪除不需要的服務和軟體包。我們將首先識別不必要的服務以及停用它們的最佳實踐,以確保您的系統保持安全和功能正常。此外,我們將討論如何刪除不再需要的任何軟體包,釋放磁碟空間並可能減少安全漏洞。透過遵循這些步驟,您可以保持系統的精簡和安全,從而提高整體系統效能和可靠性。

檢查已啟用服務

在我們開始停用服務之前,我們需要檢查當前在系統上啟用了哪些服務。為此,我們將使用systemctl命令。

$ systemctl list-unit-files --type=service --state=enabled

此命令將顯示系統上所有已啟用服務的列表。請記下您要停用的服務。

識別不必要的服務

在停用和刪除不需要的服務之前,您需要確定哪些服務是必要的,哪些服務可以安全地停用。一種方法是檢查已啟用服務的列表,並查詢其描述以確定它們的功能。

例如,以下命令將顯示所有已啟用服務的列表及其說明:

systemctl list-unit-files --type=service --all --no-pager

然後,您可以檢查每個服務的說明,以確定它對於您的系統是否必要。

另一種方法是使用systemd-analyze之類的工具來分析系統的啟動時間,並識別正在減慢啟動過程的服務。通常可以安全地停用那些對系統執行不至關重要且正在減慢啟動過程的服務。

停用服務的最佳實踐

停用服務時,務必遵循最佳實踐,以確保您的系統保持安全和功能正常。以下是一些技巧:

  • 首先停用您確定不需要的非關鍵服務。停用對系統正常執行必不可少的關鍵服務時要謹慎。

  • 記錄您停用的服務,以便您可以在必要時輕鬆重新啟用它們。

  • 停用服務後,始終測試您的系統,以確保它仍然可以正常執行。

  • 定期檢查已停用服務的列表,以確保它們仍然不需要。

停用服務

確定要停用的服務後,可以使用systemctl命令停止並停用它們。例如,如果要停用postfix服務,則應執行以下命令:

$ sudo systemctl stop postfix $ sudo systemctl disable postfix

stop命令將立即停止當前正在執行的服務,而disable命令將阻止服務在系統啟動時自動啟動。

刪除不需要的服務

現在我們已經停用了不必要的服務,我們可以將它們從系統中刪除,以釋放磁碟空間並減小系統的攻擊面。

列出已啟用服務

要列出所有已啟用服務,請執行以下命令:

systemctl list-unit-files --type=service | grep enabled

這將顯示所有已啟用服務的列表。您可以使用以下命令刪除任何不需要的服務:

sudo systemctl disable <service-name>.service

例如,要停用“postfix”服務,可以使用以下命令:

sudo systemctl disable postfix.service

常見的要停用/刪除的服務

雖然您需要停用或刪除的服務將取決於您的具體用例,但有一些常見的服務您可能需要考慮在RHEL/CentOS 8的最小化安裝中停用或刪除。

FirewallD

FirewallD是管理系統防火牆的服務。雖然它對於安全很重要,但如果您在硬體防火牆後面執行系統,則可能不需要它。要停用FirewallD,請執行以下命令:

$ sudo systemctl stop firewalld $ sudo systemctl disable firewalld

NetworkManager

NetworkManager是管理系統網路連線的服務。如果您在不需要頻繁更改網路的伺服器上執行系統,則可以停用此服務。要停用NetworkManager,請執行以下命令:

$ sudo systemctl stop NetworkManager $ sudo systemctl disable NetworkManager

Postfix

Postfix是一個郵件傳輸代理 (MTA),用於在您的系統上傳送和接收電子郵件。如果您不使用系統進行電子郵件,則可以停用並刪除此服務。要停用並刪除Postfix,請執行以下命令:

$ sudo systemctl stop postfix $ sudo systemctl disable postfix $ sudo yum remove postfix

Avahi

Avahi是用於零配置網路的服務,允許裝置在同一網路上發現並相互通訊。如果您不需要此功能,則可以停用並刪除此服務。要停用並刪除Avahi,請執行以下命令:

$ sudo systemctl stop avahi-daemon.socket $ sudo systemctl disable avahi-daemon.socket $ sudo yum remove avahi-autoipd avahi-libs avahi-tools

刪除不需要的軟體包

除了刪除不需要的服務外,您可能還需要刪除任何不再需要的軟體包。未使用的軟體包會佔用磁碟空間,並可能引入安全漏洞。

要列出所有不是其他任何軟體包的依賴項的已安裝軟體包,請執行以下命令:

sudo dnf repoquery --unneeded --installed

然後,您可以使用以下命令刪除任何不必要的軟體包:

sudo dnf remove <package-name>

刪除軟體包時要小心,因為某些軟體包對於其他軟體包的正常執行可能是必要的。

驗證更改

刪除服務和未使用的軟體包後,最好驗證您的系統是否仍然可以正常執行。您可以使用以下命令檢查系統的狀態:

systemctl list-units --type=service

這將顯示當前在系統上執行的所有服務的列表。檢查所有必要的服務是否正在執行,並且沒有錯誤。

結論

在RHEL/CentOS 8最小化安裝中停用和刪除不需要的服務和軟體包是維護安全和穩定系統的關鍵步驟。透過停用不必要的服務,您可以減小系統的攻擊面,並將潛在漏洞的數量降至最低。刪除未使用的軟體包還有助於減少系統使用的磁碟空間,使其更高效並提高其效能。

我們已經討論了幾種識別和停用不必要服務的方法,包括使用systemctl命令和檢查系統日誌。此外,我們還介紹了使用yum和dnf包管理器刪除軟體包的過程。透過遵循這些步驟,您可以保持系統精簡、安全且高效執行。

我們強烈建議定期稽核您的系統中不必要的服務和軟體包,並根據需要停用/刪除它們,以確保您的系統保持安全和最佳化。只要付出一點努力和注意細節,您就可以保持系統平穩執行,並降低安全漏洞的風險。

更新於:2023年6月26日

瀏覽量1K+

開啟您的職業生涯

透過完成課程獲得認證

開始學習
廣告