Dokumentace

Allimedia Login & Prefix Guard – dokumentace

Poslední aktualizace: 24. 9. 2026

K čemu plugin slouží

Allimedia Login & Prefix Guard pomáhá zpevnit zabezpečení WordPressu dvěma způsoby:

  1. skryje běžnou přihlašovací adresu wp-login.php za vlastní neveřejnou URL;
  2. umožní bezpečněji změnit prefix databázových tabulek prostřednictvím řízeného procesu s kontrolou připravenosti, náhledem dopadu, ověřením výsledku a automatickým rollbackem při chybě.

Plugin je určen pro samostatné instalace WordPressu. Změna databázového prefixu není dostupná na WordPress Multisite.

Hlavní funkce

  • vlastní neveřejná adresa pro přihlášení do WordPressu;
  • automatické vygenerování náhodného přihlašovacího slugu při první aktivaci;
  • generátor nové přihlašovací adresy a tlačítko pro její zkopírování;
  • blokování přímých požadavků nepřihlášených návštěvníků na wp-login.php a wp-admin odpovědí 404;
  • zachování veřejných endpointů potřebných pro WordPress a pluginy, například admin-ajax.php a admin-post.php;
  • automatická úprava odkazů pro přihlášení, odhlášení, registraci a obnovu hesla;
  • změna prefixu databázových tabulek z administrace WordPressu;
  • generátor náhodného databázového prefixu;
  • náhled všech plánovaných změn před jejich provedením;
  • rozlišení základních tabulek WordPressu a tabulek pluginů nebo vlastních tabulek;
  • kontrola připravenosti instalace před změnou prefixu;
  • aktualizace metadat uživatelských rolí a oprávnění navázaných na prefix;
  • šest následných kontrol integrity po změně;
  • automatický ověřený rollback při neúspěšné kontrole;
  • jednorázový report výsledku v administraci;
  • příkazy WP-CLI pro generování, náhled a změnu prefixu;
  • bez sledování uživatelů, reklam, externích služeb a vzdáleně načítaných souborů.

Požadavky

  • WordPress 6.2 nebo novější;
  • PHP 8.1 nebo novější;
  • samostatná instalace WordPressu pro použití změny prefixu;
  • čitelný a zapisovatelný soubor wp-config.php pro změnu prefixu;
  • databázový účet s oprávněními potřebnými k přejmenování tabulek a úpravě metadat.

Plugin ve verzi 1.1.2 je testovaný do WordPressu 7.1.

Instalace

Instalace z adresáře WordPress.org

  1. Přihlaste se do administrace WordPressu.
  2. Otevřete Pluginy → Instalace pluginů.
  3. Vyhledejte Allimedia Login & Prefix Guard.
  4. Klikněte na Instalovat a následně na Aktivovat.
  5. Otevřete Nastavení → Allimedia Login & Prefix Guard.

Instalace ze ZIP souboru

  1. V administraci WordPressu otevřete Pluginy → Instalace pluginů.
  2. Klikněte na Nahrát plugin.
  3. Vyberte ZIP soubor pluginu a spusťte instalaci.
  4. Po dokončení plugin aktivujte.
  5. Otevřete Nastavení → Allimedia Login & Prefix Guard.

Po první aktivaci plugin automaticky připraví náhodný přihlašovací slug. Ochrana přihlašovací adresy se však nezapne, dokud ji výslovně nepovolíte a nastavení neuložíte.

Rychlé zprovoznění ochrany přihlášení

  1. Otevřete Nastavení → Allimedia Login & Prefix Guard.
  2. Ponechte vygenerovaný slug nebo klikněte na Vygenerovat přihlašovací URL.
  3. Zkopírujte a bezpečně si uložte celou zobrazenou přihlašovací adresu.
  4. Zapněte volbu Zapnout ochranu vlastní přihlašovací URL.
  5. Klikněte na Uložit ochranu přihlašování.
  6. Ještě před odhlášením otevřete novou adresu v anonymním okně prohlížeče a ověřte, že se zobrazí přihlašovací formulář.

Aktuální administrátorskou relaci ponechte během testu otevřenou. Pokud by nová adresa nefungovala, můžete nastavení ihned opravit bez zásahu přes hosting.

