Adakah unattended-upgrades aktif pada Ubuntu 24.04?
Ubuntu 24.04 menyertakan unattended-upgrades yang diaktifkan melalui fail 20auto-upgrades. Tetapan Automatic-Reboot kekal dimatikan dan anda boleh menggunakan dry-run untuk semakan.
Mengapa kemas kini keselamatan automatik perlu disediakan
Pelayan yang tidak ditampal (patched) merupakan sasaran paling mudah di internet. Kebanyakan pencerobohan terhadap pelayan kecil bukanlah serangan yang bijak; ia berpunca daripada pepijat yang diketahui dalam pakej lama yang tidak pernah dikemas kini oleh pemiliknya. Ubuntu menyediakan alat yang menutup jurang tersebut secara sendirinya: unattended-upgrades memasang kemas kini keselamatan secara automatik, mengikut jadual, tanpa anda perlu log masuk. Ini adalah langkah keselamatan paling berbaloi yang boleh didapati pada VPS, dan pada Ubuntu, ia hanya mengambil masa beberapa minit untuk disediakan.
Alat ini sengaja ditetapkan secara konservatif. Secara lalai, ia hanya menggunakan kemas kini keselamatan, bukan setiap naik taraf pakej, kerana tampalan keselamatan berisiko rendah dan wajar diambil tanpa semakan, manakala naik taraf ciri boleh mengubah kelakuan yang anda harapkan. Tetapan lalai itu adalah yang terbaik untuk kebanyakan pelayan, dan panduan ini mengekalkannya sambil menunjukkan kepada anda beberapa tetapan yang wajar diubah.
Langkah 1: Pasang dan aktifkan
Pada Ubuntu 24.04, pakej ini sering tersedia tetapi tidak sentiasa diaktifkan. Pasang dan hidupkannya:
sudo apt update
sudo apt install -y unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgradesGesaan dpkg-reconfigure akan meminta satu soalan ya-atau-tidak, sama ada untuk memuat turun dan memasang kemas kini stabil secara automatik. Jawab ya. Tindakan itu akan menulis fail yang menghidupkan tugas harian tersebut:
cat /etc/apt/apt.conf.d/20auto-upgradesAPT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";Baris pertama menyegarkan senarai pakej setiap hari; baris kedua menjalankan unattended upgrade setiap hari. Kedua-duanya ditetapkan kepada 1 bermakna mesin menyemak dan menggunakan kemas kini keselamatan setiap hari, pada pemasa systemd, tanpa tindakan lanjut daripada anda.
Langkah 2: Tentukan apa yang digunakan secara automatik
Dasar tersebut terletak dalam /etc/apt/apt.conf.d/50unattended-upgrades. Buka fail tersebut dan lihat blok Allowed-Origins berhampiran bahagian atas:
Unattended-Upgrade::Allowed-Origins {
"${distro_id}:${distro_codename}";
"${distro_id}:${distro_codename}-security";
"${distro_id}ESMApps:${distro_codename}-apps-security";
"${distro_id}ESM:${distro_codename}-infra-security";
};Baris -security adalah yang penting, dan ia diaktifkan secara lalai. Itulah dasar konservatif: kemas kini keselamatan diterima, manakala kemas kini ciri biasa dibiarkan untuk anda gunakan secara manual apabila anda memilihnya. Anda boleh menambah baris asal "${distro_id}:${distro_codename}-updates" untuk menggunakan semua kemas kini secara automatik, tetapi bagi pelayan yang menempatkan sesuatu yang penting bagi anda, mengambil hanya tampalan keselamatan secara automatik adalah lalai yang lebih selamat. Biarkan ia seperti yang ditetapkan kecuali anda mempunyai sebab khusus untuk tidak berbuat demikian.
Langkah 3: Mengendalikan but semula
Sesetengah kemas kini, seperti kernel atau pustaka teras, hanya berkuat kuasa sepenuhnya selepas but semula. unattended-upgrades tidak akan memulakan semula pelayan anda melainkan anda memberitahunya, yang bermaksud kernel yang telah ditampal boleh kekal tidak digunakan sehingga anda sendiri memulakan semula pelayan. Tentukan cara anda mahu mengendalikannya, dan tetapkan secara eksplisit dalam 50unattended-upgrades:
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "04:00";Tetapan itu memulakan semula pelayan pada pukul empat pagi apabila, dan hanya apabila, kemas kini memerlukannya. Pada VPS tunggal tanpa kluster untuk failover, but semula ringkas pada awal pagi biasanya merupakan pertukaran yang wajar untuk memastikan kernel sentiasa terkini. Jika pelayan anda menjalankan sesuatu yang tidak boleh dimulakan semula secara tidak dijangka, biarkan but semula dimatikan dan jadikan tabiat untuk memulakan semula sendiri selepas menyemak /var/run/reboot-required.
Langkah 4: Buktikan ia berfungsi
Jangan tunggu sehari untuk mengetahui sama ada tugas itu berjalan. Cetuskan dry run yang menunjukkan dengan tepat apa yang akan digunakan, tanpa mengubah apa-apa:
sudo unattended-upgrade --dry-run --debugOutput tersebut menyenaraikan pakej yang dipertimbangkan dan asal usulnya, supaya anda boleh melihat dasar tersebut beraksi. Selepas tugas sebenar dijalankan sekurang-kurangnya sekali, rekodnya berada di sini:
cat /var/log/unattended-upgrades/unattended-upgrades.logLog tersebut adalah jawapan kepada "adakah pelayan saya benar-benar menampal dirinya sendiri." Jika ia menunjukkan pakej keselamatan dipasang mengikut jadual, tugas itu berfungsi.
Di mana ia sesuai
Kemas kini automatik adalah satu lapisan pelayan yang diperkukuh, bukan keseluruhan penyelesaian. Ia menghalang pepijat yang diketahui daripada berlarutan, tetapi ia tidak melakukan apa-apa terhadap siapa yang boleh log masuk atau apa yang terdedah. Gandingkan ia dengan pengukuhan SSH berasaskan kunci supaya pintu masuk tidak boleh diserang secara brute-force, firewall UFW dengan dasar default-deny supaya hanya apa yang anda pilih boleh dicapai, dan pengguna servis tanpa keistimewaan supaya aplikasi yang terjejas tidak boleh mengambil alih keseluruhan sistem. Aplikasi yang anda hoskan membawa rahsia mereka sendiri di atas semua itu, jadi jika kotak ini menjalankan peti besi kata laluan yang dihoskan sendiri, langkah pengukuhan Vaultwarden meliputi token admin dan fail sandaran yang tidak dapat dilindungi oleh sebarang tampalan apt. Menampal menutup lubang yang anda tahu; lapisan lain mengehadkan kerosakan daripada lubang yang anda tidak tahu.
FAQ
Adakah unattended-upgrades menggunakan setiap kemas kini atau hanya kemas kini keselamatan?
Secara lalai, hanya kemas kini keselamatan. Blok Allowed-Origins dalam /etc/apt/apt.conf.d/50unattended-upgrades mengaktifkan asal usul -security dan membiarkan kemas kini ciri biasa untuk anda gunakan secara manual. Itu adalah sengaja: tampalan keselamatan berisiko rendah dan wajar diambil secara automatik, manakala naik taraf ciri boleh mengubah kelakuan, jadi kebanyakan pelayan harus mengekalkan lalai yang konservatif.
Adakah kemas kini automatik akan memulakan semula pelayan saya?
Hanya jika anda memberitahunya. Tetapkan Unattended-Upgrade::Automatic-Reboot "true" dan Automatic-Reboot-Time dalam konfigurasi, dan pelayan akan but semula pada waktu tersebut apabila kemas kini memerlukannya, contohnya selepas tampalan kernel. Jika dibiarkan mati, kernel yang telah ditampal akan menunggu sehingga anda memulakan semula sendiri; semak /var/run/reboot-required untuk mengetahui bila ia tertangguh.
Bagaimanakah saya menyemak bahawa kemas kini automatik benar-benar berjalan?
Jalankan sudo unattended-upgrade --dry-run --debug untuk melihat apa yang akan digunakan sekarang, tanpa mengubah apa-apa, dan baca /var/log/unattended-upgrades/unattended-upgrades.log untuk rekod pelaksanaan lepas; setiap pemasangan automatik juga direkodkan dalam /var/log/apt/history.log. Jika log menunjukkan pakej keselamatan dipasang mengikut jadual harian, pemasa tersebut berfungsi. Jika dry run mencetak No packages found that can be upgraded unattended, sama ada semuanya sudah terkini atau asal usul yang dibenarkan terlalu terhad untuk dipadankan dengan repositori keselamatan.
Adakah unattended-upgrades mencukupi untuk memastikan pelayan saya selamat?
Tidak, tetapi ia adalah lapisan yang perlu. Ia menghalang kerentanan yang diketahui daripada berlarutan tanpa ditampal, yang menghentikan jenis pencerobohan paling biasa, tetapi ia tidak mengawal akses atau pendedahan. Gabungkan ia dengan pengukuhan SSH, firewall default-deny, dan pengguna servis dengan keistimewaan minimum untuk pelayan yang benar-benar sukar untuk dicerobohi.