Ubuntuで自動セキュリティ更新を設定する方法(完全ガイド)
このガイドでは、Ubuntu システムで自動的に更新を設定する方法、つまり無人アップグレードについて説明します。
私たちは、Linuxオペレーティングシステムが「設計上」安全であると考えられていることを知っています。しかし、リリースされたセキュリティ更新プログラムを適用して定期的にメンテナンスを行うことで、それを維持できます。さらに、悪意のあるユーザーがシステムを侵害するために利用できる既存の脆弱性にも対処します。
Linuxシステム管理者によってよく使われるアプローチの一つは、手動でセキュリティアップデートをインストールすることです。このアプローチの問題は、一貫した定期性を保証できないことです。
このステップを実行することを忘れるのは珍しくありません。さらに、多くのサーバーを管理している場合、各サーバーに手動でセキュリティアップデートを適用することは、私たちの時間を大幅に消費することになります。
幸いなことに、Ubuntuを使用している場合は、セキュリティアップデートが自動的に適用されるようにする簡単な方法があります。このガイドではそれを紹介します。これは、特別に設計されたunattended-upgradesパッケージを使用して、Ubuntuシステムを最新のセキュリティおよび機能アップデートで自動的に最新の状態に保ちます。
このガイドのアプローチは、Ubuntu 22.04サーバーを使用して示されていますが、他のバージョンのUbuntuでも使用できます。それでは、必要な手順を説明していきましょう。
1. unattended-upgrades パッケージをインストールします
自動更新をUbuntuシステムに設定するために、まずunattended-upgradesパッケージをインストールする必要があります(まだインストールされていない場合)。これを実現するには、次のAPTコマンドを使用します。
sudo apt install unattended-upgrades以下の画面が表示されたら、サービスを再起動したいことを強調し、「OK」ボタンで確認してください。
インストールが完了すると、unattended-upgrades デーモンが自動的に開始されるはずです。確認を取りましょう。
sudo systemctl status unattended-upgradesご覧のとおり、サービスは稼働中です。
2. Ubuntuで自動更新を構成する
次のステップは、自動更新を有効にして構成することです。以下のコマンドを実行してください:
sudo dpkg-reconfigure --priority=low unattended-upgradesインタラクティブなダイアログが表示され、Ubuntuシステムで自動更新を許可するかどうか確認されます。「はい」を選択して確認してください。
上記の操作の結果、次の内容を含むファイル /etc/apt/apt.conf.d/20auto-upgrades が作成されます:
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";自動的にアップデートをインストールすることに同意した後、私たちはそれらを設定する必要があります。具体的には、どの種類のアップデートを自動的にUbuntuシステムにインストールしたいかです。
説明させてください、混乱しないように。Ubuntu システムにはいくつかの種類の更新があります。最も重要なのはセキュリティ更新です。これらは重要で、必ずインストールしなければならない項目と考えてください。
彼らは、悪意のあるユーザーがあなたのLinuxシステムに対して望ましくないアクションを実行するために利用できる脆弱性から保護します。
第二のタイプは標準の更新です。それらはあなたのシステムにインストールされた追加のソフトウェアに関連しています。
例えば、新しいバージョンのPythonプログラミング言語がリリースされた場合、それを標準更新として受け取ることが最も多いでしょう。新機能を利用するためにです。
デフォルトでは、Ubuntuシステムにunattended-upgradesパッケージをインストールすると、セキュリティアップデートのみが事前設定され、有効になります。ただし、標準のアップデートの自動インストールを許可したい場合は、設定ファイルを変更する必要があります。
sudo vim /etc/apt/apt.conf.d/50unattended-upgrades二重スラッシュ(//)で始まる行はコメントです。したがって、標準の更新の自動インストールを有効にしたい場合は、行の冒頭からコメント文字を削除してください。行は「${distro_id}:${distro_codename}-updates」です。
最後の2種類、「提案された」と「バックポート」は、システムの正常な動作を妨げる可能性のあるソフトウェアであるため、使用を避けることを強くお勧めします。
3. 更新適用後の自動再起動を設定する
さて、一歩進んでみましょう。ご存知のように、いくつかのセキュリティ更新は、ソフトウェアが更新された後にシステムを再起動する必要があります。例として、Linuxカーネルの更新を挙げてみましょう。
Ubuntuでは、自動セキュリティ更新には、受信した自動更新の中にシステムの再起動を必要とするものがあるかどうかを検出するメカニズムが含まれています。そして、そのような更新がある場合、システムに自動的に再起動するよう指示できます。
もちろん、この機能はデフォルトで無効になっていますが、使用したい場合は、この便利な機能を簡単に有効にする方法をお教えします。
すべては私たちのよく知られた /etc/apt/apt.conf.d/50unattended-upgrades ファイルにあります。それでは、編集を始めましょう。
sudo vim /etc/apt/apt.conf.d/50unattended-upgrades私たちは特に以下の三行に興味があります:
//Unattended-Upgrade::Automatic-Reboot "false";
//Unattended-Upgrade::Automatic-Reboot-WithUsers "true";
//Unattended-Upgrade::Automatic-Reboot-Time "02:00";最初の行は、更新が必要な場合に私たちのUbuntuシステムを自動的に再起動することを可能にします。2番目の行は、ユーザーがその時にログインしていても再起動を確認します。そうでなければ、使用中のユーザーがいる場合、マシンは再起動しません。最後の3番目の行は、再起動が行われるべき時刻を指定します。
もちろん、行の前のコメントを削除してください。最終バージョンは以下のようになるべきです。
変更を加えたファイルを保存してから終了してください。最後に、変更を適用するために unattended-upgrades サービスを再起動してください。
sudo systemctl restart unattended-upgradesログファイルに注意してください
あなたのUbuntuシステムで実行されたすべての自動更新は、ログファイル/var/log/unattended-upgrades/unattended-upgrades.logに記録されています。その内容を表示することで、システムに適用された更新を知ることができます。
cat /var/log/unattended-upgrades/unattended-upgrades.log自動更新を無効にする
Ubuntuシステムで自動更新を無効にすることができる場合があります。例えば、多くのサーバーを管理している場合、Ansibleなどの自動化ツールを使用して、全プロセスを自動化しているかもしれません。
自動更新を停止する理由は何であれ、それは比較的簡単です。以下のコマンドを実行してください:
sudo dpkg-reconfigure --priority=low unattended-upgrades開くインタラクティブダイアログから「いいえ」を選択し、「Enter」を押して確認します。
結論
この投稿では、Ubuntuシステムにおけるセキュリティ更新の自動インストールを構成する方法を教えました。unattended-upgradesユーティリティは、最新の更新プログラムとセキュリティパッチが利用可能になるとすぐにインストールすることで、システムを最新の状態に保ち、安全にします。
そうすることで、システムのセキュリティを大幅に確保し、新たに発生した脆弱性から恒久的に保護されることが保証されます。
このガイドがお役に立てたことを願っています。ご提案やコメントは下のセクションでお待ちしています。







