Plugins die (delen van) WordPress onzichtbaar maken…

Maar waarom zou WordPress onzichtbaar moeten zijn?

WordPress onzichtbaar

In deze blogpost ga ik met jou kijken naar een aantal plugins die delen van WordPress onzichtbaar maken voor het grote publiek. En dat kan je om een tweetal redenen willen doen. De eerste reden heeft alles met veiligheid te maken. Hoe ‘minder zichtbaar’ het is, dat jouw site een WordPress site is, hoe meer moeite eventuele hackers moeten doen om er achter te komen, dat het stiekem toch WordPress is.

De andere reden is, omdat WordPress soms iets te veel aan de bezoekers van je site wil laten zien. En dat ziet er rommelig of verwarrend uit. Om rommel en verwarring te voorkomen, kan het dus goede zijn delen van WordPress, die toch niet van belang zijn, voor jouw bezoekers te verbergen.

Compleet verstoppertje spelen

WordPress onzichtbaar

Als eerste wil ik met je kijken naar plugins die je helpen, als je compleet wilt verbergen, dat je WordPress gebruikt. En laat ik maar gelijk heel duidelijk zijn: Het compleet ‘verstoppen’ dat je WordPress gebruikt is onmogelijk. En dat is heel simpel omdat diverse plugins de code die zij ‘toevoegen’ aan je pagina toevoegen met heel specifieke CSS id’s en class namen. Wanneer ik de HTML van een site zou scannen op de specifieke CSS id’s en class namen van een groot aantal populaire plugins, dan denk ik, dat ik toch wel 99% van alle WordPress sites als WordPress site zou kunnen identificeren.

Maar dat zou wel heel veel werk zijn en het zou mijn eventuele hack pogingen wel enorm vertragen. Dus de meeste automatische scripts om WordPress sites te hacken zijn wat luier en identificeren WordPress sites op meer algemene kenmerken.

Wat zo’n ‘verstop’ plugin nu typisch doet is een aantal van die typische kenmerken verbergen of aanpassen.

wp-huppeldepup

De makers van WordPress vonden het waarschijnlijk heel belangrijk, dat de hele wereld zou weten, hoe populair WordPress is. Want je logt in op wp-login.php, je gaat na het inloggen, wanneer je een beheerder bent, naar /wp-admin/ en jouw foto’s, plugins en andere zaken zijn opgeslagen in de folder ‘wp-content’.

Het kost dus echt niet veel moeite om te kijken of een site een WordPress site is. Het enige wat je hoeft te doen, is te kijken, of al die ‘wp dingen’ ook bestaan.

Eén belangrijke manier om WordPress minder herkenbaar te maken voor de rest van de wereld, is dus al die URL’s veranderen in URL’s zonder de letters WP erin.

Schrik nu niet, dat hoef je allemaal niet zelf te doen, er zijn plugins die dat voor je doen.

Typische header code

In de code van de header van een WordPress pagina staan ook een heleboel gegevens die het makkelijk maken jouw site als een WordPress site te herkennen. Er staat bijvoorbeeld in die metadata dat de ‘Generator’, WordPress is, er staan verschillende metadata in om aan te geven hoe er met de site gecommuniceerd kan worden en nog veel meer.

Wanneer je die code niet nodig hebt -de meeste van de klanten waarvoor ik sites gebouwd heb, hebben die ook niet nodig- moet je ervoor zorgen, dat die informatie uit de header verdwijnt.

Antwoorden op communicatie endpoints

Een andere manier om WordPress onzichtbaar te maken, is de communicatie endpoints onklaar te maken, of aan te passen. Van oudsher heeft WordPress een XML-RPC API. Dat is bedoeld om blogposts vanuit een externe tool direct te kunnen ‘plaatsen’ in WordPress. Dat was in de tijd dat de meeste mensen nog over een telefoonlijn moesten bloggen best makkelijk. Je schreef je blogpost in een offline editor, maakte verbinding en verstuurde vervolgens je kant-en-klare blogpost.

Op eenzelfde manier gebruiken we vandaag de dag de WP-REST API of de Graph-API, om bijvoorbeeld apps met WordPress te laten praten. Lees hierover ook mijn artikel over headless WordPress maar eens.

Wanneer je als hacker weet op welke endpoints je een antwoord kan verwachten, is het genoeg om een berichtje naar zo’n endpoint van een site te sturen, om te weten of het WordPress is. Wanneer je echter die endpoints van naam verandert, of helemaal uit zet -omdat je het toch niet gebruikt- wordt dit veel moeilijker.

