對於 Linux 管理員來說重要的任務之一是讓系統保持最新狀態,這可以使得你的系統更加穩健並且可以避免不想要的存取與攻擊。
在 Linux 上安裝軟體包是小菜一碟,用相似的方法我們也可以更新安全修補程式。
這是一個向你展示如何設定系統接收自動安全更新的簡單教學。當你執行自動安全包更新而不經審查會給你帶來一定風險,但是也有一些好處。
如果你不想錯過安全修補程式,且想要與最新的安全修補程式保持同步,那你應該借助無人值守更新機制設定自動安全更新。
如果你不想要自動安全更新的話,你可以在 Debian/Ubuntu 系統上手動安裝安全更新。
我們有許多可以自動化更新的辦法,然而我們將先採用官方的方法之後我們會介紹其它方法。
無人值守更新包預設應該已經裝在你的系統上。但萬一它沒被安裝,就用下面的命令來安裝。
使用 APT-GET 命令和 APT 命令來安裝 unattended-upgrades
軟體包。
$ sudo apt-get install unattended-upgrades
下方兩個檔案可以使你自定義該機制:
/etc/apt/apt.conf.d/50unattended-upgrades/etc/apt/apt.conf.d/20auto-upgrades
預設情況下只有安全更新需要的最必要的選項被啟用。但並不限於此,你可以設定其中的許多選項以使得這個機制更加有用。
我修改了一下檔案並僅加上被啟用的行以方便闡述:
# vi /etc/apt/apt.conf.d/50unattended-upgradesUnattended-Upgrade::Allowed-Origins { "${distro_id}:${distro_codename}"; "${distro_id}:${distro_codename}-security"; "${distro_id}ESM:${distro_codename}"; };Unattended-Upgrade::DevRelease "false";
有三個源被啟用,細節如下:
${distro_id}:${distro_codename}
:這是必須的,因為安全更新可能會從非安全來源拉取依賴。${distro_id}:${distro_codename}-security
:這用來從來源得到安全更新。${distro_id}ESM:${distro_codename}
:這是用來從 ESM(擴充套件安全維護)獲得安全更新。啟用郵件通知: 如果你想要在每次安全更新後收到郵件通知,那麼就修改以下行段(取消其註釋並加上你的 email 賬號)。
從:
//Unattended-Upgrade::Mail "root";
修改為:
Unattended-Upgrade::Mail "[email protected]";
自動移除不用的依賴: 你可能需要在每次更新後執行 sudo apt autoremove
命令來從系統中移除不用的依賴。
我們可以通過修改以下行來自動化這項任務(取消註釋並將 false
改成 true
)。
從:
//Unattended-Upgrade::Remove-Unused-Dependencies "false";
修改為:
Unattended-Upgrade::Remove-Unused-Dependencies "true";
啟用自動重新啟動: 你可能需要在安全更新安裝至核心後重新啟動你的系統。你可以在以下行做出修改:
從:
//Unattended-Upgrade::Automatic-Reboot "false";
到:取消註釋並將 false
改成 true
以啟用自動重新啟動。
Unattended-Upgrade::Automatic-Reboot "true";
啟用特定時段的自動重新啟動: 如果自動重新啟動已啟用,且你想要在特定時段進行重新啟動,那麼做出以下修改。
從:
//Unattended-Upgrade::Automatic-Reboot-Time "02:00";
到:取消註釋並將時間改成你需要的時間。我將重新啟動設定在早上 5 點。
Unattended-Upgrade::Automatic-Reboot-Time "05:00";
現在我們已經設定好了必須的選項,一旦設定好,開啟以下檔案並確認是否這兩個值都已設定好?值不應為0。(1=啟用,0=禁止)。
# vi /etc/apt/apt.conf.d/20auto-upgradesAPT::Periodic::Update-Package-Lists "1";APT::Periodic::Unattended-Upgrade "1";
詳情:
apt
每天自動執行 apt-get update
。apt
每天自動安裝安全更新。