Ochrana přihlašovací adresy

Vlastní přihlašovací slug

Slug je poslední část adresy za doménou. Pokud je například doména webu https://example.cz a slug access-k7m4p9x2, výsledná přihlašovací adresa bude:

https://example.cz/access-k7m4p9x2/

Použijte dlouhý a obtížně odhadnutelný slug. Nejjednodušší je použít generátor v pluginu. Nepoužívejte názvy jako login, admin nebo prihlaseni, které lze snadno uhodnout.

Plugin odmítne rezervovaný slug a také slug, který již používá existující stránka webu. V takovém případě ponechá předchozí bezpečnou adresu.

Co se po zapnutí změní

Při aktivní ochraně:

  • vlastní adresa zobrazí standardní přihlašovací obrazovku WordPressu;
  • přímé otevření wp-login.php nepřihlášeným návštěvníkem vrátí odpověď 404;
  • přímé otevření wp-admin nepřihlášeným návštěvníkem vrátí odpověď 404 a neprozradí vlastní přihlašovací adresu;
  • odkazy WordPressu pro přihlášení, odhlášení, registraci a obnovu hesla používají vlastní adresu;
  • veřejné endpointy admin-ajax.php, admin-post.php, load-scripts.php a load-styles.php zůstávají dostupné.

Přihlášení stále zajišťuje standardní WordPress. Plugin nemění uživatelská jména, hesla ani způsob ověřování.

Jak vlastní adresu bezpečně změnit

  1. Přihlaste se přes aktuální soukromou adresu.
  2. Otevřete nastavení pluginu.
  3. Zadejte nový slug nebo použijte generátor.
  4. Zkopírujte si novou celou URL.
  5. Nastavení uložte.
  6. Novou adresu ověřte v anonymním okně.

Po uložení přestane původní vlastní adresa fungovat.

Obnova přístupu při ztrátě adresy

Pokud vlastní přihlašovací URL ztratíte:

  1. Přihlaste se do administrace hostingu, přes SFTP nebo správce souborů.
  2. Otevřete adresář wp-content/plugins/.
  3. Dočasně přejmenujte složku allimedia-login-prefix-guard, například na allimedia-login-prefix-guard-disabled.
  4. Přihlaste se přes standardní adresu https://vase-domena.cz/wp-login.php.
  5. Vraťte složce původní název, plugin znovu aktivujte a nastavte novou bezpečnou adresu.

Vypnutí pluginu obnoví přístup přes standardní wp-login.php. Uložené nastavení při běžné deaktivaci zůstává zachované.

Změna prefixu databázových tabulek

Důležité: změna prefixu je pokročilá databázová operace. Před jejím spuštěním vždy vytvořte úplnou externí zálohu databáze i souboru wp-config.php a ověřte, že ji umíte obnovit.

Plugin sám nevytváří zálohu databáze a neukládá záložní kopii wp-config.php na disk. Původní obsah konfigurace drží pouze v operační paměti po dobu synchronní operace, aby jej mohl použít při automatickém rollbacku.

Co je databázový prefix

Prefix je společný začátek názvů databázových tabulek WordPressu. Výchozí instalace často používají wp_, například:

wp_posts
wp_options
wp_users

Po změně na prefix lpg_8x2ks9_ budou odpovídající tabulky pojmenované například:

lpg_8x2ks9_posts
lpg_8x2ks9_options
lpg_8x2ks9_users

Plugin přejmenuje všechny tabulky začínající aktuálním prefixem, tedy nejen základní tabulky WordPressu, ale také odpovídající tabulky pluginů a vlastní tabulky.

Co udělat před změnou

  1. Vytvořte úplnou zálohu databáze.
  2. Vytvořte externí kopii souboru wp-config.php.
  3. Ověřte, že je wp-config.php čitelný a zapisovatelný.
  4. Zajistěte si přístup k hostingu, SFTP, správci souborů a databázi pro případ ruční obnovy.
  5. Pokud je to možné, proveďte změnu nejprve na testovací kopii webu.
  6. Naplánujte operaci na dobu s nízkou návštěvností.
  7. Dočasně omezte souběžné administrativní a databázové operace, například importy, aktualizace nebo zpracování objednávek.
  8. Spusťte náhled a pečlivě projděte report připravenosti i mapu tabulek.

