Sikkerhed

WordPress XML-RPC Lukning: Den Hurtigste Vej til at Stoppe Brute Force Angreb

  • 12 min. læsetid
  • Hostragons-teamet
WordPress XML-RPC Lukning: Den Hurtigste Vej til at Stoppe Brute Force Angreb

Lukning af WordPress XML-RPC er en effektiv metode til hurtigt at reducere brute force angreb, pingback misbrug og unødvendig bot-trafik ved at blokere fjernadgang til filen xmlrpc.php. Hvis du ikke bruger Jetpack, WordPress mobil-appen, ældre publiceringsværktøjer eller har en speciel integration, der kræver XML-RPC, er det både sikkert og praktisk for de fleste WordPress hjemmesider at deaktivere denne funktion. Den mest robuste metode er at blokere adgangen på serverniveau – altså via Apache, LiteSpeed, Nginx eller en WAF-regel – fremfor at lukke den med et plugin, da serverbaseret blokering ofte giver bedre performance.

I denne guide får du en trin-for-trin gennemgang af hvorfor og hvornår du bør lukke WordPress XML-RPC, hvornår det er bedst at lade den stå åben, og hvordan du gør det sikkert på forskellige hosting-miljøer. Det gælder både Hostragons infrastruktur og andre hosting-platforme – målet er at beskytte din side uden nedbrud, minimere angrebsflader, spare ressourcer og skabe en håndterbar sikkerhedsstandard. Hvis du vil have en hurtig og sikker base for din WordPress-side, er valget af WordPress hosting også en vigtig del af processen.

Hvad er XML-RPC og Hvorfor findes det i WordPress?

XML-RPC er et ældre fjernkommunikationsprotokol, som tillader forskellige systemer at sende data i XML-format via HTTP. I WordPress bruges denne funktion typisk gennem filen xmlrpc.php i roden af din installation. Historisk har den været nødvendig for at kunne publicere blogindlæg via mobil-appen, styre kommentarer eksternt, bruge pingbacks og lade tredjeparts-tjenester interagere med dit site.

Med tiden er WordPress REST API blevet standard, så XML-RPC er ikke længere vital i de fleste setups – men filen er stadig tilgængelig på mange installationer. Det gør den til et oplagt mål for hackere: xmlrpc.php har en kendt placering og kan nemt automatiseres i scanninger. Især bots, der scanner tilfældige IP-intervaller, vil ofte forsøge at tilgå xmlrpc.php få minutter efter du har lanceret et nyt domæne. Derfor bør du tænke sikkerhed ind fra første dag, f.eks. ved Domæneforespørgsel når du går live med et nyt domæne.

Hvornår Kan XML-RPC Være Nødvendig?

De færreste hjemmesider har reelt brug for XML-RPC. Nogle Jetpack-funktioner, specifikke handlinger i WordPress mobil-appen, visse automatiseringsværktøjer eller gamle desktop blog editors kan dog kræve det. Har du tilpassede integrationer til ekstern indholdsimport eller dataudtræk, kan xmlrpc.php også spille en rolle. Det er derfor vigtigt at afklare behovet, før du deaktiverer.

En praktisk test: Hvis du kun opretter indhold via wp-admin, ikke bruger Jetpack, ikke publicerer fra mobilen og din udvikler ikke har bygget en XML-RPC integration, så kan du sandsynligvis lukke funktionen uden problemer. De fleste virksomhedssider, blogs, kataloger, mindre erhvervshjemmesider og WooCommerce-shops fungerer fint med XML-RPC lukket. Har du kritiske workflows som betalingsløsninger eller fragtintegrationer, er det dog vigtigt at teste ændringen grundigt udenfor peak-tider.

Hvorfor er WordPress XML-RPC en Brute Force Risiko?

Brute force angreb går ud på, at angriberen prøver utallige kombinationer af brugernavne og passwords med automatiserede værktøjer. Typisk sker det via wp-login.php, men XML-RPC åbner et endnu mere effektivt angrebsvektor: visse XML-RPC metoder tillader flere login-forsøg i én enkelt HTTP-request. Især system.multicall funktionen kan på dårligt konfigurerede systemer give hundredvis af forsøg med få requests.

