Lewati ke isi

Keamanan/Cyber Security

Cara Mengaktifkan Update Keamanan Otomatis di Ubuntu

Panduan mengaktifkan dan memeriksa unattended-upgrades di Ubuntu Server, mengatur reboot otomatis, notifikasi email, pengecualian paket, dan membaca log.

Terbit 5 menit baca

Jawaban singkat

Ubuntu Server memakai paket unattended-upgrades untuk memasang update keamanan otomatis. Pastikan paketnya terpasang, aktifkan lewat sudo dpkg-reconfigure -plow unattended-upgrades, uji dengan unattended-upgrade --dry-run --debug, lalu atur reboot dan notifikasi sesuai kebutuhan server.

Daftar isi
  1. Langkah mengaktifkan dan memeriksa
  2. Langkah 1: Pastikan paketnya terpasang
  3. Langkah 2: Aktifkan pembaruan berkala
  4. Langkah 3: Cek sumber pembaruan yang diizinkan
  5. Langkah 4: Uji dengan dry run
  6. Langkah 5: Pastikan timer systemd berjalan
  7. Bagaimana mengatur reboot otomatis?
  8. Pengaturan lain yang sering dibutuhkan
  9. Di mana melihat apa yang sudah dipasang?
  10. Pertanyaan yang sering diajukan
  11. Checklist singkat

Sudah berapa lama sejak terakhir kali kamu menjalankan apt upgrade di servermu? Kalau jawabannya "lupa", update keamanan otomatis adalah perlindungan paling murah yang bisa kamu pasang hari ini. Di Ubuntu, tugas ini dikerjakan oleh paket unattended-upgrades, yang setiap hari memeriksa dan memasang pembaruan dari repositori keamanan tanpa perlu kamu login.

Kabar baiknya, di instalasi Ubuntu Server standar (termasuk 24.04), unattended-upgrades biasanya sudah terpasang dan aktif. Tapi image VPS dari penyedia berbeda-beda, jadi tetap perlu dicek. Panduan ini membantu memastikannya berjalan, lalu menyesuaikan perilakunya.

Langkah mengaktifkan dan memeriksa

Langkah 1: Pastikan paketnya terpasang

sudo apt update
sudo apt install unattended-upgrades

Kalau paketnya sudah ada, apt hanya akan memberi tahu bahwa versi terbaru sudah terpasang.

Langkah 2: Aktifkan pembaruan berkala

sudo dpkg-reconfigure -plow unattended-upgrades

Pilih Yes saat ditanya apakah ingin mengunduh dan memasang pembaruan stabil secara otomatis. Perintah ini menulis berkas /etc/apt/apt.conf.d/20auto-upgrades dengan isi:

APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";

Angka 1 berarti dijalankan setiap hari: memperbarui daftar paket, lalu memasang pembaruan yang diizinkan.

Langkah 3: Cek sumber pembaruan yang diizinkan

Buka berkas konfigurasi utama:

sudo nano /etc/apt/apt.conf.d/50unattended-upgrades

Bagian Unattended-Upgrade::Allowed-Origins menentukan repositori mana yang boleh dipasang otomatis. Bawaannya berisi repositori keamanan, misalnya:

"${distro_id}:${distro_codename}-security";
"${distro_id}ESMApps:${distro_codename}-apps-security";
"${distro_id}ESM:${distro_codename}-infra-security";

Baris ${distro_codename}-updates sengaja diberi tanda komentar secara bawaan. Artinya hanya update keamanan yang dipasang otomatis, sedangkan update biasa (perbaikan bug dan fitur) tetap menunggu kamu. Ini titik awal yang aman untuk server produksi. Dua baris ESM baru memberi pembaruan bila server terdaftar di Ubuntu Pro.

Langkah 4: Uji dengan dry run

sudo unattended-upgrade --dry-run --debug

Perintah ini mensimulasikan proses tanpa memasang apa pun. Perhatikan baris Allowed origins are: untuk memastikan repositori yang diizinkan sudah benar, dan daftar paket yang akan dipasang. Kalau muncul No packages found that can be upgraded unattended, artinya semua update keamanan sudah terpasang.

Langkah 5: Pastikan timer systemd berjalan

Jadwal harian diatur oleh dua timer systemd: apt-daily.timer untuk mengunduh daftar dan paket, serta apt-daily-upgrade.timer untuk memasang.

systemctl list-timers 'apt-daily*'

Kedua timer harus muncul dengan waktu jalan berikutnya (kolom NEXT). Waktunya sengaja diacak sedikit agar tidak semua server di dunia memukul repositori pada detik yang sama.

