Přeskočit na obsah
@365tipu
  • Domů
    • Práce na dálku
    • Twitter for dummies
    • Jak na Mastodon
    • Facebook a marketing
    • Návod pro Instagram
    • Jak na LinkedIn
    • Bezpečný Internet
    • Bezpečnost pro novináře
    • Soukromí na Facebooku
    • Pomocník webdesignera
    • Jak na WordPress
    • Nepostradatelné software
      • Jak na Windows 11
      • Jak na Windows 10
      • Jak na iPhone/iPad
      • Jak na Mac OS
      • Jak na Apple TV/TV+
      • Jak na Apple Watch
      • Jak na Apple AirTag
      • Microsoft Office
      • Linux
    • Jazykový koutek
    • GTD
    • Filmy a TV seriály
    • Recenze
    • Chytrá domácnost
      • Chytrá domácnost
      • Jak na Google Home
      • Amazon Echo a Alexa
      • Apple HomePod
      • Jak na Raspberry Pi
      • Jak na QNAP NAS
      • Netatmo
    • Jak na Home Assistant
  • Všechny štítky
  • Odběr e-mailem
  • RSS/XML
  • Kontakt
    • Kontakt
    • Twitter
    • Facebook
    • BlueSky
    • Mastodon
      • Threads
    • Zásady Cookies (EU)
10. 3. 2022 podle 365tipů
Bezpečnost, Software, WordPress

TIP#2115: WordPress a XMLRPC? Proč nefunguje aplikace? Je XMLRPC bezpečné? Mám ho zakázat?

Ve většině případů na XMLRPC u WordPressu nenarazíte – zpravidla poprvé v okamžiku, kdy budete chtít zprovoznit mobilní aplikaci a ta se odmítne připojit a jako důvod uvede chybu 403 a zkratku XMLRPC. 

XMLRPC je protokol umožňující napojení na web na WordPressu a přes API poté s webem pracovat – vkládat, opravovat, mazat články, stránky, média, komentáře, šablony, uživatele, pluginy a nastavení webu (detailně v XML-RPC WordPress API).

Zpravidla se to používá přes mobilní aplikaci či desktopového klienta  (viz například Proč je dobré mít na tabletu (či mobilu) aplikaci od WordPressu?) ale má řadu dalších možností využití.

XMLRPC je na WordPress.com automaticky funkční, ale pokud budete mít vlastní hosting, tak může být zakázáno pravidly v .htacess (ale o tom až dále) nebo jinak blokováno vaším hostingem (ale o tom také až dále). Už pár let není v nastavení WordPressu možnost zapnout/vypnout, jak tomu bylo dříve. 

Je XMLRPC bezpečné? 

XMLRPC je tak bezpečné, jak jsou bezpečná hesla uživatelů, kteří by se mohli přes XMLRPC přihlásit. Je to stejné přihlášení, jako když se přihlašují přes web, takže v tom není rozdíl. Tedy až na to, že na XMLRPC nemůžete přidat dvoufaktorové ověření, kterým můžete chránit přihlášení klasické.  A je nutné mít jistotu, že nikde není používáno bez https.

Před lety bylo XMLRPC děravé, takže se mohlo stát nástrojem útoku, ale totéž je pravda o celém WordPressu, pluginech či šablonách. Vždy se může objevit bezpečnostní chyba. 

Máte XMLRPC povolené a přemýšlíte nad zákazem? Klidně můžete (přes .htaccess nebo pluginem, viz dále), zlepší to bezpečnost (odstraněním jedné možné cesty jak dovnitř). Ale žádný extra zásadní důvod k tomu není, byť o kousek dál u pingback je něco k zvážení.

Jedna z nevýhod XML RPC oproti novějšímu REST API ale zůstává – přihlášení je klasicky jménem a heslem (REST API používá bezpečný OAuth) a snadno se tak dá zneužívat pro brute force útoky

Konečné doporučení tedy je – pokud XMLRPC nepotřebujete nutně, tak ho mějte zakázané. Sice tím přijdete o možnost používat aplikaci WordPressu, ale nic vám nebrání přistupovat klasicky přes web – funguje to velmi dobře.

