Centos 7 Otomatik Güncelleştirmeleri Aktif Etmek

Linux sistemlerde son zamanlarda ortaya çıkan bir otomatik güncelleme furyası var Centos/RHEL ailesi bunu uzun zamandır yapıyordu zaten. Kurumsal çözümler için oldukça güzel bir durum her paketin anında güncellenmesi yerine sadece güvenlik güncelleştirmelerinin geçilmesi yeter

Kritik çalışan ve sorun olması istenmeyen durumlar için çoğu zaman güvenlik güncelleştirmeleri bile göz ardı edilir. Çalışıyorsa dokunma mantığı bu gibi durumlar için risk oluşturur.

Gelin hep beraber Centos/RHEL ailesinde bu durumu nasıl çözebileceğiz bir bakalım

İlk önce yum-cron adlı paketi sistemimize dahil etmemiz gerekiyor. Bu paket bize gerektiği zaman güncellemeyi otomatik olarak yüklemesini sağlayacak

yum -y install yum-cron

Bu komut, yum-cron paketini kısa bir sürede yükleyecektir, şimdi yapılandırma zamanı geldi, varsayılan yapılandırma dosyası /etc/yum/yum-cron.conf dır.

#  What kind of update to use:
# default                            = yum upgrade
# security                           = yum --security upgrade
# security-severity:Critical         = yum --sec-severity=Critical upgrade
# minimal                            = yum --bugfix upgrade-minimal
# minimal-security                   = yum --security upgrade-minimal
# minimal-security-severity:Critical =  --sec-severity=Critical upgrade-minimal
update_cmd = default

# Whether a message should be emitted when updates are available,
# were downloaded, or applied.
update_messages = yes

# Whether updates should be downloaded when they are available.
download_updates = yes

# Whether updates should be applied when they are available.  Note
# that download_updates must also be yes for the update to be applied.
apply_updates = no

# Maximum amout of time to randomly sleep, in minutes.  The program
# will sleep for a random amount of time between 0 and random_sleep
# minutes before running.  This is useful for e.g. staggering the
# times that multiple systems will access update servers.  If
# random_sleep is 0 or negative, the program will run immediately.
# 6*60 = 360
random_sleep = 360

Şimdi bu default yapılandırma dosyamız içerisinde yapılacak olanları belirleyebiliyoruz. Biz sadece güvenlik güncelleştirmelerini yapmak istiyoruz. Bunun aynı zamanda otomatik olmasınıda istiyoruz.

İlk olarak bence en can alıcı noktamız, CENTOS/RHEL 6 serisinde hangi tür güncellemenin otomatik olarak yapılabileceğini seçemiyorduk, CENTOS/RHEL 7’de bu konu çözülmüş ve bir çok seçenekte yukardaki gibi getirilmiş.

Şimdi geldik yapılandırmayı yapmaya güvenlik güncelleştirmeleri için aşağıdaki değişikliği default yapılandırma dosyası üzerinde uygulayınız.

update_cmd = security-severity:Critical

Bu size sistem üzerinde tüm güvenlik güncelleştirmelerini değil sadece kritik olanları getireceği anlamına gelir. Böylelikle sistemde istenmeyen durumların önüne geçebilirsiniz.

Ne demiştik kritik servislerin çalışmasına engel olmayacak şekilde güvenlik yamalarını yapmamız önemli demiştik. Yeniden başlaması uzun sürecek servislerin yeniden başlatılması önerilmez. Bu yüzden aşağıdaki parametreyi kullanmanız zorunludur.

exclude=kernel* mysql*

Bu uygulamalara gelecek olası güvenlik güncelleştirmelerini yapmak için ise yoğunluğun az olduğu, kesintinin sisteminizi etkilemeyeceği bir zamanı seçip güncellemeleri yapabilirsiniz. (Örneğin gece 03:00 gibi)

Aynı zamanda bu güncellemelerin otomatik olarak yapılmasınıda sağlayabilirsiniz.

apply_updates = yes

Tabi ben gözümle göreceğim illaki derseniz bu seçeneği no olarak ayarlayın sadece size mail yada sunucuya bağlandığınızda bir mesaj olarak kritik güncelleştirmeler var bak yap yoksa sıkıntı çıkar diye uyaracak

Tabi mail ile size ulaşabilmesi için aşağıdaki ayarlarında aynı yapılandırma dosyasının en altına eklenmesi gerekiyor.

[email]
email_from = [email protected]
email_to = [email protected]
email_host = smtp.mertcangokgoz.com

Kayıt edip çıkış yapıyorsunuz bundan sonra güncelleme geldiğinde ve güncellemelerin durumları hakkında hem size bildiriyor hemde yaptıklarına dair bir bildirimde atmayı ihmal etmiyor.

Servisin çalıştığını ise systemctl status yum-cron.service komutu aracılığı ile öğrenebilirsiniz. Daha yeni kurduysanız ve ayarlamarı yeni yaptıysanız. stopped olarak görmeniz gayet normal bu durumda systemctl start yum-cron.service komutu ile servisi başlatabilirsiniz.

Share this:

5 thoughts on “Centos 7 Otomatik Güncelleştirmeleri Aktif Etmek”

  1. Hocam öncelikle tesekkürler, cok güzen anlatmissiniz.
    Benim Centos hakkina farkli bir sorum olucak. Simdi ben, sunucuya port ekliyorum ( udp ), ardindan save yapip reload diyorum. Fakat port ekleme basarili vs. demesine ragmen port eklenmiyor. Yani sorguladigimda, o port kapali görünüyor. Tekrar eklemek istedigimde ise, port zaten var hatasi aliyorum. Bunu nasil cözebilirim?

    Reply
    • Merhaba

      Port eklemelerini yaparken `–permanent` parametresi ekliyormusunuz. Kalıcı olabilmesi için bu komutun geçirilmesi gerekiyor. Ayrıca seçtiğiniz zone public olarak geçmeli yoksa yaptığınız değişiklikler genele yansımaz. Aktif alanlar için `firewall-cmd –get-active-zones` komutunu verip kontrol sağlayabilirsiniz.

      Reply
  2. Merhaba,

    Öncelikle yazı için teşekkürler. Sanırım bu özellik aslında Centos Panel Pro içinde mevcut. Centos Panel Pro almadan da bu belirttiğiniz otomatik update işlemi geçerli olabiliyor.

    Burada bir kaç şey soracağım ;
    1 – “update_cmd = security-severity:Critical” yerine “security” parametresi ile kurmak ne kadar mantıklıdır. Yani sadece kritik olanları değil, tüm security ile ilgili şeyleri güncellemesi daha doğru olmaz mı ?
    2 – Geceleri 3’de bu işlemi yapın demişsiniz, bunun komutu nedir ?
    3 – Random_Sleep parametresinden de biraz bahsedebilir misiniz ? Sanırım default hali 6 saat de bir kontrol ediyor ? Mesela sadece gece 3 de kontrol edip, var ise download edip uygulaması için ne yazmak gerekir ?

    Reply
    • Bu özellik işletim sisteminin bir özelliğidir. İşletim sistemine yazılmış bir uygulamaya has değildir.

      1. Tüm güvenlik güncelleştirmelerini gerçekleştirmek kritik sistemler için önerilmez. Kapatılmaması gereken bir servisin olumsuz etkilenmesini kimse istemez. Kişisel bir alan ise fark etmez ayarları kendinize göre özelleştirebilmekte özgürsünüz.

      Diğer 2 sorunuzun çözümünü olarakda direk cron işlemleri ayarlayarak çözebilirsiniz. Eş zamanlı çalışabiliyorlar.

      Reply

Leave a Comment