Modul 4 · 4.2
Automatska ažuriranja
Modul 4: Softver i ažuriranja · Vrijeme čitanja: 10 minuta
Cilj učenja: Nakon ove lekcije moći ćete uključiti i provjeriti automatska sigurnosna ažuriranja, znat ćete što se događa automatski, a što ne, i znat ćete kada je potrebno ponovno pokretanje.
Ključni pojmovi: unattended-upgrades, 20auto-upgrades, 50unattended-upgrades, Origins-Pattern i Allowed-Origins, apt-daily timeri, needrestart, /var/run/reboot-required, Automatic-Reboot, ažuriranje kernela, dnf-automatic
Zašto automatski?
Sigurnosni propusti se otkrivaju, popravljaju i zatim aktivno zloupotrebljavaju, često u roku od nekoliko dana. Poslužitelj koji ažurirate jednom mjesečno stoga je u prosjeku tjednima izložen poznatim propustima. Nizozemski NCSC pravovremeno instaliranje ažuriranja ubraja u osnovna načela digitalne otpornosti: "Pravovremeno ažuriranje i krpanje softvera pomaže da se ranjivosti brzo uklone."
Ipak, ni "sve automatski" nije dobro. Nova verzija programa može se ponašati drukčije od stare, a poslužitelj koji se usred dana sam ponovno pokrene može pogoditi Vaše posjetitelje. Uobičajeni srednji put na Debianu i Ubuntuu je:
- sigurnosna ažuriranja automatski, svaki dan;
- ostala ažuriranja i nadogradnje izdanja ručno, u trenutku koji Vi odaberete, uz snimku (snapshot) prije toga;
- planirano ponovno pokretanje, u mirnom trenutku, i to pod nadzorom.
Program koji sve to obavlja zove se unattended-upgrades.
Uključivanje unattended-upgrades
Na Ubuntu Serveru unattended-upgrades je instaliran prema zadanim postavkama, a automatska sigurnosna ažuriranja uključena su odmah nakon instalacije. Na Debianu je također prisutan na mnogim instalacijama i slikama sustava (images), ali ne uvijek. Provjerite i uključite:
anna@web1:~$ sudo apt install unattended-upgrades
anna@web1:~$ sudo dpkg-reconfigure -plow unattended-upgradesDruga naredba pita "Automatically download and install stable updates?". Odaberite Yes. Time se zapisuje datoteka /etc/apt/apt.conf.d/20auto-upgrades:
APT::Periodic::Update-Package-Lists "1";
APT::Periodic::Unattended-Upgrade "1";Vrijednost 1 znači: svaki dan. S 0 to isključujete. Sam posao pokreću dva systemd timera (lekcija 6.3), koja pregledavate ovako:
anna@web1:~$ systemctl list-timers 'apt*'
NEXT LEFT LAST PASSED UNIT ACTIVATES
Tue 2026-11-10 06:24:11 CET 9h left Mon 2026-11-09 06:41:03 CET 14h ago apt-daily-upgrade.timer apt-daily-upgrade.service
Tue 2026-11-10 08:02:47 CET 11h left Mon 2026-11-09 19:12:30 CET 1h ago apt-daily.timer apt-daily.serviceapt-daily dohvaća popise (kao apt update), a apt-daily-upgrade instalira ažuriranja. Vremena su nasumično raspoređena kako svi poslužitelji na svijetu ne bi istovremeno opterećivali izvore paketa.
Što se automatski instalira?
To je zapisano u /etc/apt/apt.conf.d/50unattended-upgrades. Na Debianu se blok zove Unattended-Upgrade::Origins-Pattern, a na Ubuntuu Unattended-Upgrade::Allowed-Origins. Prema zadanim postavkama ondje su uključeni sigurnosni izvor i stabilni izvor Vašeg izdanja, a izvor -updates je isključen. Na Ubuntuu to izgleda ovako:
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";
// "${distro_id}:${distro_codename}-updates";
// "${distro_id}:${distro_codename}-proposed";
// "${distro_id}:${distro_codename}-backports";
};Retci ispred kojih stoji // su isključeni. Za prvi poslužitelj ostavite to tako. Ne mijenjajte datoteku izravno, jer sljedeća verzija paketa možda je želi zamijeniti. Debian preporučuje da vlastite izmjene stavite u zasebnu datoteku, na primjer /etc/apt/apt.conf.d/52unattended-upgrades-local; kasnije datoteke imaju prednost pred ranijima.
Paketi iz dodatnih izvora (Docker, Caddy, PostgreSQL od proizvođača) prema zadanim postavkama se ne ažuriraju automatski. To je svjestan izbor: njih pratite sami (lekcija 9.4) ili izvor ručno dodate na popis ako vjerujete proizvođaču i poznajete posljedice.
Nekoliko postavki koje ćete često htjeti:
// /etc/apt/apt.conf.d/52unattended-upgrades-local
Unattended-Upgrade::Mail "root";
Unattended-Upgrade::MailReport "only-on-error";
Unattended-Upgrade::Remove-Unused-Kernel-Packages "true";
Unattended-Upgrade::Automatic-Reboot "false";Mail radi samo ako poslužitelj može slati e-poštu (mali relay, lekcija 8.3). Ako to nije moguće, preskočite ovo i koristite nadzor iz lekcije 8.3.
Provjera radi li sve
Automatizam koji tiho prestane raditi opasniji je od nikakvog automatizma, jer mislite da ste sigurni. Zato provjerite tri stvari.
1. Probno pokretanje. Ovo pokazuje što bi se dogodilo, bez ikakvih promjena:
anna@web1:~$ sudo unattended-upgrade --dry-run --debug
...
Allowed origins are: origin=Debian,codename=trixie,label=Debian, origin=Debian,codename=trixie-security,label=Debian-Security, ...
Packages that will be upgraded: libssl3t64 openssh-server2. Zapisnik. Svako pokretanje zapisuje u /var/log/unattended-upgrades/unattended-upgrades.log:
anna@web1:~$ sudo tail -n 5 /var/log/unattended-upgrades/unattended-upgrades.log
2026-11-09 06:41:15,201 INFO Packages that will be upgraded: openssh-server
2026-11-09 06:41:15,202 INFO Writing dpkg log to /var/log/unattended-upgrades/unattended-upgrades-dpkg.log
2026-11-09 06:41:29,874 INFO All upgrades installed3. Što je još na čekanju. apt list --upgradable (lekcija 4.1) nakon jedne noći više ne bi smio prikazivati pakete iz -security. Ako ondje stoje danima zaredom, nešto zapinje: pun disk, zaključavanje zbog ručno pokrenutog apt-a koji je zapeo ili paket koji postavlja pitanje.
Ponovno pokretanje: usluge i kernel
Ažurirani program na disku još nije isto što i ažurirani program u memoriji. Ako OpenSSH radi već tri tjedna, radi stari kod sve dok se usluga ponovno ne pokrene.
- Usluge: program needrestart nakon ažuriranja provjerava koje usluge još koriste stare biblioteke. Na Ubuntuu 24.04 i novijima unattended-upgrades prema zadanim postavkama te usluge sam ponovno pokreće putem needrestarta. Na Debianu je needrestart zaseban paket (
apt install needrestart) koji Vas interaktivno pita koje usluge treba ponovno pokrenuti. - Kernel: novi kernel počinje raditi tek nakon ponovnog pokretanja cijelog poslužitelja. Debian i Ubuntu tada stvaraju datoteku
/var/run/reboot-required:
anna@web1:~$ cat /var/run/reboot-required
*** System restart required ***
anna@web1:~$ cat /var/run/reboot-required.pkgs
linux-image-6.12.57+deb13-amd64Imate dva izbora. Ili ponovno pokrećete sami, na primjer svaki tjedan u stalno vrijeme nakon što provjerite postoji li datoteka. Ili to prepustite unattended-upgrades:
Unattended-Upgrade::Automatic-Reboot "true";
Unattended-Upgrade::Automatic-Reboot-Time "04:30";Zadana vrijednost je false. Uključite je samo ako ste sigurni da se nakon ponovnog pokretanja sve samo vraća: usluge s enable (lekcija 6.1), kontejneri s pravilom restart: (lekcija 9.3) i nadzor koji Vas upozorava ako to nije tako (lekcija 8.3). Najprije to jednom testirajte ručno: sudo reboot, i provjerite vraća li se sve.
Ubuntu putem Ubuntu Pro nudi i Livepatch, koji neke ispravke kernela primjenjuje bez ponovnog pokretanja. To je dopuna, a ne zamjena: i s Livepatchom povremeno ponovno pokrećete poslužitelj.
Što ne radite automatski
- Nadogradnje izdanja (s Debiana 12 na 13, s Ubuntua 24.04 na 26.04): uvijek ručno, s planom (lekcija 4.3).
- Velike verzije Vaših vlastitih aplikacija (nova glavna verzija baze podataka, CMS-a): uvijek ručno, nakon sigurnosne kopije i čitanja bilješki o izdanju (release notes).
- Kontejneri: njih unattended-upgrades ne ažurira. Slika (image) iz 2024. ostaje slika iz 2024. sve dok Vi ne pokrenete
docker compose pull(lekcija 9.4).
Na AlmaLinuxu i Rocky Linuxu
Ondje se alat zove dnf-automatic. Instalirajte ga s dnf install dnf-automatic. U /etc/dnf/automatic.conf postavite upgrade_type = security i apply_updates = yes, a timer uključite s systemctl enable --now dnf-automatic.timer. Na sustavima sličnima RHEL-u ponovno pokretanje zbog kernela jednako je potrebno kao na Debianu; dnf needs-restarting -r kaže je li to slučaj.
U praksi
Kod WebOké VPS radi na isti način kao i drugdje: ono što se ažurira unutar poslužitelja, upravljate sami. Pružatelj usluge ažurira hardver i platformu za virtualizaciju, ali ne i Vaš operacijski sustav. Prije ručnog velikog ažuriranja napravite snimku (snapshot) u upravljačkoj ploči svog pružatelja; za svakodnevna automatska sigurnosna ažuriranja to nije potrebno.
Sažetak
- Uključite automatska sigurnosna ažuriranja s unattended-upgrades (Ubuntu: uključeno prema zadanim postavkama; Debian: provjerite s
dpkg-reconfigure -plow unattended-upgrades). - Prema zadanim postavkama automatski se ažuriraju samo sigurnosni izvor i stabilni izvor izdanja; dodatni izvori ne.
- Provjeravajte probnim pokretanjem, zapisnikom u
/var/log/unattended-upgrades/i sapt list --upgradable. - Usluge se nakon ažuriranja moraju ponovno pokrenuti (needrestart), a kernel zahtijeva ponovno pokretanje poslužitelja (
/var/run/reboot-required). - Nadogradnje izdanja, velike verzije aplikacija i kontejnere ažurirate ručno.
Kviz
Zadatak
Zadatak O4.2: Uključivanje i provjera automatskih ažuriranja. Na svom poslužitelju uključite unattended-upgrades (ili provjerite je li uključen), izvedite probno pokretanje te pregledajte zapisnik i timere. Ispunite kontrolni popis i odgovorite: koji se izvori kod Vas automatski ažuriraju, kada je bilo posljednje pokretanje, čeka li sada ponovno pokretanje i kako ćete Vi ponovno pokretati poslužitelj (sami u stalno vrijeme ili automatski, i zašto)?
Zadatak O4.2: Uključivanje i provjera automatskih ažuriranja
Ovaj zadatak rješavate sami; nitko ga ne provjerava. Označite što ste napravili i označite zadatak kao završen.
Automatski: izvor izdanja i sigurnosni izvor. Ako postoji reboot-required, čeka ažuriranje kernela ili biblioteke. Automatsko ponovno pokretanje moguće je ako se nakon toga sve samo vrati, a Vaš nadzor javi ako to nije slučaj. Dodatne izvore (Docker, Caddy), kontejnere i aplikacije poput WordPress ažurirate sami.
Vaše kvačice i bilješke ostaju samo u ovom pregledniku; ne šaljemo ih nikamo. Ako ste prijavljeni, u Moji tečajevi čuvamo samo podatak da ste zadatak završili.
Dodatno štivo
- Zaštita Vašeg VPS-a: prvih pet minuta
- Debian Wiki, automatska ažuriranja (UnattendedUpgrades): https://wiki.debian.org/PeriodicUpdates
- Nizozemski NCSC (nizozemski izvor), Osnovno načelo 3: Zaštitite sustave, aplikacije i uređaje: https://www.ncsc.nl/basisprincipes/basisprincipe-3-bescherm-systemen-applicaties-en-apparaten
- Dokumentacija za Ubuntu Server, Automatic updates: https://ubuntu.com/server/docs/how-to/software/automatic-updates/
- VPS: od prve prijave do sigurnog poslužitelja 3.3: Ažuriranja i automatska ažuriranja
