Sju inställningar vi alltid ändrar i en ny WordPress-installation
Från administratörskonton till XML-RPC. Checklistan vi går igenom innan en sida får gå live.
En nyinstallerad WordPress fungerar direkt, men standardinställningarna är gjorda för att passa alla. För en företagssida finns det några saker som är bättre att stänga eller skärpa innan sidan blir publik. Ingen av dem tar mer än några minuter, och tillsammans tar de bort de vanligaste vägarna in.
1. Inga konton som heter admin — och starka lösenord på alla
Automatiserade inloggningsförsök börjar nästan alltid med användarnamnet
admin. Finns inget sådant konto har angriparen redan fel på halva
uppgiften. Skapa ett personligt administratörskonto, logga in med det och
ta bort det generiska.
Viktigare än namnet är lösenordet. Ett starkt lösenord är framför allt långt och unikt:
- Minst 16 tecken. Längden gör mer än specialtecken. En lösenfras med fyra–fem slumpmässiga ord är både stark och lätt att skriva.
- Används ingen annanstans. Läcker ett lösenord från en annan tjänst provas det snart på andra sidor.
- Sparas i en lösenordshanterare. Då behöver ingen komma ihåg det, och det blir enkelt att ha ett unikt lösenord för varje konto.
WordPress föreslår ett starkt lösenord när ett konto skapas. Använd det eller ett från lösenordshanteraren, och kryssa aldrig i rutan som bekräftar att ett svagt lösenord ska användas.
Håll också nere antalet administratörer. Den som bara skriver och publicerar texter klarar sig med rollen Redaktör eller Författare.
2. Begränsa inloggningsförsöken
WordPress låter som standard vem som helst försöka logga in hur många gånger som helst. Ett tillägg som spärrar en adress efter några misslyckade försök gör gissningsattacker meningslösa.
3. Stäng XML-RPC om ingen använder det
xmlrpc.php är ett äldre gränssnitt som låter program prata med
WordPress. Det används av bland annat Jetpack och vissa publiceringsappar,
men på de flesta företagssidor används det inte alls. Däremot är det ett
populärt mål, eftersom ett enda anrop kan innehålla hundratals
inloggningsförsök.
Enklast är att blockera filen i webbservern. I Nginx:
location = /xmlrpc.php {
deny all;
}
Och i Apache, i .htaccess:
<Files xmlrpc.php>
Require all denied
</Files>
Kontrollera först att inget tillägg ni använder behöver det.
4. Stäng av filredigeraren i adminpanelen
Under Utseende och Tillägg finns en redigerare som låter en inloggad
administratör ändra PHP-filer direkt i webbläsaren. Den behövs sällan, och
om ett administratörskonto någon gång skulle kapas är den den kortaste
vägen till att köra egen kod på servern. En rad i wp-config.php tar bort
den:
define( 'DISALLOW_FILE_EDIT', true );
Ändringar i koden görs ändå bättre via versionshantering eller SFTP, där de går att följa och ångra.
5. Ingen öppen registrering
Under Inställningar → Allmänt finns rutan Vem som helst kan registrera sig. Den ska vara urkryssad på en vanlig företagssida. Kontrollera samtidigt att Standardroll för nya användare är Prenumerant, så att en registrering aldrig kan ge mer behörighet än nödvändigt om rutan någon gång kryssas i av misstag.
6. Felsökningsläget avstängt i produktion
WP_DEBUG är användbart under utveckling men ska vara avstängt på en
publik sida. Felmeddelanden kan avslöja sökvägar, tilläggsnamn och
versioner.
define( 'WP_DEBUG', false );
Behöver ni felsöka en sida som redan är live går det att logga till fil utan att visa något för besökarna:
define( 'WP_DEBUG', true );
define( 'WP_DEBUG_LOG', true );
define( 'WP_DEBUG_DISPLAY', false );
Glöm inte att stänga av det igen när felet är hittat.
7. Uppdateringar på rutin — och bort med det som inte används
De flesta intrång i WordPress sker genom tillägg med kända sårbarheter som aldrig uppdaterats. Två vanor gör stor skillnad:
- Uppdatera regelbundet. Mindre uppdateringar av WordPress själv installeras automatiskt som standard. Tillägg och teman kan också uppdateras automatiskt, men på en sida med webbshop eller egen kod är det tryggare att uppdatera kontrollerat och titta på sidan efteråt.
- Avinstallera det som inte används. Ett inaktiverat tillägg ligger kvar på servern och kan fortfarande vara sårbart. Samma sak gäller teman: behåll det aktiva och ett standardtema som reserv, ta bort resten.
Checklistan i korthet
- Personliga konton med starka, unika lösenord
- Spärr efter misslyckade inloggningar
- XML-RPC blockerat om det inte behövs
DISALLOW_FILE_EDITiwp-config.php- Öppen registrering avstängd
WP_DEBUGavstängt- Uppdateringar på rutin och inga oanvända tillägg eller teman
Inget av det här ersätter en fungerande backup. Går något ändå fel är det återställningen som avgör hur länge sidan ligger nere — mer om det i Backup är inte backup förrän du har återställt den.
Har ni ett problem vi borde skriva om?
Hälften av artiklarna här började som en kundfråga. Ställ er fråga — svaret kanske blir nästa guide.