Via wp-login.php vil 500 loginforsøg typisk generere 500 requests, men med XML-RPC kan det pakkes ned i langt færre. Det betyder, at sikkerhedsplugins og log-monitorering ofte opdager angrebet for sent. Resultatet kan være øget CPU-belastning, travle PHP-processer, belastet database og langsommere svartid for ægte besøgende. På delt hosting er det ikke kun et sikkerhedsproblem, men også et performance-issue.

XML-RPC har også en pingback-funktion, som kan misbruges til DDoS-lignende trafik eller til at pege andre sites ud som mål. Lukning af XML-RPC reducerer derfor både login-angreb og risikoen for pingback misbrug.

XML-RPC Lukning: Hurtig Sammenligning

XML-RPC Lukning: Hurtig Sammenligning
MetodeEffektPerformanceEgnet tilVigtigt at huske
Serverregel blokeringMeget højBedstSites på Apache, LiteSpeed, NginxForkert regel kan påvirke site-strukturen, husk backup
WAF eller firewall blokeringHøjMeget godCloudflare, hosting med WAF/firewallReglen skal kun ramme xmlrpc.php requests
Plugin deaktiveringMiddelMiddelBrugere uden teknisk erfaringRequest når WordPress og kan stadig bruge ressourcer
Kodefilter (functions.php)MiddelMiddelSites med udvikler eller egne temaer/pluginsBrug child theme eller eget plugin så ændringen ikke forsvinder
Rate limitMiddelGodSites med delvist behov for XML-RPCIkke så effektivt som total lukning, threshold skal justeres

Som det fremgår, er server- eller WAF-niveauet den sikreste og hurtigste løsning hvis du ikke har brug for XML-RPC. Plugins er nemme, men requests rammer stadig PHP og kan bruge ressourcer. Højtrafikerede, e-commerce eller angrebsudsatte sites bør prioritere serverregel.

Tjekliste Før Du Starter

Grundregel: mål først, hav en rollback-plan og tag backup. XML-RPC lukning er som regel harmløst, men ingen ændringer bør ske blindt på live sites. Her er en praktisk tjekliste:

  • Tag en backup af filer og database fra de seneste 24 timer. Backup er obligatorisk før opdateringer og sikkerhedsændringer.
  • Tjek om du bruger Jetpack, WordPress mobil-app, eksternt publiceringsværktøj eller special-integrationer.
  • Gennemgå adgangslogs for xmlrpc.php requests. Ser du mange requests pr. minut, kan du være under angreb.
  • Udfør ændringen udenfor peak-tider. Test checkout, login og medlemsfunktioner bagefter, især på WooCommerce.
  • Hav en metode klar til at gendanne – via FTP, filhåndtering eller SSH – hvis reglen skal fjernes igen.

Et professionelt hostingmiljø med automatiske backups, opdateret PHP, isolerede konti og firewall gør en stor forskel. Se evt. Sikker Web Hosting og SSL certifikat for flere infrastrukturtips.

Metode 1: Luk XML-RPC via .htaccess på Apache/LiteSpeed

På Apache og LiteSpeed bruges .htaccess til at blokere adgang til xmlrpc.php. LiteSpeed understøtter Apache-regler, så metoden virker på de fleste hosting-platforme. Fordelen er, at request blokeres før WordPress kører.

Sådan Gør Du

  • Åbn filhåndtering i dit hostingpanel eller brug FTP til public_html.
  • Find .htaccess og lav en backup af filen. Aktiver visning af skjulte filer, hvis du ikke kan se den.
  • Tilføj blokering af xmlrpc.php øverst, uden at slette WordPress’ egne regler.
  • Logikken bør være: afvis alle requests til xmlrpc.php.
  • Gem og test ved at åbne ditdomæne.dk/xmlrpc.php i browseren.