De plugins die bijna WordPress onzichtbaar maken…

Het zal je niet verbazen, dat er verschillende plugins zijn, die geschikt zijn voor bovengenoemde taken. Op mijn eigen sites gebruik ik geen van deze plugins om de simpele reden, dat ik duidelijk herkenbaar wil hebben dat mijn sites WordPress sites zijn. WordPress is mijn vakgebied, en ik wil juist laten zien, wat er allemaal met WordPress mogelijk is.

Maar voor enkele klanten die dat liever niet wilden, heb ik verstoppertje gespeeld met WordPress. En mijn favoriete plugin om WordPress toch wel heel onherkenbaar te maken is de WP Hide&Security Enhancer plugin.

Het aardige is, is dat de plugin op zich niets werkelijk verplaatst. Het is dus bijvoorbeeld niet zo, dat de wp-content folder ineens ‘content’ genoemd wordt… alle veranderingen die worden aangebracht zijn virtueel. Wanneer je later besluit de plugin te verwijderen, dan werkt alles weer als vanouds.

Kwetsbare punten verbergen

Maar wellicht vind je het helemaal niet belangrijk om je website te verbergen als WordPress website, maar wil je wel graag, dat het hacken van je site toch iets moelijker gemaakt zal worden. Ik kan hiervoor natuurlijk een plugin gebruiken, die mijn inlogpagina tegen brute force attacks beschermd, maar wat ik ook kan doen, is die pagina zelf verbergen.

Wanneer ik in plaats van ‘wp-login.php’ een pagina ‘login.php’ of ‘/login/’ zou hebben, dan zal het niet veel verschil maken, maar als ik via een URL met een naam als ‘rabarbertaart’ moet inloggen, dan mag je erop rekenen, dat niet veel onbevoegden de inlog van je website zullen vinden.

Een goede plugin om zo’n ‘custom login url’ voor je website te krijgen is WPS Hide Login.

Alles wat gebruikersvriendelijker maken

WordPress onzichtbaar

Stap 1 – De login

Wanneer jij de enige bent die op je site inlogt, dan is het allemaal niet zo belangrijk, maar op het moment dat meer mensen op jouw site in gaan loggen, wordt het ook steeds belangrijker, dat je login pagina zich ook presenteert. En eerlijk gezegd, de standaard login pagina van WordPress is niet fraai.

Soms heb je een thema of een plugin, wat zelf al voor een nette inlogpagina zorgt. Gebruik je bijvoorbeeld WooCommerce dan heb je al een keurige inlogpagina… je ‘oude’ login pagina zal wel blijven bestaan, maar alle acties als inloggen, wachtwoord vergeten en het aanpassen van het vergeten wachtwoord, lopen via een pagina die door WooCommerce wordt gecontroleerd.

Maar wat als dat niet het geval is? Wat als je een plugin hebt, waarbij de ‘juiste’ manier om in te loggen, toch via de traditionele weg gaat?

Dan is er gelukkig een groot aantal plugins, wat jouw loginpagina een stuk fraaier kan maken dan die lelijke standaard WordPress inlogpagina.

Doe het zelf…

Eén mogelijkheid heeft weinig met plugins te maken, maar wanneer jij je inmiddels wat ‘veiliger’ voelt met het zelf spelen met code snippets, dan is deze snippet wel een hele leuke. Stel, jij heb een fraaie Elementor login pagina gemaakt op de URL ‘/aanmelden-bezoekers/’.

Met het volgende codefragment zorg je ervoor, dat je voortaan niet meer inlogt via de -lelijke- WP login pagina, maar via jouw eigen mooi gemaakte pagina.

add_filter('login_url', 'wxp_login_page', 10, 2);

function wxp_login_page($login_url, $redirect) {
   return home_url('/aanmelden-bezoekers/?redirect_to='. $redirect);
}

… of anders…

Ben je wat minder avontuurlijk aangelegd, of heb je geen Elementor, of een andere page builder op je site, dan kan je gebruik maken van één van de plugins hieronder genoemd. Hier is niet zo zeer een ‘goed’ en ‘slecht’ van toepassing, maar meer ‘wat is mijn smaak’. De verschillende hieronder genoemde plugins hebben verschillende graden van complexiteit en verschillende mate waarin je de inlog pagina naar eigen hand kan zetten. De beste manier om hier zelf mee aan de slag te gaan, en te zien wat jij het best vindt passen bij jouw site is te ‘spelen’ in een WordPress zandbak…