Volba nového prefixu

Nový prefix může obsahovat malá písmena anglické abecedy, číslice a podtržítka. Pokud koncové podtržítko chybí, plugin jej doplní automaticky.

Doporučení:

  • použijte alespoň šest znaků před koncovým podtržítkem;
  • přidejte alespoň jednu číslici;
  • vyhněte se běžným hodnotám jako wp_, wordpress_, admin_, test_ nebo site_;
  • pro nejsnazší bezpečnou volbu použijte tlačítko Vygenerovat bezpečný prefix.

Náhled změny a kontrola připravenosti

Do pole Nový prefix zadejte požadovanou hodnotu a klikněte na Náhled změny prefixu. Náhled databázi ani wp-config.php nemění.

Plugin před provedením operace zkontroluje:

  1. zda existují všechny požadované základní tabulky WordPressu;
  2. kolika tabulek se operace dotkne a kolik z nich patří pluginům nebo vlastnímu řešení;
  3. zda jsou dostupná potřebná metadata rolí a záznam adresy webu;
  4. zda cílový prefix nekoliduje s existujícími metadaty rolí nebo uživatelských oprávnění;
  5. zda lze najít, přečíst, upravit a následně ověřit wp-config.php;
  6. zda je původní obsah konfigurace připravený pro rollback v operační paměti;
  7. zda databázový účet vykazuje potřebná oprávnění.

Součástí náhledu je úplná mapa ve tvaru aktuální tabulka → nová tabulka. Každý řádek je označen jako základní tabulka WordPressu nebo tabulka pluginu či vlastní tabulka.

Jakákoli neúspěšná povinná kontrola skutečnou změnu zablokuje.

Provedení změny

  1. Zkontrolujte, že náhled neobsahuje chybu a všechny cílové názvy jsou správné.
  2. Zaškrtněte potvrzení, že máte aktuální zálohu databáze a wp-config.php.
  3. Do pole závěrečného potvrzení přesně napište CHANGE PREFIX.
  4. Klikněte na Změnit databázový prefix.
  5. Během operace stránku nezavírejte, neobnovujte a nespouštějte stejnou akci v jiném okně.

Plugin v rámci operace:

  • aktualizuje metadata rolí a uživatelských oprávnění navázaná na původní prefix;
  • přejmenuje všechny nalezené tabulky s původním prefixem;
  • aktualizuje hodnotu $table_prefix v souboru wp-config.php;
  • synchronizuje aktivní databázové připojení WordPressu;
  • vyčistí související cache;
  • provede následné kontroly integrity.

Kontroly po změně

Po dokončení plugin ověří:

  1. že všechny plánované tabulky mají nový název a žádný původní název nezůstal;
  2. že wp-config.php obsahuje nový prefix;
  3. že metadata uživatelských rolí používají nový prefix;
  4. že metadata uživatelských oprávnění odpovídají původnímu stavu;
  5. že je dostupný záznam adresy webu;
  6. že aktivní databázový objekt WordPressu používá nový prefix.

Po úspěchu se administrátorovi zobrazí jednorázový integritní report.

Automatický rollback

Pokud některá následná kontrola selže, plugin se pokusí automaticky vrátit:

  • názvy databázových tabulek;
  • metadata rolí a uživatelských oprávnění;
  • původní obsah wp-config.php;
  • aktivní prefix databázového připojení.

Výsledek rollbacku plugin znovu ověří. Pokud se rollback dokončí, zobrazí informaci, že operace byla bezpečně vrácena. Pokud jej nelze dokončit, je nutné obnovit externí zálohu databáze a wp-config.php.

Automatický rollback je nouzová pojistka v rámci jednoho běžícího požadavku. Nenahrazuje úplnou externí zálohu a nemusí pomoci při výpadku serveru, přerušení PHP procesu, ztrátě databázového spojení nebo jiném problému mimo kontrolu pluginu.