På Apache 2.4 og LiteSpeed bruger du “Require all denied”. På ældre Apache 2.2 findes “Deny from all”, men det er bedst at opgradere til moderne server-software for generel sikkerhed. Hvis du stadig kører gammel Apache, bør du prioritere opgradering af hele miljøet.

Ved korrekt blokering får du 403 Forbidden, 404 Not Found eller lignende, afhængigt af opsætningen. Det vigtigste er, at du ikke ser “XML-RPC server accepts POST requests”. Hvis du gør, så er filen stadig tilgængelig.

Metode 2: Blokering af XML-RPC på Nginx

Nginx bruger ikke .htaccess, så blokeringen skal ske i server block-opsætningen. Mange managed hosting-miljøer giver ikke adgang til dette, så du må evt. kontakte support for at få xmlrpc.php blokeret.

Den typiske tilgang er at lave en location = /xmlrpc.php blok og returnere 403 eller 404. 403 for at vise at adgang er nægtet, 404 for at “skjule” filen for bots. Husk at teste config og genstarte Nginx efter ændring – en fejl kan gøre hele sitet utilgængeligt.

På VPS eller dedikerede servere bør du overvåge logs efter ændringen og sikre, at xmlrpc.php requests nu rammer 403/404. Hvis angreb fortsætter fra samme IP’er, kan du supplere med fail2ban, rate limit eller WAF-regler. Se evt. VPS server sikkerhed for mere dybdegående guides.

Metode 3: Luk XML-RPC med Sikkerhedsplugin

Hvis du ikke vil rode med filer, kan du bruge plugins som Wordfence, Solid Security eller All-In-One Security. De fleste af dem kan deaktivere XML-RPC, lukke pingback eller blokere login-forsøg via xmlrpc.php. Dette er især nyttigt for mindre blogs og virksomhedssider uden teknisk personale.

Dog skal du kende begrænsningerne: Hvis pluginet først blokerer når WordPress kører, kan angrebet stadig belaste CPU og RAM. Det er derfor bedre end ingenting, men på sites med mange angreb bør du kombinere med server- eller WAF-blokering.

Vigtige Tips til Plugins

  • Download kun plugins fra WordPress’ officielle repository eller producentens website.
  • Brug ikke plugins, der ikke har været opdateret længe. Aktiv udvikling og opdateringer er et vigtigt sikkerhedstegn.
  • Undgå at bruge flere sikkerhedsplugins med samme funktion – det kan give konflikter og problemer med login, cache og filadgang.
  • Test site health, formularer, medlemslogin og betaling efter opsætning af XML-RPC-blokering.
  • Gennemgå plugin logs jævnligt. Hvis angreb fortsætter, overvej IP-blokering eller WAF-regel.

Metode 4: Blokering med WAF, CDN og Hosting Firewall

Metode 4: Blokering med WAF, CDN og Hosting Firewall

En Web Application Firewall (WAF) som Cloudflare kan filtrere skadelige requests før de når din server, inkl. xmlrpc.php. Hostingudbydere tilbyder ofte ModSecurity eller egne WAF-regler. Dette er især effektivt mod bottrafik, da angreb stoppes før WordPress aktiveres.

WAF-reglen bør være klar: blokér eller udfordr alle requests til xmlrpc.php. Hvis du kun delvist har behov, kan du tillade bestemte IP’er (f.eks. fra din automation-tjeneste) og blokere resten. Det giver balanceret sikkerhed og drift.

WAF fungerer bedst sammen med SSL. Uden HTTPS er login og sessioner ekstra udsatte. Sørg derfor for at køre hele sitet over HTTPS, brug HSTS, og hold certifikater opdateret. Se evt. SSL certifikat og Installation af gratis SSL for yderligere vejledning.

Sådan Tester Du Efter XML-RPC Lukning

