Memperbarui sistem CentOS Anda secara teratur adalah salah satu aspek terpenting dari keamanan sistem secara keseluruhan. Jika Anda tidak memperbarui paket sistem operasi Anda dengan patch keamanan terbaru, Anda membuat mesin Anda rentan terhadap serangan.
Jika Anda mengelola beberapa mesin CentOS, memperbarui paket sistem secara manual mungkin memakan waktu. Bahkan jika Anda mengelola satu instalasi CentOS, terkadang Anda mungkin mengabaikan pembaruan penting. Di sinilah pembaruan otomatis berguna.
Dalam tutorial ini, kita akan melalui proses konfigurasi pembaruan otomatis pada CentOS 7. Instruksi yang sama berlaku untuk CentOS 6.
Prasyarat #
Sebelum melanjutkan tutorial ini, pastikan Anda masuk sebagai pengguna dengan hak istimewa sudo.
Menginstal Paket yum-cron #
yum-cron
package memungkinkan Anda untuk menjalankan perintah yum secara otomatis sebagai tugas cronuntuk memeriksa, mengunduh, dan menerapkan pembaruan. Kemungkinan paket ini sudah terinstal di sistem CentOS Anda. Jika tidak diinstal, Anda dapat menginstal paket dengan menjalankan perintah berikut:
sudo yum install yum-cron
Setelah penginstalan selesai, aktifkan dan mulai layanan:
sudo systemctl enable yum-cron
sudo systemctl start yum-cron
Untuk memverifikasi bahwa layanan berjalan, ketik perintah berikut:
systemctl status yum-cron
Informasi tentang status layanan yum-cron akan ditampilkan di layar:
● yum-cron.service - Run automatic yum updates as a cron job
Loaded: loaded (/usr/lib/systemd/system/yum-cron.service; enabled; vendor preset: disabled)
Active: active (exited) since Sat 2019-05-04 21:49:45 UTC; 8min ago
Process: 2713 ExecStart=/bin/touch /var/lock/subsys/yum-cron (code=exited, status=0/SUCCESS)
Main PID: 2713 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/yum-cron.service
Konfigurasi yum-cron #
yum-cron hadir dengan dua file konfigurasi yang disimpan di /etc/yum
direktori, file konfigurasi per jam yum-cron-hourly.conf
dan file konfigurasi harian yum-cron.conf
.
yum-cron
service hanya mengontrol apakah pekerjaan cron akan berjalan atau tidak. yum-cron
utilitas dipanggil dengan /etc/cron.hourly/0yum-hourly.cron
dan /etc/cron.daily/0yum-daily.cron
file cron.
Secara default, cron per jam dikonfigurasi untuk tidak melakukan apa pun. Jika ada pembaruan yang tersedia, cron harian diatur untuk mengunduh tetapi tidak menginstal pembaruan yang tersedia dan mengirim pesan ke stdout. Konfigurasi default sudah cukup untuk sistem produksi penting di mana Anda ingin menerima pemberitahuan dan melakukan pembaruan secara manual setelah menguji pembaruan pada server pengujian.
File konfigurasi disusun dalam beberapa bagian dan setiap bagian berisi komentar yang menjelaskan apa yang dilakukan setiap baris konfigurasi.
Untuk mengedit file konfigurasi yum-cron, buka file di editor teks Anda:
sudo nano /etc/yum/yum-cron-hourly.conf
Di bagian pertama, [commands]
Anda dapat menentukan jenis paket yang ingin Anda perbarui, mengaktifkan pesan dan unduhan, dan mengatur agar secara otomatis menerapkan pembaruan saat tersedia. Secara default, update_cmd
diatur ke default yang akan memperbarui semua paket. Jika Anda ingin mengatur pembaruan otomatis tanpa pengawasan, disarankan untuk mengubah nilainya menjadi security
yang akan memberi tahu yum untuk memperbarui paket yang hanya memperbaiki masalah keamanan.
Pada contoh berikut kami mengubah update_cmd
untuk security
dan aktifkan pembaruan tanpa pengawasan dengan menyetel apply_updates
untuk yes
:
[commands]
update_cmd = security
update_messages = yes
download_updates = yes
apply_updates = no
random_sleep = 360
Bagian kedua mendefinisikan cara mengirim pesan. Untuk mengirim pesan ke stdout dan email, ubah nilai emit_via
ke stdio,email
.
[emitters]
system_name = None
emit_via = stdio,email
output_width = 80
Dalam [email]
bagian Anda dapat mengatur alamat email pengirim dan penerima. Pastikan Anda memiliki alat yang dapat mengirim email terinstal di sistem Anda, seperti mailx atau postfix.
[email]
email_from = [email protected]
email_to = [email protected]
email_host = localhost
[base]
bagian memungkinkan Anda untuk mengganti pengaturan yang ditentukan dalam yum.conf
mengajukan. Jika Anda ingin mengecualikan paket tertentu agar tidak diperbarui, Anda dapat menggunakan exclude
parameter. Dalam contoh berikut, kami mengecualikan [mongodb
] paket.
[base]
debuglevel = -2
mdpolicy = group:main
exclude = mongodb*
Anda tidak perlu memulai ulang yum-cron
layanan agar perubahan diterapkan.
Melihat log #
Gunakan grepto untuk memeriksa apakah tugas cron yang terkait dengan yum dijalankan:
sudo grep yum /var/log/cron
May 4 22:01:01 localhost run-parts(/etc/cron.hourly)[5588]: starting 0yum-hourly.cron
May 4 22:32:01 localhost run-parts(/etc/cron.daily)[5960]: starting 0yum-daily.cron
May 4 23:01:01 localhost run-parts(/etc/cron.hourly)[2121]: starting 0yum-hourly.cron
May 4 23:01:01 localhost run-parts(/etc/cron.hourly)[2139]: finished 0yum-hourly.cron
Riwayat pembaruan yum dicatat di /var/log/yum
mengajukan. Anda dapat melihat pembaruan terbaru menggunakan perintah ekor:
sudo tail -f /var/log/yum.log
May 04 23:47:28 Updated: libgomp-4.8.5-36.el7_6.2.x86_64
May 04 23:47:31 Updated: bpftool-3.10.0-957.12.1.el7.x86_64
May 04 23:47:31 Updated: htop-2.2.0-3.el7.x86_64