Kontrola webu po změně

Po úspěšné operaci doporučujeme ověřit:

  • načtení veřejné části webu;
  • přihlášení a práci v administraci;
  • uživatelské role a oprávnění;
  • ukládání příspěvků, stránek a nastavení;
  • formuláře, e-shop a další důležité funkce;
  • pluginy používající vlastní databázové tabulky;
  • naplánované úlohy, integrace a externí systémy.

Zálohu ponechte minimálně do dokončení této ruční kontroly.

WP-CLI

Plugin registruje příkaz wp login-prefix-guard.

Vygenerování náhodného prefixu

wp login-prefix-guard generate

Náhled plánované změny

wp login-prefix-guard preview lpg_8x2ks9_

Příkaz zobrazí aktuální a nový prefix, počet tabulek, počet tabulek pluginů nebo vlastních tabulek, stav wp-config.php, report připravenosti, varování a mapu přejmenování.

Provedení změny

wp login-prefix-guard change lpg_8x2ks9_ --confirm-backup --yes

Parametr --confirm-backup potvrzuje, že máte aktuální externí zálohu databáze a wp-config.php. Parametr --yes potvrzuje provedení citlivé operace. Bez obou parametrů se změna nespustí.

Před příkazem change vždy spusťte preview a výstup zkontrolujte.

Přechod ze staršího balíčku pluginu

Aktuální WordPress.org balíček používá složku:

allimedia-login-prefix-guard

Verze 1.1.2 podporuje aktivaci i v případě, že je stále aktivní starší kopie ze složky login-prefix-guard. Při aktivaci WordPress deaktivuje načtený záznam starší kopie a aktivuje nový balíček. Nastavení pluginu zůstane zachované.

Plugin staré soubory automaticky nemaže. Po ověření funkčnosti aktuální verze odstraňte starou složku login-prefix-guard přes stránku Pluginy nebo správce souborů hostingu. Aktivní má zůstat pouze jedna kopie pluginu.

Aktualizace pluginu

Aktualizace instalujte standardně na stránce Nástěnka → Aktualizace nebo Pluginy → Instalované pluginy. Plugin je distribuovaný zdarma prostřednictvím WordPress.org a nepoužívá licenční klíč ani externí aktualizační server.

Před aktualizací produkčního webu je vhodné vytvořit zálohu. Samotná aktualizace pluginu databázový prefix nemění a nespouští jeho změnu automaticky.

Deaktivace a odinstalace

Deaktivace

Při deaktivaci pluginu:

  • se přestane používat vlastní přihlašovací adresa;
  • znovu začne fungovat standardní wp-login.php;
  • uložené nastavení zůstane v databázi pro případ opětovné aktivace;
  • dříve provedená změna prefixu databázových tabulek zůstane zachovaná.

Odinstalace

Při odstranění pluginu přes administraci WordPressu se smaže jeho nastavení a uložené jednorázové reporty.

Odinstalace nevrací databázový prefix na původní hodnotu. Přejmenování tabulek a odpovídající hodnota v wp-config.php musí zůstat zachované, aby WordPress mohl databázi dále používat. Pokud chcete prefix měnit znovu, proveďte novou řízenou změnu ještě před odinstalací pluginu nebo použijte ruční postup zkušeného správce.

Ochrana soukromí

Plugin:

  • neshromažďuje osobní údaje pro společnost Allimedia;
  • neposílá data na servery Allimedia ani třetím stranám;
  • neobsahuje analytiku ani sledovací skripty;
  • nenačítá vzdálené obrázky, skripty, styly ani fonty;
  • nezobrazuje reklamy ani veřejné odkazy typu „powered by“;
  • nevyžaduje účet, registraci ani licenční klíč.

Veškeré nastavení a kontroly probíhají na vašem WordPress webu a jeho databázi.

Co plugin nenahrazuje

Skrytí přihlašovací adresy omezuje běžný automatizovaný provoz a pokusy mířící přímo na známou URL. Není však samostatnou ochranou proti všem typům útoků.

Změna databázového prefixu také neopravuje zranitelnosti a nezabrání úspěšnému SQL injection útoku, pokud útočník dokáže názvy tabulek zjistit.

