İçeriğe geç

GüvenlikGüncellemeler

Linux, Windows ve macOS sunucularda otomatik güvenlik güncellemeleri

Sunucuları günlük uğraş olmadan güncel tutun: Ubuntu ve Debian'da unattended-upgrades, dnf-automatic, Windows Server'da Windows Update ve macOS güncellemeleri.

  • Başlangıç
  • 15 dk okuma
  • Güncellendi

Denendiği sistemler: Ubuntu 24.04 LTS, Ubuntu 26.04 LTS, Debian 12, Debian 13, Windows Server 2022, Windows Server 2025, macOS Tahoe 26

Bu sayfada
  1. Başlamadan önce
  2. Ubuntu ve Debian: unattended-upgrades
  3. Kurun ve etkinleştirin
  4. Neyin güncelleneceğini seçin
  5. Otomatik yeniden başlatma (isteğe bağlı)
  6. Yeniden başlatma gerekip gerekmediğini kontrol edin
  7. Kaydı okuyun
  8. AlmaLinux ve Rocky Linux: dnf-automatic
  9. Windows Server
  10. macOS sunucular
  11. Paket yöneticisinin kapsamadığı güncellemeler
  12. Sorun giderme
  13. Sonraki adımlar

Başarılı saldırıların çoğu aylar önce düzeltilmiş açıkları kullanır. Otomatik güvenlik güncellemeleri bu boşluğu günlük uğraş olmadan kapatır. Bu rehber Ubuntu ve Debian, RHEL ailesi sistemler, Windows Server ve macOS'ta bunları yapılandırır ve yeniden başlatmaların nasıl yönetileceğini gösterir.

Başlamadan önce

  • Bir yedeğiniz ya da planınız sunuyorsa bir snapshot'ınız olsun. Windows VPS planları ücretsiz snapshot içerir.
  • Sunucunun ne zaman yeniden başlayabileceğine karar verin. Çoğu web sitesi için gece sakin bir saat uygundur.

Ubuntu ve Debian: unattended-upgrades

Kurun ve etkinleştirin

Ubuntu paketi varsayılan olarak kurar; Debian'da kurun. Ardından periyodik çalışmayı etkinleştirin:

Bash
sudo apt install unattended-upgrades apt-listchanges
sudo dpkg-reconfigure -plow unattended-upgrades

Yes yanıtını verin. Bu, /etc/apt/apt.conf.d/20auto-upgrades dosyasını yazar:

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

Doğrulama: deneme çalıştırması neyin kurulacağını ve yapılandırmanın çalıştığını gösterir:

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

Neyin güncelleneceğini seçin

/etc/apt/apt.conf.d/50unattended-upgrades izinli kaynakları listeler. Varsayılan olarak yalnızca güvenlik güncellemeleri kurulur; bu güvenli seçimdir. Bir paketin otomatik güncellenmesini önlemek için onu kara liste bölümüne ekleyin:

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

Otomatik yeniden başlatma (isteğe bağlı)

Aynı dosyada, bir güncelleme gerektirdiğinde sabit bir saatte yeniden başlatmaya izin verin:

Text
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "03:30";

Yeniden başlatmanın gözetim gerektirdiği sunucularda otomatik yeniden başlatmayı kapalı bırakın ve bunun yerine bir bakım aralığında yeniden başlatın.

Yeniden başlatma gerekip gerekmediğini kontrol edin

Bash
ls /var/run/reboot-required
sudo needrestart

Ubuntu'da bekleyen bir yeniden başlatma olduğunda /var/run/reboot-required dosyası bulunur. needrestart (Ubuntu'da varsayılan olarak kurulu; Debian'da sudo apt install needrestart) hâlâ eski kütüphanelerle çalışan servisleri ve çekirdeğin güncel olup olmadığını listeler.

Kaydı okuyun

Bash
sudo tail -n 50 /var/log/unattended-upgrades/unattended-upgrades.log

AlmaLinux ve Rocky Linux: dnf-automatic

Bash
sudo dnf install dnf-automatic

/etc/dnf/automatic.conf içinde upgrade_type = security ve apply_updates = yes ayarlayın, ardından zamanlayıcıyı etkinleştirin:

Bash
sudo systemctl enable --now dnf-automatic.timer