Det er ikke nok at tjekke, om sitet loader – du skal sikre, at XML-RPC faktisk er lukket og at login, e-handel og brugere fungerer. Følg denne test-flow:

  • Åbn ditdomæne.dk/xmlrpc.php i browseren. Du skal se adgang nægtet, 404 eller blank side – ikke “XML-RPC server accepts POST requests”.
  • Log ind i WordPress admin som normalt, og verificer at login virker uafhængigt af XML-RPC.
  • Test kontaktformular, kommentarer, medlemslogin og betaling.
  • Tjek serverlogs for xmlrpc.php requests og statuskoder – 403 eller 404 indikerer korrekt blokering.
  • Gennemgå sikkerhedsplugin logs for fald i bot-angreb.

Teknisk kan du sende POST-requests via terminal, men for de fleste er browser- og logtest nok. Hvis Jetpack eller mobilpublisering fejler, har du brug for XML-RPC og bør overveje IP-allow eller rate limiting i stedet.

Er det Nok at Lukke XML-RPC? Supplerende Sikkerhedsforanstaltninger

Lukning af XML-RPC stopper hurtigt mange brute force angreb, men det er ikke nok alene. Angreb kan stadig ske via wp-login.php, REST API, svage plugins, gamle temaer eller lækkede passwords. Tænk derfor i lagdelt sikkerhed.

Basale Sikkerhedsforanstaltninger

  • Brug stærke passwords og unikke brugernavne. Undgå “admin” som username.
  • Aktivér to-faktor login (2FA) for administratorer. Det reducerer risikoen for password-lækager.
  • Indfør login-rate limiting for wp-login.php, evt. via plugin.
  • Hold WordPress, plugins og temaer opdateret. Gamle plugins er ofte årsag til kompromittering.
  • Slet inaktive eller gamle plugins/temaer. De kan stadig udgøre risiko.
  • Tjek filrettigheder – undgå unødigt skriveadgang på serveren.
  • Tag løbende backups og test gendannelse.
  • Brug sikker og opdateret hosting. Isolering, ny PHP-version, WAF og backup reducerer skade ved angreb.

Hvis du kun lukker XML-RPC men har et svagt admin-password som 123456, er du stadig sårbar. Kombiner stærke passwords, 2FA, opdateret software, WAF og sikker hosting for at lukke hullerne. Det er også vigtigt for SEO: usikre sites kan miste synlighed pga. spam, redirect-angreb og indeksforurening.

Performance og SEO: Effekt af XML-RPC Lukning

XML-RPC angreb er ikke direkte en ranking-faktor, men har stor indirekte betydning. Hvis bottrafik bruger serverressourcer, får du langsommere loadtider, dårligere Core Web Vitals og dårlig brugeroplevelse. Ved mange angreb kan du ramme 500-fejl, timeout og nedetid – også for Googlebot.

Eksempel: Din forside loader normalt på 300 ms, men med 1000 xmlrpc.php requests pr. minut bliver PHP-processerne overbelastet og loadtiden kan stige til over 2 sekunder. Brugere oplever et langsomt site, færre konverteringer, og Google Search Console viser problemer med crawl-statistik. Lukning af XML-RPC på serverniveau stopper dette før det når applikationen.

SEO kræver et hurtigt og sikkert site, ikke kun godt indhold. HTTPS, opdateret PHP, hurtig disk, korrekt caching, rent tema og reduceret angrebsflade er alt sammen vigtigt. Derfor bør WordPress sikkerhedsopsætning også interessere SEO- og content-ansvarlige. Se evt. WordPress hastighedsoptimering og teknisk SEO tjekliste for mere inspiration.

Alternativer Hvis Du Ikke Kan Lukke XML-RPC Helt

Nogle projekter kan ikke undvære XML-RPC – f.eks. hvis du bruger ældre mobil-publicering, virksomhedsautomatisering eller legacy-integrationer. Målet er så ikke at holde døren helt åben, men at styre adgangen.

Første mulighed er IP-whitelisting: kun betroede IP-adresser får adgang til XML-RPC, resten blokeres. Anden mulighed er rate limiting: begræns hvor mange xmlrpc.php requests én IP må sende på kort tid. Det er ikke så effektivt som total lukning, men reducerer angrebsvolumen. Tredje mulighed er at deaktivere pingback-metoder og kun tillade nødvendige calls – kræver udviklerstyring.