Bagaimana mengatur reboot otomatis?

Sebagian update, terutama kernel dan pustaka inti seperti glibc, baru berlaku setelah server di-restart. Ubuntu menandainya dengan berkas /var/run/reboot-required, dan daftar paket penyebabnya ada di /var/run/reboot-required.pkgs.

Secara bawaan, unattended-upgrades tidak me-reboot server. Kalau servermu boleh restart sebentar di jam sepi, aktifkan reboot otomatis. Supaya pengaturanmu tidak tertimpa saat paket diperbarui, simpan di berkas tersendiri, misalnya /etc/apt/apt.conf.d/52unattended-upgrades-local:

Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "02:00";

Kalau server tidak boleh restart sembarangan, biarkan nonaktif dan jadwalkan reboot manual secara rutin. Cek kebutuhan reboot dengan ls /var/run/reboot-required. Pengguna Ubuntu Pro juga bisa memakai Livepatch untuk menerapkan sebagian perbaikan kernel tanpa reboot.

Pengaturan lain yang sering dibutuhkan

OpsiFungsi
Unattended-Upgrade::Package-BlacklistDaftar paket yang tidak boleh di-update otomatis, misalnya database yang upgrade-nya ingin kamu awasi
Unattended-Upgrade::MailAlamat email untuk laporan (butuh MTA seperti postfix atau msmtp di server)
Unattended-Upgrade::MailReportKapan email dikirim: always, only-on-error, atau on-change
Unattended-Upgrade::Remove-Unused-Kernel-PackagesMenghapus paket kernel lama yang tidak terpakai
Unattended-Upgrade::Remove-Unused-DependenciesMenghapus dependensi yang tidak dibutuhkan lagi
Unattended-Upgrade::Automatic-RebootReboot otomatis bila ada update yang memerlukannya
Unattended-Upgrade::Automatic-Reboot-TimeJam reboot, misalnya "02:00"

Contoh mengecualikan paket tertentu:

Unattended-Upgrade::Package-Blacklist {
    "mariadb-server";
};

Ingat, paket yang dikecualikan tetap butuh update keamanan. Masukkan ke jadwal pemeliharaan manualmu, misalnya bersama prioritas patch dari katalog KEV CISA.

Di mana melihat apa yang sudah dipasang?

  • /var/log/unattended-upgrades/unattended-upgrades.log: ringkasan setiap kali proses berjalan, paket apa yang dipasang, dan error bila ada.
  • /var/log/unattended-upgrades/unattended-upgrades-dpkg.log: keluaran rinci proses instalasi paket.
  • /var/log/apt/history.log: riwayat semua aktivitas apt, termasuk yang kamu jalankan manual.

Biasakan melirik log ini seminggu sekali, atau aktifkan laporan email. Dasar-dasar perintah apt lainnya ada di cara mengelola paket apt di Ubuntu dan Debian.

Pertanyaan yang sering diajukan

Apakah update otomatis bisa merusak aplikasi di server?

Risikonya kecil karena bawaannya hanya memasang update keamanan, yang di Ubuntu dirancang untuk memperbaiki celah tanpa mengubah fitur. Untuk aplikasi yang sangat sensitif, kecualikan paketnya dan update manual setelah diuji.

Apakah update keamanan otomatis cukup sebagai patch management?

Belum. Ia hanya mencakup paket dari repositori Ubuntu. Aplikasi yang dipasang manual, image Docker, CMS, dan plugin tetap perlu diperbarui dengan proses terpisah.

Bagaimana kalau proses unattended-upgrades macet?

Cek log di /var/log/unattended-upgrades/, lalu pastikan tidak ada proses apt atau dpkg lain yang sedang berjalan. Jalankan sudo dpkg --configure -a bila ada instalasi yang terputus.

Apakah cara ini berlaku untuk Debian?

Ya, Debian memakai paket unattended-upgrades yang sama. Perbedaannya ada pada isi Origins-Pattern di 50unattended-upgrades yang disesuaikan dengan repositori Debian.

Checklist singkat

  • Paket unattended-upgrades terpasang.
  • 20auto-upgrades berisi nilai "1" untuk kedua baris.
  • Allowed-Origins mencakup repositori -security.
  • unattended-upgrade --dry-run --debug berjalan tanpa error.
  • Timer apt-daily dan apt-daily-upgrade aktif.
  • Kebijakan reboot sudah diputuskan: otomatis di jam sepi, atau manual terjadwal.
  • Log diperiksa rutin atau laporan email aktif.

Sumber & referensi

Baca juga