Ve výchozím nastavení je administrační rozhraní Grav CMS (Admin Panel) dostupné přes relativní cestu /admin
. Výchozí administrátor má takové uživatelské jméno, které použijeme v registračním formuláři při prvním přihlášení. Obojí má svá potencionální bezpečnostní rizika. Jak jim předejít si řekneme v tomto článku.
Aktualizace 9. 11. 2024: Přečtěte si rovněž článek Obnovení zapomenutého hesla, ve kterém upřesňuji nezbytná nastavení související se změnou uživatelského jména a hesla.
Začneme tím, že web běžící na Gravu bude používat zabezpečený protokol HTTPS. Konkrétní nastavení je dáno použitým hostingem a jsou k němu obvykle podrobné návody v nápovědě poskytovatele hostingu. Pokud převádíte web z HTTP na HTTPS, nezapomeňte provést přesměrování původních odkazů z nezabezpečeného protokolu HTTP na zabezpečený protokol HTTPS. Zabezpečená komunikace se netýká pouze administračního rozhraní, ale veškeré komunikace, tedy např. i údajů odeslaných prostřednictvím kontaktního formuláře.
Uživatelské jméno je společně s heslem a cestou administračního rozhraní jedním z klíčů, které je třeba maximálně chránit. Je vhodné se vyvarovat jmen, která jsou předvídatelná, tedy např. admin
, administrator
nebo spravce
, ale volit jména typu vpedit
. V případě, že máte pro správce, či dokonce superadmina (uživatele s nejvyššími právy), nastavena z hlediska bezpečnosti nevhodná jména, můžete je změnit. Stačí přejmenovat příslušný .yaml
soubor ve složce /user/accounts
. Druhou možností je vytvořit nové uživatele s administrátorskými právy a původní deaktivovat nebo jim práva omezit. Pokud používáte uživatelská jména pro výpis autorů, např. prostřednictvím doplňku Stamp, pak těmto veřejným uživatelům doporučuji přidělit pouze nezbytně nutná práva (záleží na účelu účtu).
Dobře zvolené heslo je základem, aby byl účet dobře ochráněn. Grav CMS vyžaduje zadání silného hesla přes definici danou regulárním výrazem pro dané pole (velké písmeno, malé písmeno, číslice, znak), nicméně to je pouze jeden z faktorů. Dalším je, že by heslo mělo být jedinečné pro konkrétní instanci, a nemělo by být odhadnutelné. O tvorbě hesel bylo napsáno tisíce článků jinde, je tedy zbytečné zde uvádět, jak k této problematice přistupovat.
Máme vhodně nastavená uživatelská jména a uživatelé používají silná hesla. Co chtít více? Obvykle jsou přihlašovací formuláře snadno dohledatelné na výchozích cestách příslušných CMS. V případě Gravu je přihlašovací formulář do administračního rozhraní přístupný na relativní cestě /admin
. V rámci nastavení Admin Panelu lze uvedená cesta snadno změnit. Aby změna měla význam, musí se opět jednat, jako v případě uživatelského jména, o nějaký těžko odhadnutelný název. Určitě tedy ne /administrace
.
Pro zabezpečení jsme udělali téměř maximum. Chceme-li jít ještě dál, pak je tu 2FA (two-factor authentication). Tuto volbu musíme nejprve aktivovat v nastavení Admin Panelu u uživatele, který bude 2FA využívat. Naskenujeme QR kód v příslušné ověřovací aplikaci, čímž dojde ke spárování. Nyní se v přihlašovacím formuláři objeví další pole pro zadání jednorázového hesla, které je dostupné přes ověřovací aplikaci. Nezapomeňte si uložit obnovovací klíče, které lze použít v případě nouzového přístupu. Na rozdíl od jiných aplikací lze v případě Gravu poměrně jednoduše obnovit účet, jak v případě zapomenutého hesla, tak i v případě, kdy přijdeme o ověřovací aplikaci, případně i o obnovovací klíče. Je ovšem lepší uvedenému předcházet a obnovovací klíče mít pečlivě uloženy.
Napadá vás další možnost, jak Grav CMS zabezpečit? Dejte mi vědět některým z níže uvedených způsobů. Bude-li podnětná, rád ji doplním.
Nalezli jste v článku chybu, ať již gramatickou nebo faktickou? Článek prošel pouze autorskou korekturou a drobné nedostatky, jako překlepy nebo chybný slovosled, se v něm mohou vyskytovat. Pokud je objevíte, pomozte příspěvek upravit oznámením přes kontaktní formulář nebo na e-mail. Budou vám vděčni nejen autoři, ale zejména ostatní čtenáři.
Pomozte Grav.cz prolinkovat. Projekt Grav.cz se za dva roky provozu rozrostl a ve starších příspěvcích na Blogu mohou být uvedeny pasáže, které by stálo za to prolinkovat na konkrétní související řešení, která jsou uvedena v následujících příspěvcích. Pokud takové objevíte, pošlete informaci přes komunikační kanály uvedené v předchozím nebo následujícím odstavci.
Diskuze k článku není k dispozici. Pokud ale máte k tématu článku podněty, připomínky nebo dotazy, je možné je sdělit ve skupině na Facebooku, kde se k nim vyjádří nejen autor, ale případně i další diskutující.