K čemu XMLRPC slouží?

K výše uvedenému použití v aplikacích WordPressu – mobilní i desktopové. Pokud nic z toho neplánujete používat, tak nemusíte XMLRPC mít povolené. 

JetPack plugin používá XMLRPC pro některé pokročilejší funkce, ale žádná z nich není v neplacené podobě – bude dobře fungovat i bez XMLRPC. Navíc by JetPack měl snad už přejít na REST API. 

Pro pingback/trackback funkčnost mezi vaším webem a dalšími blogovacími platformami. Co navíc, tuhle funkčnost rozhodně nechcete mít povolenou (slouží k přidávání komentářů). Zakázat samostatně pingbacky můžete přes plugin Disable XML-RPC Pingback plugin 

Právě pingback funkčnost se ale (přes XMLRPC) používá pro DDoS – snadno se tím zahlcuje server, bez ohledu na to, jestli se výsledný pingback někam ukládá.

TIP: Bezpečnostní pluginy, jako například WordFence, umí pracovat i s útoky na XMLRPC. Takže vůbec neváhejte si je pořídit 

Jak XMLRPC zakázat

Nejjednodušší způsob zákazu XMLRPC je .htaccess (v rootu vašeho webu) a něm následující

# START XML RPC BLOCKING
<Files xmlrpc.php>
Order Deny,Allow
Deny from all
</Files>
# FINISH XML RPC BLOCKING

Uvedené zakáže kompletně přístup k xmlrpc.php – pokud byste chtěli, můžete upravit povolením z určitých (vašich, bezpečných) IP adres.

Pokud nemůžete opravovat/vytvářet .htaccess můžete využít plugin Disable XML-RPC plugin – nainstalujte a aktivujte pro zákaz, deaktivuje pro povolení. 

Případně pokročilejší  REST XML-RPC Data Checker plugin kde je možnost zakazovat a povolovat i další věci či různé funkčnosti (včetně pingbacků). Chcete-li něco opravdu užitečného a pokročilejšího, tak toto je ta lepší varianta. 

Pokud si WordPress sami programujete, tak je dobré vědět, že XMLRPC je možné zakázat následujícím filtrem:

add_filter( 'xmlrpc_enabled', '__return_false' );

Což mimo jiné znamená i to, že vaše šablona může mít možnost povolení/zakázání XMLRPC. Ale nebývá to časté. 

XMLRPC je navíc možné zakazovat v konfiguracích HTTP serverů – a to váš hosting mohl udělat za vás.  V případně nefunkčnosti tedy ověřujte i tam.

Jak ověřit, jestli mám XMLRPC funkční? 

Snadno, zkuste otevřít vášserver/xmlrpc.php – pokud vrátí 403 nebo nějakou jinou chybu (například “Missing index page or access denied!”), tak je XMLRPC zakázané. Pokud vrátí XMLR-PRC server accepts POST request only, tak je XMLRPC povolené. 

Nezapomeňte, že do XMLRPC se může “míchat” i některý z bezpečnostních pluginů – WordFence má například v nastavení i věci týkající se právě XMLRPC.

