Lekce 7 - Bezpečnost ve WordPressu
V minulé lekci, Nový editor Gutenberg vs starý TinyMCE, jsme si představili editor Gutenberg a udělali si takové menší srovnání.
Dnes se podíváme na to, jak je to s bezpečností Wordpressu.
WordPress.org (nikoliv WordPress.com) má jednu obrovskou výhodu a zároveň nevýhodu v jednom. A tou je, že je open-source službou.
V čem tedy problém tkví?
Chybám se nevyhne nikdo a odhalení chyb není tak náročné, když
téměř 1/3
internetu daný systém používá. Pravidelně
tudíž vidím různé podněty ke zlepšení jádra, návody, jak obejít
přihlášení nebo přímo ukázky kódu, s nímž lze využít specifickou
část WordPressu pro nekalé účely.
Nicméně výhoda je zřejmá - velmi rychlé nalezení chyb a u těch
akutních i rychlá oprava. Ale když se řekne A
, musí se říci
i B
. V našem případě pluginy.
V dnešním článku se tak zaměříme na 4 hlavní body zabezpečení - WordPress sám, pluginy, šablony a uživatelé.
WordPress
CMS jako takové už za ta léta poměrně uzrálo a až na pár nedokonalostí si vede celkem dobře. Dovnitř se dostat lze poměrně obtížně a bez toho, aniž by se jednalo o opravdu ostříleného hackera, se nemusíte bát.
Aktuálně si tak nejsem vědom žádných snadných metod a ty složité
jsou na půl hodinové video návody s přímou ukázkou. Pro nás tedy stačí
vědět - silné heslo na databázi, silné heslo na
FTP (ideálně použít SSH) a u instalace WordPressu zvolit jiný
prefix tabulek, než wp_
.
Jiný prefix tabulek se hodí vždy, protože při nových verzích útočníci hledají u pluginů a šablony chyby. Tudíž změna prefixu jim ztíží postup a to může ledacos zachránit.
Avšak do backendu mají přístup uživatelé.
Uživatelé
Ano, jedním z největších problémů jsou vždy
uživatelé. Často u svých klientů narážím na to, že heslo je typu
nazevwebu2018
nebo anicka123
a v ideálním případě
se přihlašovací jméno heslu dost podobá.
Taková hesla okamžitě měníme a zavádíme nové procesy, aby heslo opravdu bylo ve tvaru:
12
(a více) znaků- znaková sada
[a-ž]
,[A-Ž]
,[0-9]
,[@#$^&*-+-*]
A samozřejmě se heslo nechává generovat. Obvykle bereme 3. náhodně vygenerované. V ideálním případě se ihned zavede jakýkoliv správce hesel.
Důležité je též přihlašovací jméno. Útočníci běžně zkoušejí název webu, nebo “admin” atp. Viz ukázka níže.
Co já dělám je to, že vytvářím například
jmeno_prijmeni
, web_jmeno
nebo
prefix_jmeno
. A zatím se mi nestalo, že by to někdo prolomil a
to spravuji weby s tisícovkami aktivních uživatelů denně. Čili tento
postup (spolu s dalšími v tomto článku) se zdá být užitečný.
Pluginy
Nyní se podíváme, jak se chránit a jaké nezbytné kroky musíte udělat pro ochranu svého webu. Až budete mít web na produkčním prostředí (tzn. na finální doméně), aktivace bezpečnostního pluginu je první krok.
Za sebe mohu doporučit WordFence, který
kontroluje pluginy, WordPress a různé verze souborů v jádru. Pokud se
liší, dá okamžitě vědět. Pokud se tam vyskytuje soubor, který na daném
místě nemá co dělat, víte to ihned. Má i další funkce jako
fail2ban (po X
pokusech zablokuje uživatele),
whitelist různých funkcí (pokud nějaká akce webu není
prokazatelně validní, radši zablokuje) a plno dalších vychytávek.
Zablokování funkcí a průběhu událostí je běžná věc. WordFence vás informuje a pokud danou akci spustíte vy (nebo jiný admin), máte možnost ji povolit a přidat do onoho whitelistu.
Dalším krokem, který ovšem probíhá nonstop, je výběr a ověřování pluginů. Některé menší i větší mají chyby, a proto je jasné doporučení:
Vybírejte obezřetně. Placené pluginy lze těžko ověřit oproti těm v repozitáři wordpress.org. Vždy koukejte na hodnocení, odpovědi na dotazy a poslední aktualizaci.
Velmi zvažte každý plugin, který má být na vašem webu nasazen. Data, která každý plugin s sebou nosí, se postupně budou kupit s dalšími.
Šablony
U šablon je to v podstatě to samé v bledě modrém. Akorát je zde navíc důležitá i životnost a funkce, protože na šabloně stojí celý web. Vybírejte středně staré (max rok zpět) a hlavně pravidelně aktualizované. Co se týká placených šablon, s nimi je vždy těžké počínání.
Nikdy totiž nelze říci, jakou šablonu zvolit. Je to téměř nemožné.
Prakticky je to šance 50
/50
, že učiníte dobrý
nákup.
Aktualizace
Ať už půjdete cestou placených pluginů, šablon, nebo všeho zdarma, důležité je vždy jedno. Aktualizujte. Často, vždy a vše. Pokud měsíc nebudete aktualizovat, můžete stát, že se přehodil systém ukládání dat a web padne. A pak už vás zachrání jen odborná pomoc.
Nutno dodat, že toto se často nestává. Ale při správě velkých webů je každá aktualizace utrpení, protože spoléháte, že 3. strana odvedla svou práci dobře.
Závěr
Závěrem tedy mohu říci jen toto: aktualizujte, pečlivě vybírejte a volte silná hesla. Vše popsané výše je minimální snaha, s níž ale máte obrovskou šanci nezabřednout do problémů, o nichž se dá běžně přečíst v článcích s názvem “Proč nevolit WordPress a jeho problémy”.
Každá z rad výše zabere 5 minut času a zachrání hodiny a hodiny obnovování souborů a databáze.
To je pro dnešní lekci vše.
Kdo stojí za článkem?
Ahoj, jmenuji se Pavel Mareš a od roku 2012 pracuji v digitálním prostředí. Prošel jsem si kódováním, vývojem webů, grafikou a v tuto chvíli pomáhám svým klientům tvořit kvalitní stránky na míru.
Nabízím služby - UX, UI (grafika), kódování (Gulp, SASS, HTML5, CSS3, JS) a nasazení webu na WordPress (vlastní šablony). Můžete se podívat na mé reference.
Rychlý kontakt: +420 776 256 020 / info@mares-pavel.cz
V příštím díle, Optimalizace a cache, se podíváme na optimalizaci a cache.