Ubuntuシステムを定期的に更新することは、システム全体のセキュリティの最も重要な側面の1つです。オペレーティングシステムのパッケージを最新のセキュリティパッチで更新しないと、マシンが攻撃に対して脆弱なままになります。
複数のUbuntuマシンを管理する場合、システムパッケージを手動で更新すると時間がかかる場合があります。単一のシステムを管理している場合でも、重要な更新を見落とすことがあります。ここで、自動無人更新が便利です。
このチュートリアルでは、Ubuntu18.04で自動無人更新を構成する方法について説明します。同じ手順が、Kubuntu、Linux Mint、ElementaryOSなどのUbuntuベースのディストリビューションにも当てはまります。
前提条件#
このチュートリアルを続行する前に、sudo権限を持つユーザーとしてログインしていることを確認してください。
unattended-upgrades
のインストール パッケージ番号
unattended-upgrades
パッケージには、更新されたパッケージを自動的にダウンロードしてインストールできるツールが含まれています。
このパッケージはすでにUbuntuシステムにインストールされている可能性があります。インストールされていない場合は、ターミナルで次のコマンドを入力してインストールできます。
sudo apt install unattended-upgrades
インストールが完了すると、無人アップグレードサービスが自動的に開始されます。次のように入力して確認できます:
systemctl status unattended-upgrades
● unattended-upgrades.service - Unattended Upgrades Shutdown
Loaded: loaded (/lib/systemd/system/unattended-upgrades.service; enab
Active: active (running) since Sun 2019-03-10 07:52:08 UTC; 2min 35s
Docs: man:unattended-upgrade(8)
CGroup: /system.slice/unattended-upgrades.service
無人自動更新の構成#
unattended-upgrades
パッケージは、/etc/apt/apt.conf.d/50unattended-upgrades
を編集して構成できます。 ファイル。
デフォルトの構成はほとんどのユーザーにとって正常に機能するはずですが、ファイルを開いて必要に応じて変更を加えることができます。すべてのパッケージを更新することも、セキュリティ更新のみを更新することもできます。
/etc/apt/apt.conf.d/50unattended-upgradesUnattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}";
"${distro_id}:${distro_codename}-security";
// Extended Security Maintenance; doesn't necessarily exist for
// every release and this system may not have it installed, but if
// available, the policy for updates is such that unattended-upgrades
// should also install from here by default.
"${distro_id}ESM:${distro_codename}";
// "${distro_id}:${distro_codename}-updates";
// "${distro_id}:${distro_codename}-proposed";
// "${distro_id}:${distro_codename}-backports";
};
最初のセクションでは、どのタイプのパッケージが自動的に更新されるかを定義します。デフォルトでは、セキュリティ更新プログラムのみがインストールされます。他のリポジトリからの更新を有効にする場合は、二重スラッシュ//
を削除して適切なリポジトリのコメントを解除できます。 行頭から。 //
以降のすべて コメントであり、パッケージによって読み取られません。
何らかの理由で特定のパッケージが自動的に更新されないようにする場合は、パッケージをパッケージブラックリストに追加するだけです。
/etc/apt/apt.conf.d/50unattended-upgradesUnattended-Upgrade::Package-Blacklist {
// "vim";
// "libc6";
// "libc6-dev";
// "libc6-i686";
};
何らかの理由で自動更新に問題がある場合にも、電子メールを受信することをお勧めします。これを行うには、次の2行のコメントを外し、メールアドレスを入力します。 mailx
など、システムにインストールされているメールを送信できるツールがあることを確認してください またはpostfix
。
Unattended-Upgrade::Mail "[email protected]";
Unattended-Upgrade::MailOnlyOnError "true";
無人自動更新の有効化#
自動更新を有効にするには、apt構成ファイル/etc/apt/apt.conf.d/20auto-upgrades
を確認する必要があります。 少なくとも次の2行が含まれています。これらはデフォルトで含まれている必要があります:
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";
上記の構成はパッケージリストを更新し、利用可能な更新を毎日インストールします。
7日ごとにローカルダウンロードアーカイブをクリーンアップする次の行を追加することもできます。
/etc/apt/apt.conf.d/20auto-upgradesAPT::Periodic::AutocleanInterval "7";
自動更新を有効/無効にする別の方法は、次のコマンドを実行することです。このコマンドは、/etc/apt/apt.conf.d/20auto-upgrades
を変更(または存在しない場合は作成)します。 。
sudo dpkg-reconfigure -plow unattended-upgrades
自動アップグレードが機能するかどうかをテストするには、ドライランを実行します。
sudo unattended-upgrades --dry-run --debug
出力は次のようになります。
...
pkgs that look like they should be upgraded:
Fetched 0 B in 0s (0 B/s)
fetch.run() result: 0
blacklist: []
whitelist: []
No packages found that can be upgraded unattended and no pending auto-removals
自動無人アップグレードの履歴は、/var/log/unattended-upgrades/unattended-upgrades.log
に記録されます。 ファイル。