Občas je zajímavé podívat se, kdo na Váš web chodí a hlavně – kam. Např. pluginy jako Wordfence a RankMath (404 monitor) jsou super v tom, že toto umí logovat a vy pak podle toho můžete upravovat zabezpečení webu.
- Wordfence umí LifeTrafiic, tj. sledování aktuálního provozu webu. Když se někdo pokusí přihlásit se, kam nemá, a je na blacklistu Wordfence, plugin ho okamžitě zablokuje. Stejně tak, pokud se někdo snaží sáhnout na obecně známé cesty WP napřímo zvenčí, a další.
- RankMath umí monitorovat 404 (tj. pokud se někdo dostane na stránku, která neexistuje) – je pak také zajímavé sledovat, na jaké stránky se snaží okolní svět chodit.
Výhodou WordPress je, že je jednoduchý na instalaci i použití a ušetří spoustu práce, která by se pak musela řešit jinými frameworky a knihovnami. Na druhou stanu je cenou za tuto popularitu to, že je struktura webu předem známá (přihlašovací stránky, struktura webu aj.).
Jednou z možností zabezpečení je schování defaultní admin stránky pro přihlášení, tj. /wp-login.php.
Bez pluginu
- Vyberete si nový název přihlašovací stránky
- v mém případě je to admin-login.php
- přihlásíte se na FTP a ve složce webu najdete soubor wp-login.php,
- stáhnete ho k sobě do počítače,
- otevřete ho v text. editoru a nahradíte všechny výskyty stránky “wp-login.php“ za nový název (bod 1)
- přejmenujete stejně tak i samotný soubor, tj. už se nebude jmenovat wp-login.php, ale podle nového názvu z bodu 1),
- stáhnete k sobě znovu soubor wp-login.php (pouze jako zálohu původního, tento krok není povinný),
- upravený a přejmenovaný soubor nahrajete zpět na FTP,
- soubor wp-login.php z FTP smažete (už nebude potřeba),
- do functions.php (ideálně child theme) vložíte řádky (“VASE-NOVA-URL” nahradíte za nový název stránky) :
/**** custom **** /
/*
* Change WP Login file URL using "login_url" filter hook
*/
add_filter( 'login_url', 'custom_login_url', PHP_INT_MAX );
function custom_login_url( $login_url ) {
$login_url = site_url( 'VASE-NOVA-URL', 'login' );
return $login_url;
}
A to je celé. Od této chvíle se bude stránka wp-admin automaticky přesměrovávat na nový název stránky, nikoli na původní wp-login.php.
S pluginem
Jako na většinu věcí i tady existuje plugin pro Wordpress, který se o takové přesměrování také postará. Pokud nechcete jít cestou bez pluginu, pak je i toto možnost, jak wp-admin stránku schovat.
Nastavení -> Permalinks (trvalé odkazy) -> Change wp-admin login sekce.
- Login URL si můžete změnit, na co chcete, to je čistě na vás.
- Osobně měním Redirect URL na wp-logiin (ano, ta dvě “i” jsou správně a schválně).
- Je to z důvodu toho, že nechci, aby případný nezvaný host nepoznal (alespoň na první pohled),
- po zadání URL www.stranka.cz/wp-admin vrátí status 301 (přesměrováno) a přesměruje
- následné přesměrování pak vrátí stránku www.stranka.cz/wp-admiin a status 404 (not found) – což je chtěné.
- Nechci vrátit ani stavovým kódem informaci o tom, že stránka existuje. Totiž – přesměrování na existující stránku z té přihlašovací (wp-login) je samo o sobě podezřelé a dává najevo, že web běží na WordPress (jinak by nebyl důvod stránku přesměrovat, když na webu není).
- Je to z důvodu toho, že nechci, aby případný nezvaný host nepoznal (alespoň na první pohled),
V případě problémů s login stránkou (na kterou se jako nepřihlášení dostanete z wp-admin stránky), stačí jít na FTP, plugin najít a deaktivovat – vše pak bude fungovat jako předtím.