Další tipy týkající se WordPressu

  • TIP#3228: Co byste po instalaci WordPressu měli smazat či změnit? Další soubory

    TIP#3228: Co byste po instalaci WordPressu měli smazat či změnit? Další soubory

    O install.php už byla řeč v samostatném tipu (Co byste po instalaci WordPressu měli smazat či změnit? install.php – pozor ať nedopadnete špatně), ale to zdaleka není vše, co je vhodné po…

  • TIP#3201: WordPress Transients. Proč byste měli dávat pozor na další věc

    TIP#3201: WordPress Transients. Proč byste měli dávat pozor na další věc

    Transienty jsou jednoduchý způsob, jak do WordPressu odložit výsledek nějaké nákladnější operace: například odpověď z externího API, složitý databázový dotaz, vygenerovaný seznam článků, statistiky nebo mezivýsledek z pluginu.  Související příspěvky TIP#2304: Je…

  • TIP#2981: Jak v Uptime Kuma nastavit upozornění na výpadek e-mailem?

    TIP#2981: Jak v Uptime Kuma nastavit upozornění na výpadek e-mailem?

    Provozuji pár serverů (jako třeba tenhle, 365tipů) a to jestli běží (a jak „rychle“ běží) si hlídám pomocí Uptime Kuma. Nejprve na QNAP NAS, později v Dockeru na RaspBerry Pi 5.  Související…

  • TIP#2967: Proč nejít “blogovat” na Seznam Médium

    TIP#2967: Proč nejít “blogovat” na Seznam Médium

    Nedávno jsem s jedním klientem řešil otázku kde blogovat. Já doporučoval “na vlastním” jako ideální, a když už ne, tak něco jako Substack, kde to nic nestojí a je tam i hodně…

  • TIP#2957: Co když WordPress náhle začne místo článků (všech, ne jen některých) vracet chybu 404?

    TIP#2957: Co když WordPress náhle začne místo článků (všech, ne jen některých) vracet chybu 404?

    Zvláštní věc, která se mi stala už tuším víckrát. Na FeedIT.cz naposledy před pár dny. Náhle místo článků začal web vracet 404ky. Nedošlo k žádné aktualizaci, žádné změny v pluginech, prostě nic. …

  • TIP#2918: Jak z WordPressu smazat všechna média?

    TIP#2918: Jak z WordPressu smazat všechna média?

    V rámci úklidu na rychlofky (#tyden) to nebylo jenom o smazání záplavy příspěvků, ale také prakticky všech médií (attachments), které ty příspěvky měly.  Související příspěvky TIP#774: Má smysl si na WordPress.com zapínat…

  • TIP#2907: Jak ve WordPressu smazat velké množství příspěvků? Ideálně všechny?

    TIP#2907: Jak ve WordPressu smazat velké množství příspěvků? Ideálně všechny?

    V době kdy #tyden měl webovou verzi se na rychlofky.cz nashromáždilo dobrých 12 tisíc (velmi krátkých) příspěvků. Roky starých a také nenavštěvovaných, Google (vyhledávače) nemají rády krátké příspěvky a neumístí je do…

  • TIP#2871: WordPress a jak docílit toho, aby obrázky v příspěvcích měly stín?

    TIP#2871: WordPress a jak docílit toho, aby obrázky v příspěvcích měly stín?

    Chcete trochu vylepšit příliš plochý design článků a svého webu na WordPressu? Můžete to udělat tak, že obrázky opatříte stínem. Budou vystupovat z jinak plochého článku a vylepší jeho čitelnost.  Související příspěvky…

  • TIP#2807: Bit.ly zavádí reklamu a splash screen? Co s tím? Jak na vlastní zkracovač?

    TIP#2807: Bit.ly zavádí reklamu a splash screen? Co s tím? Jak na vlastní zkracovač?

    Bit.ly, jeden z mála původních a široce rozšířených zkracovačů adres (URI) za pár měsíců zavede zobrazování reklamy pro ty, kdo kliknou na bit-ly odkaz. Doposud to fungovalo aniž by kliknutí bylo jakkoliv…

  • TIP#2799: Sdílíte nějaký odkaz? Měli byste ho vyčistit od věcí, které tam nemají zůstat

    TIP#2799: Sdílíte nějaký odkaz? Měli byste ho vyčistit od věcí, které tam nemají zůstat

    Zapeklitá záležitost, něco jste si otevřeli na Internetu nebo v aplikaci a chcete to nasdílet pomocí odkazu (link). V mnoha případech se k odkazu samotnému přidá řada dalších zbytečných věcí. Někde, třeba…

  • TIP#2791: Mám na webu WordPress v “anglické” verzi, je bezpečné přeinstalovat (změnit) na cs_CZ (či opačně)?

    TIP#2791: Mám na webu WordPress v “anglické” verzi, je bezpečné přeinstalovat (změnit) na cs_CZ (či opačně)?

    Může se vám to stát velmi lehce a možná si toho ani nevšimnete. Máte českou verzi WordPressu a při některé z aktualizaci si nevšimnete, že vám vlastně nenabízí českou, ale anglickou. To…

  • TIP#2753: Proč mi aktualizace WordPressu cs_CZ (českého) nabízí aktualizace na en_US?

    TIP#2753: Proč mi aktualizace WordPressu cs_CZ (českého) nabízí aktualizace na en_US?

    Právě teď je to aktuální. Objevil se WordPress 6.6 a pro všechny weby s cs_CZ to nabízí (a vlastně i dost vnucuje) aktualizaci na tuto verzi, jenže en_US. Související příspěvky TIP#3201: WordPress…

  • TIP#2733: Vývojová prostředí pro lokální vývoj pro WordPress (a webdesign vůbec) 

    TIP#2733: Vývojová prostředí pro lokální vývoj pro WordPress (a webdesign vůbec) 

    Lokální vývojové prostředí vám umožní na vašem lokálním stroji mít vše co potřebujete pro provozování webu (s WordPressem, ale může to být i cokoliv jiného) – tedy web server (Apache, například), SQL…

  • TIP#2592: Ještě stále máte na webu Google AMP? Je to zlo, rychle s tím pryč

    TIP#2592: Ještě stále máte na webu Google AMP? Je to zlo, rychle s tím pryč

    Je to vlastně už docela dlouho, co jsem na všech mých webech zrušil podporu Google AMP. Pak jsem delší dobu chtěl napsat tip tomu věnovaný, ale nějak to zapadlo v záplavě jiných…

  • TIP#2554: Potřebujete vyměnit obrázek v médiích na vašem WordPressu? Je nutné mít plugin

    TIP#2554: Potřebujete vyměnit obrázek v médiích na vašem WordPressu? Je nutné mít plugin

    Jedna z věcí, kterou (neznámo proč) WordPress neumí přímo. Můžete nahrát média (obrázek, fotku, atd) ale když chcete nahrát upravenou verzi, tak to není možné. Přitom je to dost zásadní věc, kterou…

1 2 3 … 11
Další stránka»

Související příspěvky

TIP#804: Jak migrovat web z WordPress.org na WordPress.com? Krok 7: Co získáte použitím WordPress.com místo vlastního hostingu
TIP#798: Jak migrovat web z WordPress.org na WordPress.com? Krok 6: Kontrola a náprava odkazů a obrázků
TIP#787: Jak migrovat web z WordPress.org na WordPress.com? Krok 4: Věci, které byste měli změnit v Nastavení

Jak na WordPress Webdesign Wordpress WordPress.com WordPress.org

Předchozí článekTIP#2114: Na co si dávat pozor při tvorbě e-mailových newsletterůDalší článek TIP#2116: Jak mít na Mac OS Dock jenom s ikonkami spuštěných aplikací

Nejnovější příspěvky

  • TIP#3253: Co je to latence a proč to hraje roli (nejen) při hraní her
  • TIP3252: Chladit notebooky podložkou? Co byste měli vědět
  • TIP#3251: Kouzelná meteostanice ATMOS řeší problém, o kterém ani nevíte
  • TIP#3250: Jak zabránit tomu, aby se Mac po restartu znovu otevřel se všemi aplikacemi z poslední relace
  • TIP#3249: Zálohovat počítači či NAS? Rozhodně ano. Ale kam a jak? Včetně velkého přehledu cloudových služeb

Nejčtenější

Přispět na provoz můžete

Přispějte. 500 Kč můžete změnit dle vlastního uvážení. Z částky zaplatíme DPH a pochopitelně daně platbou na účet 331049001/5500, spec. symbol 365. Částku si můžete změnit. Z platby odvádíme DPH a daníme ji.

Zdejší tipy na zajímavé/užitečné věci obsahují affialiate odkazy na Alzu/Aliexpres

... nebo placeným odběrem

Staňte se platícím odběratelem newsletteru. 5 USD/měsíc, 50 USD/rok nebo dle vlastního uvážení od 100 USD/rok. Každou středu a neděli nálož informací.

Kontakt a tak

Kontakt: 365tipu@gmail.com

Veškerý obsah zde uveřejněný je CC-BY-NC-SA

Oznámení