Wat er na het inloggen gebeurt…

Iets anders wat je aan zou willen passen is mogelijk datgene wat er na het inloggen gebeurt. Want wanneer je geen plugin als WooCommerce of een plugin voor een LMS of membership site gebruikt, dan zal jouw bezoeker waarschijnlijk naar het Dashboard worden geleid. Waar hij in de meeste gevallen maar één optie heeft. Zijn profiel aanpassen.

Dat is niet echt intuïtief, dacht je niet? Daar moeten we dus ook wat aan doen. En mijn favoriete plugin hiervoor is LoginWP. Mocht je op andere sites hebben gelezen, dat ‘Peter’s Login Redirect’ de beste plugin hiervoor is… ook dat is waar, want ‘Peter’s Login Redirect’ heeft een tijdje terug een nieuwe naam gekregen en heet nu dus ‘LoginWP’.

Met deze plugin kan je per rol aangeven op welke pagina iemand na het inloggen moet komen, en naar welke pagina na het uitloggen iemand weer toegestuurd moet worden. Zeer aan te bevelen!

Je hele Dashboard onzichtbaar maken

De meeste bezoekers aan je website hebben eigenlijk helemaal niets op het dashboard te zoeken. Dus het eerste wat we graag willen is die zwarte balk boven aan het scherm voor ingelogde gebruikers onzichtbaar maken. In mijn blogartikel over ‘snippet plugins’ heb ik laten zien hoe je dit kan doen met een kleine code snippet.

Voel je je wat minder thuis in het zelf toevoegen van code, dan kan je ook kiezen voor een plugin die dit voor je doet. Zoals bijvoorbeeld de plugin ‘Hide Admin Bar Based on User Roles‘. Dat is een prima plugin voor dit doel.

Denk er wel aan, dat een ‘code snippet’ voor performance altijd te verkiezen is boven een plugin.

Wil je niet alleen verbergen dat er een dashboard is, maar ook het hele dashboard niet toegankelijk maken voor je gebruikers, dan zetten we nog een stapje meer. Met de plugin ‘Remove Dashboard Access‘ kan je aangeven welke rollen wel en geen toegang mogen hebben tot het dashboard. Let hierbij wel even op: Deze plugin speelt niet goed samen met WooCommerce. Je kan namelijk alleen op basis van de basisrollen van WordPress de toegang bepalen. Heb jij een gebruiker met de rol ‘shopkeeper’ in jouw webshop, dan kan de shopkeeper helaas zijn shop niet meer ‘keepen’, omdat de toegang tot het dashboard niet meer mogelijk is. Is de beheerder van de shop ook de beheerder van de site met de ‘admin’ rol, dan is er geen vuiltje aan de lucht.

Zichtbaarheid van je media library beperken

Tenslotte is er nog een ding met betrekking tot de zichtbaarheid van de zaken in de media library. Wanneer gebruikers van jouw website zelf posts aan kunnen maken, bijvoorbeeld met behulp van een plugin voor front end posts, dan kan -afhankelijk van hun rol- het gebeuren, dat ze de keuze krijgen uit alle afbeeldingen in de media library. Maar dat is misschien helemaal niet wat je wilt!

Met behulp van de plugin Restrict Media Library Access kan iedereen die geen ‘Administrator’ of ‘Editor’ is, alleen de eigen geuploade bestanden zien.

Ten slotte

Toch aardig wat handige plugins die ik hier zo bij elkaar kort bespreek nietwaar? Het voordeel van de WordXPression blog is dat jij makkelijk op de hoogte blijft bij alles wat er zo rond WordPress mogelijk is. En op de hoogte blijven… is natuurlijk het makkelijkst, wanneer ik jou laat weten wanneer er wat te melden valt.

Wanneer je je inschrijft voor de nieuwsbrief door het formulier hieronder in te vullen, of je aanmeldt voor de browser push berichten, door op de rode bel linksonder op deze pagina te klikken en vervolgens de instructies te volgen, dan hoef je geen bericht meer te missen!

Schrijf je in, meld je aan en zorg dat je bij blijft!

Wees eens aardig en deel dit met je vrienden
Enkele trefwoorden om vergelijkbare posts te vinden:

Word je website de baas. Neem vandaag nog contact op!

Contact Information

WordXPression 
Imkersdreef 525
7328DG Apeldoorn
06-10449807 (van 9:00 tot 17:00 van ma-vr)

KVK : 75580152 

Social media
Stuur een bericht

Flinke kortingen op cursussen van WordXPression.