Drošība

Šajā sadaļā apkopotas lietas, kas jāņem vērā, lai uzlabotu WordPress lapas drošību.

Drošības iestatījumiem tiek izmantots viens spraudnis - iThemes Security (formerly Better WP Security).

Kad spraudnis ir uzinstalēts to nepieciešams nokonfigurēt. Lai to izdarītu dodies uz Security > Setup sadaļu administrācijas panelī. Izej cauri konfigurācijas soļiem. Visus iestatījumus, kas saglabāti pēctam iespējams arī mainīt sadaļā Security > Settings.

Datubāzes tabulu prefikss

Vienmēr nomaini datubāzes tabulu prefiksus. Standartā šis ir "wp_", ko pats WordPress piedāvā nomainīt instalācijas laikā. Nomaini to uz kādu citu burtu virkni, bet atceries, ka beigās jābūt apakš svītrai.

Piemēram prefikss varētu izskatīties šādi - "tk96_", vai "smp88_".

Ja šo neesi nomainījis instalācijas laikā, to var izdarīt ar iThemes Security spraudni sadaļā Security > Settings > Tools > Change Database Table Prefix.

Lietotāju vārdi un paroles

Neizmanto vārdu "admin" veidojot lietotāju kontus, kā arī citus šāda veida vienkāršus vārdus. Tāpat neizmanto arī projekta nosaukumu, vai lapas domēnu veidojot lietotājvārdu. Vari izmantot piemēram "sem.dev".

Vienmēr lieto drošas paroles. Ieteicams izmantot WordPress iebūvēto paroļu ģenerēšanas iespēju, kas uzģenerēs drošu paroli.

Novecojuši spraudņi

Neizmanto novecojušus spraudņus, kas nav atjaunināti vismaz pēdējā pus gada laikā. Vislabāk izmanto populārākus spraudņus, kam ir vairāk lejupielāžu un labāki reitingi un atsauksmes. Sem biežāk izmantoto spraudņu saraksts pieejams šeit.

Administrācijas paneļa saite

Kad lapa ir uzlikta uz servera nomaini standarta administrāciajs paneļa saiti ( /wp-admin ) uz ko citu. To var izdarīt izmantojot iThemes Security spraudni.

Dodies uz sadaļu Security > Settings > Advanced > Hide Backend. Te var norādīt jauno saiti uz administrācijas paneli un pāradresāciju, kas notiks mēģinot ievadīt /wp-admin. Jaunajā saitē neizmanto vārdus "login", "admin", vai "signin", vai ko tamlīdzīgu, kas liktu noprast, ka saite ved uz administrāciajs paneli. Vari izmantot piemēram saīsinātu projekta nosaukuma formu un izstrādes gadu.

Piemēram projektam "Saldus Pašvaldība" var izmantot saiti slpv21.

Divu soļu autorizācija

Kad lapa ir uzlikta uz servera, pieslēdz arī 2 soļu autorizāciju. Tas pievienos papildus drošības slāni administrācijas panelim un papildus lietotājvārdam / parolei būs jāievada arī autentifikācijas kods, kas tiks nosūtīts uz mobilā tālruņa aplikāciju. Šim tev vajadzēs lejupielādēt telefonā aplikāciju - Google Authentificator.

Ir iespēja izmantot arī e-pastu. Šajā gadījumā pie katras ielogošanās reizes atnāks e-pasts, kas saturēs autentifikācijas kodu.

Šī funkcionalitāte ir iebūvēta spraudnī iThemes Security un, lai to ieslēgtu dodies uz Security > Settings > Features > Login Security un ieslēdz Two-Factor.

Pēc šī iestatījuma ieslēgšanas, pie nākošās ielogošanās reizes tiks piedāvāts uzstādīt divu soļu autorizāciju konkrētajam lietotājam.

XML-RPC un REST API

Atslēdz XML-RPC saskarni un ieslēdz apgrieztu piekļuvi pie REST API, ja tas nekonfliktē ar kādu spraudni, vai kodu izstrādātajā lapā.

To var izdarīt sadaļā Security > Settings > Advanced > WordPress Wteaks > API Access.

.htaccess

Ja tiek izmantots apache serveris, te ir kods, kas jāpievieno .htacecss failā, kas atrodas root direktorijā.

# Security
<IfModule mod_headers.c>
    Header always unset X-Powered-By
    Header unset Strict-Transport-Security
    Header set X-Frame-Options "SAMEORIGIN"
    Header set X-XSS-Protection "1; mode=block"
    Header set Pragma "no-cache"
    Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
    Header set X-Content-Type-Options "nosniff"
    Header always edit Set-Cookie (.*) "$1; SameSite; Secure; HttpOnly"
</IfModule>

Ja šī rindiņa Header always edit Set-Cookie (.*) "$1; SameSite; Secure; HttpOnly" nenostrādā, pamēģini to aizvietot ar Header set Set-Cookie HttpOnly;Secure;SameSite=Strict

To vari pārbaudīt izmantojot Secure Cookie Test rīku.

Failu atļaujas

Kad lapa pārcelta uz reālās vides servera, pārbaudi mapju un failu atļaujas ( permissions ) un, ja iespējams saliec ieteicamās vērtības.

Esošās un ieteicamās vērtības iespējams apskatīt iThemes Security panelī sadaļā Security > Settings > Tools > Check File Permissions. Nospied "Run" un tiks izvadīta tabula, kurā viss pārskatāmi uzrādīts.

Backup

Tā, kā lapai jābūt saviem backupiem, ko nodrošina klienta izvēlētais hostings, savus backup arhīvus neatstāj uz servera. Gan tos, kas palikuši pēc lapas pārnešanas, gan arī tos, kas izveidoti pēc update veikšanas.

Tavs kods

Arī tavs rakstītais kods var kļūt par lapas drošības risku. Ja tavs kods satur jebkādu darbību, kas iegūst informāciju no lietotāja un izmanto to citur, vienmēr pārbaudi, lai ievadītā informācija tiek pienācīgi apstrādāta, pirms tā tiek lietota citur kodā.

Tas attiecas gan uz dažādām formām, gan filtriem, gan arī citām vietām, kur tiek paņemta jebkāda lietotāja izvēle, vai ievade. Atceries, ka lapas saturu var pamainīt izmantojot pārlūka "Developer Tools", līdz ar to arī visas izvēles opcijas var tikt pamainītas un nosūtītas ar formu tavam skriptam, tāpēc katru šādu ievades vērtību pienācīgi apstrādā.

Vairāk par to vari izlasīt šeit.