7 modulis · 7.2
Atnaujinimų sekimas
7 modulis: Saugumas · Skaitymo trukmė: 8 min.
Mokymosi tikslas: Po šios pamokos galėsite sutvarkyti atnaujinimus taip, kad jie vyktų greitai ir saugiai, bei žinosite, ką daryti su įskiepiu, kuris nebegauna atnaujinimų.
Pagrindinės sąvokos: nedidelė versija, didelė versija, saugumo atnaujinimas, automatiniai atnaujinimai (branduolys, įskiepiai, temos), rollback (atkūrimas), installer atnaujinimai, apleistas įskiepis, changelog (pakeitimų sąrašas), bandomoji aplinka (staging) dideliems atnaujinimams
Kodėl greitas atnaujinimas yra svarbesnis už atsargų laukimą
7.1 pamoka tai parodė: įsilaužėliai ieško žinomų spragų, kurioms jau yra atnaujinimas. Nuo pataisymo pasirodymo iki pirmų masinių skenavimų kartais praeina vos kelios valandos ar dienos. Tas, kuris „pirma mėnesį palaukia, ar atnaujinimas geras“, tą mėnesį lieka pažeidžiamas.
Tuo pačiu metu atnaujinimas gali kažką sugadinti. Sprendimas yra ne laukimas, o užtikrinimas, kad atnaujinimas vyktų automatiškai, greitai ir būtų atkuriamas:
- nedideli atnaujinimai ir įskiepių atnaujinimai automatiškai;
- atsarginė kopija prieš pat atnaujinimą, su automatiniu grįžimu atgal, jei kas nors nepavyksta;
- dideli atnaujinimai pirmiausia išbandomi bandomojoje aplinkoje (staging) (8.3 pamoka), bet per kelias dienas, ne mėnesius.
Mažos ir didelės WordPress versijos
WordPress numeruoja versijas taip: 7.1.4:
- 7.1 yra didelė versija (major release). Per metus jų būna kelios, su naujomis funkcijomis.
- .4 yra nedidelė versija (minor release): pataisymai ir saugumo atnaujinimai, be didelių pakeitimų.
Nuo 3.7 versijos WordPress automatiškai diegia nedideles versijas ir saugumo atnaujinimus, nebent tai esate išjungę. Dideles versijas pagal numatytuosius nustatymus diegiate patys, naudodami mygtuką Skydelis > Atnaujinimai. wp-config.php faile galite nurodyti šį elgesį:
define( 'WP_AUTO_UPDATE_CORE', 'minor' ); // numatytasis: tik nedidelės versijos
define( 'WP_AUTO_UPDATE_CORE', true ); // taip pat ir didelės versijos
define( 'WP_AUTO_UPDATE_CORE', false ); // nieko automatiškai (nerekomenduojama)Pasirinkite vieną iš trijų eilučių. Numatytasis variantas (minor) tinka daugumai svetainių; jei Jūsų installer arba talpinimo paslaugų teikėjas atnaujina dideles versijas už Jus, tai irgi puiku.
WordPress oficialiai palaiko tik naujausią didelę versiją. Saugumo pataisymai kurį laiką taip pat pritaikomi senesnėms serijoms, tačiau tuo pasikliauti negalima.
Įskiepiai ir temos automatiškai
Nuo WordPress 5.5 versijos ties Įskiepiai galite paspausti Įjungti automatinius atnaujinimus kiekvienam įskiepiui atskirai, o ties Išvaizda > Temos kiekvienai temai. Daugumai įskiepių tai įjunkite: būtent juose slypi spragos (7.1 pamoka).
Nuo WordPress 6.6 versijos WordPress po automatinio įskiepio atnaujinimo patikrina, ar svetainė vis dar veikia. Jei atnaujinimas sukelia kritinę klaidą, WordPress atkuria ankstesnę versiją (rollback) ir Jūs gaunate laišką. Tai sumažina didžiausią automatinių atnaujinimų riziką: tuščią (baltą) svetainę, kurią pastebite tik po savaitės.
Installer sprendimai, tokie kaip Installatron (2.2 pamoka), tai taip pat moka: iš anksto padaro atsarginę kopiją ir grįžta atgal, jei atnaujinimas nepavyksta. Naudokite vieną iš šių dviejų sistemų sąmoningai; jos viena kitai netrukdo, tačiau turite žinoti, kuri sistema ką atlieka.
Išimtys, kai automatinius atnaujinimus kartais verta išjungti:
- įskiepis, apie kurį žinote, kad didelės versijos dažnai kažką pakeičia (puslapių kūrimo įrankis, el. parduotuvės įskiepis su integracijomis); juos atnaujinkite išbandę bandomojoje aplinkoje (staging), bet greitai;
- tema su pakeitimais pačiuose failuose. Geriau: tuos pakeitimus perkelkite į vaikinę temą (child theme) (5.2 pamoka), tuomet pagrindinė (parent) tema galės atsinaujinti automatiškai be problemų.
Mokami įskiepiai
Mokami įskiepiai gauna atnaujinimus tik tol, kol galioja Jūsų licencija. Pasibaigusi licencija reiškia: saugumo atnaujinimų nebus. Sekite savo licencijas (9.4 pamoka). O mokamas įskiepis, atsisiųstas iš atsisiuntimų svetainės, atnaujinimų negauna visai (5.3 pamoka).
Apleistas įskiepis
Įskiepis, kuris ilgą laiką negauna atnaujinimų arba yra pašalintas iš wordpress.org įskiepių katalogo (ten rašoma „Šis įskiepis uždarytas“), pataisymų daugiau negaus. Ką daryti:
- Išsiaiškinkite priežastį. Uždaryto įskiepio aprašyme dažnai nurodoma priežastis (pavyzdžiui, saugumo problema). Jei tai saugumo problema, veikite nedelsdami.
- Raskite alternatyvą, kuri yra aktyviai prižiūrima (5.3 pamoka), arba pagalvokite, ar ta funkcija Jums apskritai dar reikalinga.
- Pakeiskite bandomojoje aplinkoje (staging), išbandykite, o seną įskiepį vėliau visiškai pašalinkite.
Palikti apleistą įskiepį „dėl visa ko“ yra būtent ta rizika, kurios norite išvengti.
Changelog skaitymas
Prie kiekvieno atnaujinimo pateikiamas changelog (pakeitimų sąrašas): kas buvo pakeista. Jį rasite ties Skydelis > Atnaujinimai arba įskiepio puslapyje (skirtuke Development arba Changelog). Ypač atkreipkite dėmesį į žodžius „security“, „saugumas“ arba „fix vulnerability“: tuomet atnaujinti reikia kuo greičiau. Taip pat į „breaking change“, „requires PHP 8.x“ arba „nauja versija“: tuomet pirmiausia išbandykite.
Po atnaujinimo
- Peržiūrėkite savo svetainę, įskaitant svarbiausias funkcijas (forma, pirkinių krepšelis, prisijungimas).
- Perskaitykite WordPress arba savo installer siunčiamus laiškus apie sėkmingus, nepavykusius ar atkurtus (rollback) atnaujinimus. Rollback reiškia, kad vėl veikia sena (pažeidžiama) versija: tai išspręskite, dažnai atnaujindami ir PHP, temą ar kitą įskiepį, arba pakeisdami tą įskiepį.
- Peržiūrėkite Tinklalapio būklė (5.4 pamoka), ar nėra likusių pranešimų.
Praktikoje: kaip tai atrodo valdymo skydelyje
WordPress administravime:
- Skydelis > Atnaujinimai: WordPress, įskiepių ir temų būsena. Čia taip pat matote, ar įjungti automatiniai didelių versijų atnaujinimai.
- Įskiepiai: stulpelyje Automatiniai atnaujinimai kiekvienam įskiepiui galite pasirinkti „įjungti“ arba „išjungti“. Viršuje su Masiniai veiksmai galite įjungti kelis iš karto.
- Išvaizda > Temos: paspauskite temą, kad pamatytumėte automatinių atnaujinimų mygtuką.
Installatron (DirectAdmin) programoje tai nustatote kiekvienam diegimui atskirai ties Redaguoti > Nustatymai > Automatinis atnaujinimas. Softaculous (cPanel) ir WP Toolkit (Plesk) sistemose tas pats pasirinkimas yra diegimo nustatymuose.
Santrauka
- Žinomos spragos greitai išnaudojamos; atnaujinimas turi vykti greitai, automatiškai ir turi būti atkuriamas.
- WordPress automatiškai diegia nedideles versijas (nuo 3.7); dideles versijas pagal numatytuosius nustatymus po paspaudimo, arba automatiškai, jei taip pasirenkate.
- Daugumai įskiepių ir temų įjunkite automatinius atnaujinimus; nuo 6.6 versijos WordPress atkuria nepavykusius įskiepių atnaujinimus.
- Pasibaigusi licencija ar apleistas įskiepis reiškia, kad saugumo atnaujinimų nebus: pakeiskite jį.
- Po atnaujinimo perskaitykite changelog ir laiškus; rollback atveju aktyviai išspręskite priežastį.
Testas (quiz)
Užduotis
Užduotis A7.2: Ar Jūsų WordPress atnaujintas? Savo svetainės administravime peržiūrėkite ties Skydelis > Atnaujinimai, kokią WordPress versiją turite, ir ją įveskite kartu su savo domenu. Programa gauna naujausią versiją iš viešos wordpress.org versijų API ir palygina: žalia spalva, jei turite naujausią versiją, oranžinė, jei esate toje pačioje didelėje versijoje, bet trūksta nedidelio atnaujinimo, raudona, jei naudojate senesnę didelę versiją. Taip pat įveskite, kiek įskiepių turi įjungtus automatinius atnaujinimus, kiek neturi ir kodėl.
Papildoma literatūra
Šiuose straipsniuose aprašomi veiksmai WebOké valdymo skydeliuose; kituose skydeliuose veikimas yra panašus.
- DirectAdmin vadovas 13.5: Atnaujinimai ir automatiniai atnaujinimai
- Joomla ir WordPress atnaujinimas per Installatron
- Klaida 500 arba „kritinė klaida“ Jūsų svetainėje (taip pat po WordPress atnaujinimo)
- Automatinių atnaujinimų nustatymas (wordpress.org, anglų kalba): https://wordpress.org/documentation/article/configuring-automatic-background-updates/