Vedle pluginu vždy používejte:

  • silná a unikátní hesla;
  • dvoufaktorové ověření administrátorů;
  • pravidelné aktualizace WordPressu, pluginů a šablon;
  • omezený počet administrátorských účtů;
  • pravidelné externí zálohy a ověřený postup obnovy;
  • HTTPS a bezpečné nastavení hostingu;
  • ochranu proti hrubé síle, firewall nebo vhodný bezpečnostní plugin podle potřeb webu.

Řešení problémů

Vlastní přihlašovací adresa vrací 404

  • Ověřte, že používáte celou aktuální URL z nastavení pluginu.
  • Zkontrolujte překlep, pomlčky a koncové lomítko.
  • Vymažte cache webu, CDN, reverzní proxy a prohlížeče.
  • V administraci otevřete Nastavení → Trvalé odkazy a beze změny nastavení klikněte na Uložit změny.
  • Ověřte konflikt s bezpečnostním pluginem, přesměrováním nebo pravidly webového serveru.
  • Pokud se nemůžete přihlásit, dočasně přejmenujte složku pluginu podle postupu pro obnovu přístupu.

wp-login.php nebo wp-admin vrací 404

Při zapnuté ochraně je to pro nepřihlášeného návštěvníka očekávané chování. Použijte vlastní přihlašovací URL uloženou při nastavení pluginu.

Po uložení se vlastní slug nezměnil

Zadaný slug může být rezervovaný nebo jej již používá existující stránka. Plugin v takovém případě z bezpečnostních důvodů zachová předchozí adresu. Použijte generátor a nastavení uložte znovu.

Náhled hlásí, že wp-config.php není zapisovatelný

Plugin musí soubor během operace přečíst, upravit a ověřit. Zkontrolujte vlastníka a oprávnění souboru nebo požádejte podporu hostingu o dočasné povolení bezpečného zápisu. Po operaci můžete oprávnění znovu zpřísnit.

Samotná konstanta DISALLOW_FILE_EDIT nezakazuje změnu prefixu přímo, ale plugin přesto musí mít možnost zapsat do wp-config.php.

Kontrola připravenosti hlásí chybějící základní tabulku

Databáze WordPressu není v očekávaném stavu. Změnu prefixu nespouštějte. Nejdříve ověřte integritu databáze, správnost aktuálního prefixu a případnou neúplnou migraci nebo obnovu webu.

Náhled hlásí kolizi tabulek nebo metadat

V databázi již existuje cílový název tabulky nebo metadata používající nový prefix. Zvolte jiný, ideálně vygenerovaný prefix. Existující tabulky ani metadata nemažte bez znalosti jejich původu.

Kontrola databázových oprávnění selhala

Databázový účet nemusí mít oprávnění potřebná pro přejmenování tabulek. Obraťte se na správce serveru nebo podporu hostingu. Oprávnění neposilujte bez rozmyslu a po operaci je případně vraťte na původní úroveň.

Operace byla automaticky vrácena

Jedna z následných kontrol integrity neprošla. Přečtěte zobrazenou zprávu, ověřte stav webu a příčinu odstraňte před dalším pokusem. Neopakujte změnu bez nového náhledu a kontroly záloh.

Plugin hlásí neúplný rollback

Okamžitě omezte provoz webu a obnovte poslední externí zálohu databáze společně s odpovídající kopií wp-config.php. Neobnovujte pouze jednu z těchto částí, protože prefix v konfiguraci musí odpovídat názvům tabulek.

Po změně prefixu nefunguje některý plugin

  • Zkontrolujte integritní report Allimedia Login & Prefix Guard.
  • Vymažte objektovou cache, cache webu a případnou cache hostingu.
  • Ověřte, zda dotčený plugin nepoužívá napevno zadané názvy tabulek místo prefixu WordPressu.
  • Zkontrolujte jeho dokumentaci a chybový log serveru.
  • Pokud je web nestabilní a problém nelze rychle odstranit, obnovte externí zálohy.

Změna prefixu není na Multisite dostupná