Doğrulama: systemctl list-timers dnf-automatic.timer bir sonraki çalışmayı gösterir.

Windows Server

Masaüstü Deneyimi olan Windows Server'da güncellemeleri denetlemek ve geçmişi görmek için Settings › Windows Update sayfasını açın; Advanced options etkin saatleri ayarlar. Her kurulumda SConfig'i kullanabilirsiniz: PowerShell'i yönetici olarak açın, SConfig çalıştırın, 5 numaralı seçeneği (Update setting) seçin ve otomatik için A'yı seçin: güncellemeler artık her gün sunucu saatiyle 03.00'te kurulur. 6 numaralı seçenek güncellemeleri hemen kurar.

Güncellemelerden sonra seçtiğiniz bir saatte yeniden başlatın. Bir Windows VPS'te büyük toplu güncellemelerden önce snapshot alın.

macOS sunucular

Bir macOS VPS veya VDS'te Sistem Ayarları › Genel › Yazılım Güncelleme sayfasını açın ve neyin indirilip kurulacağını seçmek için Otomatik güncellemeler'in yanındaki bilgi düğmesini kullanın. Bir derleme sunucusunda macOS güncellemelerini elle kurmayı düşünün: yeni bir macOS sürümü daha yeni bir Xcode gerektirebilir. SSH üzerinden:

Bash
softwareupdate --list
sudo softwareupdate --install --all --restart

Paket yöneticisinin kapsamadığı güncellemeler

Otomatik sistem güncellemeleri şunları güncellemez:

  • elle kurduğunuz uygulamalar (bir CMS, eklentileri ve temaları, indirilmiş programlar);
  • yeniden derlediğiniz veya yeniden çektiğiniz container imajları;
  • pip, npm veya composer ile kurulan dil paketleri.

Bunları kendi araçlarıyla güncelleyin ve güvenlik duyurularına abone olun.

Sorun giderme

Güncellemeler çalışmıyor. Zamanlayıcıları kontrol edin: systemctl list-timers apt-daily.timer apt-daily-upgrade.timer. İkisi de bir sonraki çalışmayı göstermelidir.

apt, dpkg'nin yarıda kesildiğini bildiriyor. Sunucu yeniden başlarken bir güncelleme çalışıyordu. Yarıda kalan kurulumu tamamlamak için sudo dpkg --configure -a çalıştırın.

Bir paket bekletiliyor (held back). Yeni bağımlılıklara ihtiyaç duyuyor; neyin değiştiğini okuduktan sonra bir bakım aralığında sudo apt full-upgrade ile kurun.

Sonraki adımlar

Sık sorulan sorular

Otomatik güncellemeler sunucumu bozabilir mi?

Kararlı sürümlerdeki güvenlik güncellemeleri olabildiğince az şey değiştirir; bu yüzden bozulma nadirdir. Güncellenmemiş yazılım çalıştırmanın riski çok daha yüksektir. Yedek veya snapshot tutun ve büyük değişikliklerden sonra güncelleme kaydını gözden geçirin.

Yine de yeniden başlatmam gerekir mi?

Evet; çekirdek ve bazı kütüphane güncellemeleri için. Ya sakin bir saatte otomatik yeniden başlatmaya izin verin ya da örneğin ayda bir düzenli bir bakım aralığı planlayın.

Tüm güncellemeler otomatik mi kurulur?

Varsayılan olarak unattended-upgrades yalnızca güvenlik güncellemelerini kurar. Başka güncelleme kaynakları ekleyebilirsiniz, ama özellik güncellemelerini değişiklikleri okuduktan sonra elle kurmak daha iyidir.

Neyin güncellendiğini nasıl anlarım?

Ubuntu ve Debian'da /var/log/unattended-upgrades/unattended-upgrades.log dosyasını, Windows'ta Windows Update geçmişini okuyun. E-posta bildirimleri de açılabilir.

Paket yöneticisi dışındaki yazılımlar ne olacak?

Bir CMS, eklentileri veya indirilmiş bir program gibi elle kurulan uygulamalar bu araçlarla güncellenmez. Onları kendi mekanizmalarıyla güncelleyin ve güvenlik duyurularına abone olun.

Kaynaklar

Şifre Oluştur

Lütfen onaylayın