Fjerde mulighed er at binde XML-RPC til ekstra sikkerhedslag: f.eks. HTTP basic auth, VPN, IP-restriktion eller WAF challenge. Disse metoder reducerer risikoen ved at have en offentlig endpoint. På sigt bør du migrere gamle integrationer til REST API, som er mere sikker og kontrollerbar.

Praktisk Vej for Hostragons Brugere

Hvis du hoster WordPress på Hostragons, så start med at afklare behovet for XML-RPC, og vælg den mindst komplekse metode. På delt hosting og WordPress hosting kan du typisk klare det via .htaccess. Har du VPS eller dedikeret server, kan du kombinere Nginx, Apache, LiteSpeed og WAF.

Processen: Tag backup, tjek for afhængigheder, blokér server-side, test grundigt, overvåg logs i 24 timer. Hvis angreb fortsætter, tilføj WAF-regler, IP-blokering og login-rate limit. Afslut med 2FA, opdateringspolitik, backup og SSL.

Dette er ikke en “upsell”, men grundlæggende hygiejne. Hvis din hosting er præget af gammel PHP, manglende ressourcer eller firewall, er det værd at overveje et nyere hosting-setup. Et miljø optimeret til WordPress, med sikkerhedslag, giver både bedre modstandskraft og daglig performance. Se evt. WordPress hosting, cloud server og SSL certifikat for flere muligheder.

Ofte Stillede Spørgsmål

Ødelægger lukning af WordPress XML-RPC mit site?

Nej, de fleste almindelige WordPress-sites påvirkes ikke. Admin-panel, tema, indhold, formularer og den besøgende side fungerer normalt. Kun hvis du bruger Jetpack, mobil-appen eller special-integrationer kan du opleve problemer – så test før og efter ændringen.

Hvordan tjekker jeg om XML-RPC er lukket?

Åbn ditdomæne.dk/xmlrpc.php i browseren. Ser du “XML-RPC server accepts POST requests”, er filen stadig tilgængelig. Ser du 403, 404 eller adgang nægtet, er lukning sandsynligvis aktiv. Tjek evt. serverlogs for statuskoder på xmlrpc.php requests.

Stopper XML-RPC lukning alle brute force angreb?

Det stopper alle XML-RPC relaterede brute force angreb, men ikke alt. Hackere kan stadig angribe via wp-login.php. Kombiner lukning med stærke passwords, 2FA, login-rate limiting, WAF og plugin-opdateringer.

Bør jeg lukke XML-RPC hvis jeg bruger Jetpack?

Nogle Jetpack-funktioner kræver XML-RPC. Tjek hvilke moduler du bruger, før du lukker helt. Alternativt kan du tillade Jetpacks IP’er og blokere resten, eller styre adgangen via WAF.

Er plugin- eller serverlukning bedst?

Server- eller WAF-lukning er bedst for performance og sikkerhed, da requests blokeres før WordPress og PHP aktiveres. Plugins er lette for ikke-tekniske brugere, men stopper ikke altid ressourceforbrug ved voldsomme angreb. Brug serverregel hvis muligt, ellers et pålideligt plugin og WAF.

Kort Opsummering og Næste Skridt

At lukke WordPress XML-RPC er én af de mest effektive veje til at reducere brute force, pingback misbrug og bottrafik for sites, der ikke har behov for funktionen. Den bedste praksis er at blokere xmlrpc.php på server- eller WAF-niveau, og derefter bygge lagdelt beskyttelse med stærke logins, 2FA, opdateringer, SSL og backups. Overvej Hostragons WordPress hosting og sikkerhedsløsninger for et solidt fundament – eller start med en simpel tjekliste for din nuværende side allerede i dag.

Del denne artikel:

Hostragons-teamet

Opdaterede guider fra vores ekspertteam om hosting, servere og domænenavne. Lad os sammen finde den rigtige løsning til dit projekt.

Kontakt os