Moodul 7 · 7.2
Updates bijhouden
Moodul 7: Turvalisus · Lugemisaeg: 8 minutit
Õpieesmärk: pärast seda õppetundi oskad korraldada uuendusi nii, et need toimuvad kiiresti ja turvaliselt, ning tead, mida teha pluginaga, mis enam uuendusi ei saa.
Põhimõisted: väike versioon, suur versioon, turvauuendus, automaatuuendus (tuumik, pluginad, teemad), rollback (tagasipööramine), installer-uuendused, hüljatud plugin, changelog, testkeskkond (staging) suurte uuenduste jaoks
Miks kiire uuendamine on olulisem kui ettevaatlik ootamine
Õppetund 7.1 näitas seda: sissemurdjad otsivad teadaolevaid auke, millele on juba parandus olemas. Paranduse ilmumise ja esimeste massiliste skannimiste vahel võib olla vaid mõni tund või päev. Kes "ootab enne kuu aega, et näha, kas uuendus on hea", on selle kuu jooksul kaitsmata.
Samas võib uuendus midagi katki teha. Lahendus ei ole ootamine, vaid selle tagamine, et uuendamine toimub iseenesest, kiiresti ja on tagasipööratav:
- väikesed uuendused ja pluginauuendused automaatselt;
- varukoopia vahetult enne uuendust koos automaatse tagasipööramisega, kui midagi läheb valesti;
- suurte uuenduste eelnev testimine testkeskkonnas (õppetund 8.3), kuid päevade, mitte kuude jooksul.
WordPressi väikesed ja suured versioonid
WordPress numbrib versioone näiteks kujul 7.1.4:
- 7.1 on suur versioon (major release). Neid tuleb paar korda aastas ja need toovad kaasa uusi funktsioone.
- .4 on väike versioon (minor release): parandused ja turvauuendused ilma suurte muudatusteta.
Alates versioonist 3.7 paigaldab WordPress väikesed versioonid ja turvauuendused automaatselt, kui sa seda just välja ei lülita. Suuri versioone paigaldad vaikimisi ise, nupuga menüüs Töölaud > Uuendused. Failis wp-config.php saad seda käitumist juhtida:
define( 'WP_AUTO_UPDATE_CORE', 'minor' ); // vaikimisi: ainult väikesed versioonid
define( 'WP_AUTO_UPDATE_CORE', true ); // ka suured versioonid
define( 'WP_AUTO_UPDATE_CORE', false ); // mitte midagi automaatselt (ei soovitata)Vali neist kolmest reast üks. Vaikeseade (minor) sobib enamikule saitidele; kui sinu installer või majutaja uuendab sinu eest ka suuri versioone, on ka see täiesti sobiv.
WordPress toetab ametlikult ainult kõige uuemat suurt versiooni. Turvaparandusi antakse mõnda aega ka vanematele seeriatele, kuid selle peale ei tasu kindlalt loota.
Pluginate ja teemade automaatuuendus
Alates WordPress 5.5-st saad menüüs Pluginad iga plugina juures klõpsata nupul Luba automaatuuendused, ja menüüs Välimus > Teemad iga teema juures. Lülita see sisse enamiku pluginate puhul: just neis peituvad turvaaugud (õppetund 7.1).
Alates WordPress 6.6-st kontrollib WordPress pärast automaatset pluginauuendust, kas sait ikka töötab. Kui uuendus põhjustab fataalse vea, pöörab WordPress eelmise versiooni tagasi (rollback) ja saadab sulle sellest teate. See kõrvaldab automaatuuenduste suurima riski: valge leht, mida sa alles nädala pärast märkad.
Installerid nagu Installatron (õppetund 2.2) oskavad sama: eelnev varukoopia ja tagasipööramine, kui uuendus ebaõnnestub. Kasuta neist süsteemidest teadlikult üht: nad ei sega teineteist, aga sa tahad teada, kumb mida teeb.
Erandid, mille puhul tasub automaatuuendused mõnikord välja lülitada:
- plugin, mille kohta tead, et suured versioonid muudavad sageli midagi (leheehitaja, veebipoe plugin koos liidestustega); uuenda need pärast testkeskkonnas testimist, kuid siiski kiiresti;
- teema, mille failides on ise muudatusi tehtud. Parem on panna need muudatused alamteemasse (child theme) (õppetund 5.2), siis saab lähteteema (parent theme) rahulikult automaatselt uueneda.
Tasulised pluginad
Tasulised pluginad saavad uuendusi ainult niikaua, kui litsents kehtib. Aegunud litsents tähendab: turvauuendusi ei tule. Pea oma litsentsidel silma peal (õppetund 9.4). Ja allalaadimislehelt pärit tasuline plugin ei saa üldse uuendusi (õppetund 5.3).
Hüljatud plugin
Plugin, mis pole pikka aega uuendust saanud, või mis on wordpress.org pluginakataloogist eemaldatud ("See plugin on suletud"), ei saa enam parandusi. Mida teha:
- Uuri, miks. Suletud plugina juures seisab sageli ka põhjus (näiteks turvaprobleem). Kui tegu on turvaprobleemiga, tegutse kohe.
- Otsi alternatiivi, mida aktiivselt hooldatakse (õppetund 5.3), või mõtle, kas vajad seda funktsiooni üldse enam.
- Asenda see testkeskkonnas, testi ja eemalda vana plugin seejärel täielikult.
Hüljatud plugina "ettevaatuse mõttes" alles jätmine on täpselt see risk, mida sa vältida tahad.
Changelogi lugemine
Iga uuenduse juures on changelog: mis on muutunud. Leiad selle menüüst Töölaud > Uuendused või plugina lehelt (vahekaart Arendus või Muudatused). Pööra tähelepanu eriti sõnadele nagu "security", "turvalisus" või "fix vulnerability": sel juhul tasub uuendada võimalikult kiiresti. Ja sõnadele "breaking change", "requires PHP 8.x" või "uus versioon programmist": sel juhul testi enne.
Pärast uuendust
- Vaata oma sait korraks üle, sealhulgas olulisemad funktsioonid (vorm, ostukorv, sisselogimine).
- Loe WordPressi või oma installeri kirju õnnestunud, ebaõnnestunud või tagasipööratud uuenduste kohta. Rollback tähendab, et jälle töötab vana (haavatav) versioon: lahenda see, sageli ka PHP, teema või mõne muu plugina uuendamisega, või plugina asendamisega.
- Vaata menüüst Saidi tervis (õppetund 5.4), kas on veel teateid.
Praktikas: kuidas see paneelis välja näeb
WordPressi haldusliideses:
- Töölaud > Uuendused: WordPressi, pluginate ja teemade olek. Siin näed ka, kas suurte versioonide automaatuuendus on sisse lülitatud.
- Pluginad: veerus Automaatuuendus saad iga plugina juures valida "luba" või "keela". Ülal saad Masstegevuste abil mitu korraga sisse lülitada.
- Välimus > Teemad: klõpsa teemal, et leida automaatuuenduse nupp.
Installatronis (DirectAdmin) seadistad selle iga installatsiooni juures menüüs Muuda > Seaded > Automaatuuendus. Softaculouses (cPanel) ja WP Toolkitis (Plesk) on sama valik installatsiooni seadete juures.
Kokkuvõte
- Tuntud turvaauke kasutatakse kiiresti ära; uuendamine peab toimuma kiiresti, automaatselt ja tagasipööratavalt.
- WordPress paigaldab väikesed versioonid automaatselt (alates 3.7-st); suured versioonid vaikimisi pärast klõpsu, või automaatselt, kui sa seda valid.
- Lülita automaatuuendused sisse enamiku pluginate ja teemade jaoks; alates 6.6-st pöörab WordPress ebaõnnestunud pluginauuendused automaatselt tagasi.
- Aegunud litsents või hüljatud plugin tähendab, et turvauuendusi ei tule: asenda see.
- Loe uuenduse järel changelogi ja saabunud kirju; rollback vajab sinupoolset lahendamist.
Test (quiz)
Ülesanne
Ülesanne A7.2: Kas su WordPress on ajakohane? Vaata oma saidi haldusest menüüst Töölaud > Uuendused, millist WordPressi versiooni kasutad, ja sisesta see koos oma domeeniga. Programm hangib uusima versiooni wordpress.org avalikust versiooni-API-st ja võrdleb: roheline, kui sul on uusim versioon, oranž, kui oled samas suures versioonis, kuid sul puudub väike uuendus, punane, kui kasutad vanemat suurt versiooni. Lisa ka, kui mitmel pluginal on automaatuuendus sisse lülitatud ja kui mitmel mitte, ning miks mitte.
Lisalugemist
Need artiklid kirjeldavad samme WebOké paneelides; teistes paneelides toimivad need sarnaselt.
- DirectAdmin juhend 13.5: Uuendused ja automaatsed uuendused
- Joomla ja WordPressi uuendamine Installatroni kaudu
- Viga 500 või "kriitiline viga" sinu veebisaidil (ka pärast WordPressi uuendust)
- Automaatuuenduste seadistamine (wordpress.org, inglise keeles): https://wordpress.org/documentation/article/configuring-automatic-background-updates/
