Modulul 7 · 7.2
Gestionarea actualizărilor
Modulul 7: Securitate · Timp de citire: 8 minute
Obiectiv de învățare: După această lecție veți putea configura actualizările astfel încât să se facă rapid și în siguranță, și veți ști ce să faceți cu un modul (plugin) care nu mai primește actualizări.
Concepte-cheie: versiune minoră, versiune majoră, actualizare de securitate, actualizări automate (core, module, teme), rollback, actualizări prin program de instalare (installer), modul abandonat, changelog, mediu de testare (staging) pentru actualizările majore
De ce actualizarea rapidă este mai importantă decât așteptarea prudentă
Lecția 7.1 a arătat: atacatorii caută breșe cunoscute pentru care există deja o actualizare. Între apariția unei reparații și primele scanări masive trec uneori doar câteva ore sau zile. Cine „așteaptă mai întâi o lună ca să vadă dacă actualizarea este bună” rămâne expus toată acea lună.
În același timp, o actualizare poate strica ceva. Soluția nu este așteptarea, ci să vă asigurați că actualizarea se face automat, rapid și poate fi anulată:
- actualizările minore și actualizările de module (plugin) automat;
- o copie de siguranță chiar înainte de actualizare, cu revenire automată dacă ceva merge greșit;
- actualizările majore se testează mai întâi în mediul de testare (staging) (lecția 8.3), dar în câteva zile, nu luni.
Versiuni minore și majore ale WordPress
WordPress numerotează versiunile astfel: 7.1.4:
- 7.1 este versiunea majoră (major release). Apar câteva pe an, cu funcții noi.
- .4 este o versiune minoră (minor release): reparații și actualizări de securitate, fără modificări majore.
Începând cu versiunea 3.7, WordPress instalează automat versiunile minore și actualizările de securitate, cu excepția cazului în care ați dezactivat acest lucru. Versiunile majore le instalați, în mod implicit, manual, cu un buton la Panou control > Actualizări. În wp-config.php puteți controla acest comportament:
define( 'WP_AUTO_UPDATE_CORE', 'minor' ); // implicit: doar versiunile minore
define( 'WP_AUTO_UPDATE_CORE', true ); // și versiunile majore
define( 'WP_AUTO_UPDATE_CORE', false ); // nimic automat (nerecomandat)Alegeți una dintre cele trei linii. Valoarea implicită (minor) este bună pentru majoritatea site-urilor; dacă programul dumneavoastră de instalare sau furnizorul de hosting vă actualizează automat și versiunile majore, acest lucru este de asemenea în regulă.
WordPress susține oficial doar cea mai recentă versiune majoră. Reparațiile de securitate sunt, pentru o perioadă, aplicate și pe serii mai vechi, dar nu vă puteți baza pe asta.
Module (pluginuri) și teme automat
Începând cu WordPress 5.5, la Module (Plugins) puteți activa Activare actualizări automate pentru fiecare modul în parte, iar la Aspect > Teme pentru fiecare temă. Activați acest lucru pentru majoritatea modulelor: acolo se află breșele (lecția 7.1).
Începând cu WordPress 6.6, WordPress verifică după o actualizare automată a unui modul dacă site-ul mai funcționează. Dacă actualizarea provoacă o eroare fatală, WordPress restaurează versiunea anterioară (un rollback) și primiți un e-mail. Acest lucru elimină cel mai mare risc al actualizărilor automate: un site alb pe care îl observați abia după o săptămână.
Programele de instalare precum Installatron (lecția 2.2) pot face același lucru: cu o copie de siguranță în prealabil și revenire în cazul în care actualizarea eșuează. Folosiți în mod conștient unul dintre cele două sisteme; nu se exclud reciproc, dar este bine să știți cine face ce.
Excepții în care uneori dezactivați actualizările automate:
- un modul despre care știți că versiunile majore schimbă adesea ceva (un constructor de pagini, un modul de magazin online cu integrări); actualizați-l după un test în mediul de testare (staging), dar rapid;
- o temă cu modificări în fișierele propriu-zise. Mai bine: puneți aceste modificări într-o temă copil (child theme) (lecția 5.2), astfel tema părinte se poate actualiza automat fără probleme.
Module (pluginuri) plătite
Modulele plătite primesc actualizări doar cât timp licența dumneavoastră este valabilă. O licență expirată înseamnă: fără actualizări de securitate. Țineți evidența licențelor (lecția 9.4). Iar un modul plătit descărcat de pe un site de descărcare nu primește deloc actualizări (lecția 5.3).
Modulul abandonat
Un modul fără actualizări de mult timp, sau care a fost eliminat din directorul de module de pe wordpress.org („Acest modul este închis”), nu mai primește reparații. Ce faceți:
- Verificați motivul. La un modul închis apare adesea motivul (de exemplu, o problemă de securitate). Dacă este vorba despre o problemă de securitate, acționați imediat.
- Căutați o alternativă întreținută activ (lecția 5.3), sau verificați dacă mai aveți nevoie de acea funcție.
- Înlocuiți în mediul de testare (staging), testați, apoi eliminați complet modulul vechi.
A lăsa un modul abandonat „pentru orice eventualitate” este exact riscul pe care doriți să îl evitați.
Citirea changelog-ului
La fiecare actualizare există un changelog: ce s-a schimbat. La Panou control > Actualizări sau pe pagina modulului (fila Dezvoltare sau Changelog). Fiți atenți în special la cuvinte precum „security”, „securitate” sau „fix vulnerability”: atunci doriți să actualizați cât mai repede posibil. Și la „breaking change”, „requires PHP 8.x” sau „versiune nouă de”: atunci testați mai întâi.
După o actualizare
- Verificați site-ul dumneavoastră, inclusiv funcțiile principale (formular, coș de cumpărături, autentificare).
- Citiți e-mailurile de la WordPress sau de la programul dumneavoastră de instalare despre actualizări reușite, eșuate sau anulate. Un rollback înseamnă că versiunea veche (vulnerabilă) rulează din nou: rezolvați problema, adesea actualizând și PHP, tema sau alt modul, sau înlocuind modulul.
- Verificați în Sănătate site (lecția 5.4) dacă mai există notificări.
În practică: cum arată într-un panou
În administrarea WordPress:
- Panou control > Actualizări: starea WordPress, a modulelor și a temelor. Aici găsiți și dacă actualizările automate pentru versiunile majore sunt activate.
- Module (Plugins): în coloana Actualizări automate, pentru fiecare modul „activare” sau „dezactivare”. Sus puteți activa mai multe simultan cu Acțiuni în masă.
- Aspect > Teme: faceți clic pe o temă pentru butonul de actualizări automate.
În Installatron (DirectAdmin) configurați acest lucru per instalare la Editare > Setări > Auto-Update. În Softaculous (cPanel) și WP Toolkit (Plesk) se găsește aceeași opțiune la setările instalării.
Rezumat
- Breșele cunoscute sunt exploatate rapid; actualizarea trebuie să fie rapidă, automată și reversibilă.
- WordPress instalează automat versiunile minore (din versiunea 3.7); versiunile majore implicit după un clic, sau automat dacă alegeți acest lucru.
- Activați actualizările automate pentru majoritatea modulelor și temelor; din versiunea 6.6, WordPress anulează (rollback) actualizările eșuate ale modulelor.
- O licență expirată sau un modul abandonat înseamnă fără actualizări de securitate: înlocuiți-l.
- Citiți changelog-ul și e-mailurile după o actualizare; o problemă de rollback se rezolvă activ.
Test
Exercițiu
Opdracht A7.2: Este WordPress-ul dumneavoastră la zi? Verificați în administrarea site-ului dumneavoastră, la Panou control > Actualizări, ce versiune de WordPress aveți și introduceți-o, împreună cu domeniul dumneavoastră. Programul preia cea mai recentă versiune de la API-ul public de versiuni al wordpress.org și compară: verde dacă aveți cea mai recentă versiune, portocaliu dacă sunteți în aceeași versiune majoră, dar vă lipsește o actualizare minoră, roșu dacă rulați o versiune majoră mai veche. Introduceți și câte module au actualizările automate activate și câte nu, și de ce nu.
Lecturi suplimentare
Aceste articole descriu pașii în panourile de la WebOké; în alte panouri funcționează similar.
- Manual DirectAdmin 13.5: Actualizări și actualizări automate
- Actualizarea Joomla și WordPress prin Installatron
- Eroarea 500 sau „eroare critică" pe site-ul dumneavoastră (inclusiv după o actualizare WordPress)
- Configurarea actualizărilor automate (wordpress.org, Engleză): https://wordpress.org/documentation/article/configuring-automatic-background-updates/