Jde o záměrné bezpečnostní omezení. Multisite používá složitější mapu tabulek pro jednotlivé weby a změnu je nutné řešit individuálně se zkušeným správcem databáze.

Časté dotazy

Změní plugin soubory jádra WordPressu?

Ne. Plugin neupravuje soubory jádra, pluginů ani šablon. Při výslovně potvrzené změně databázového prefixu přejmenuje databázové tabulky, upraví související metadata a aktualizuje pouze hodnotu prefixu v wp-config.php.

Vytváří plugin zálohu databáze?

Ne. Úplnou zálohu databáze musíte vytvořit předem prostřednictvím hostingu, nástroje pro správu databáze, WP-CLI nebo zálohovacího řešení.

Ukládá plugin zálohu wp-config.php na server?

Ne. Původní obsah drží pouze v operační paměti během konkrétní synchronní operace pro případ automatického rollbacku. Na disk žádnou záložní kopii konfigurace nevytváří.

Je změna prefixu vratná?

Prefix lze později změnit znovu stejným řízeným postupem. Automatický rollback se používá pouze při selhání aktuálně prováděné operace. Plugin neobsahuje samostatné tlačítko „vrátit poslední změnu“.

Přejmenuje plugin také tabulky jiných pluginů?

Ano, pokud jejich názvy začínají aktuálním prefixem WordPressu. V náhledu jsou označené jako tabulky pluginů nebo vlastní tabulky. Tabulek s jiným začátkem názvu se operace nedotkne.

Funguje změna prefixu na WordPress Multisite?

Ne. Plugin tuto operaci na Multisite záměrně blokuje.

Funguje obnovení hesla a registrace přes vlastní URL?

Ano. Plugin upravuje standardní odkazy WordPressu pro přihlášení, odhlášení, obnovu hesla a registraci tak, aby používaly vlastní přihlašovací adresu.

Přesměruje plugin útočníka z wp-login.php na tajnou adresu?

Ne. Přímý požadavek na výchozí přihlašovací adresu vrátí 404, aby vlastní slug neprozradil.

Mohu po změně prefixu plugin deaktivovat nebo odstranit?

Ano. WordPress bude nový prefix používat podle hodnoty v wp-config.php. Deaktivace ani odinstalace však názvy tabulek nevrací zpět.

Odesílá plugin data společnosti Allimedia?

Ne. Plugin nekontaktuje servery Allimedia ani jiné externí služby.

Potřebuji licenční klíč?

Ne. Plugin je zdarma, aktualizuje se z WordPress.org a licenční klíč nepoužívá.

Jak zapnu češtinu?

Nastavte jazyk webu nebo jazyk svého uživatelského profilu na češtinu. WordPress dostupný překlad automaticky stáhne z translate.wordpress.org a rozhraní pluginu přepne do češtiny.

Informace pro vývojáře

Po změně prefixu lze doplnit nebo zpřísnit následné kontroly pomocí filtru:

allimedia_lpg_prefix_verification

Filtr obdrží výsledek kontrol, původní prefix a nový prefix. Spouští se ještě před rozhodnutím o automatickém rollbacku. Návratová hodnota musí zachovat očekávanou strukturu s položkami passed a checks.

Při vlastních kontrolách postupujte opatrně. Výsledek označený jako neúspěšný spustí automatický rollback celé operace.

Podpora

Při hlášení problému uveďte verzi WordPressu, PHP, pluginu, zda jde o běžnou nebo Multisite instalaci, přesné znění chyby a relevantní část serverového logu. Do veřejného požadavku nevkládejte hesla, přístupové údaje, obsah wp-config.php, databázové přihlašovací údaje ani soukromou přihlašovací URL.

Picture of Aleš Zita

Aleš Zita

Jsem webový vývojář a zakladatel Allimedia. Tvorbě webů, e-shopů a webových aplikací se věnuji od roku 2009. Specializuji se na WordPress, WooCommerce, programování v Nette a Laravelu, vývoj pluginů na míru, integrace a technickou optimalizaci webů. Mám zkušenosti s desítkami reálných projektů pro firmy a podnikatele a jsem také autorem vlastních pluginů publikovaných v oficiálním repozitáři WordPress.org.