Härda WordPress Security genom att flytta wp-config.php till en icke-offentlig mapp

Om du inte har varit bekant än, låt mig presentera dig för din wp-config.php- fil. Om du kör en självhäftad WordPress.org-blogg innehåller ditt wp-config.php ditt MySQL-databas användarnamn, ditt MySQL-databas lösenord, dina WordPress-autentiseringsnycklar och annan känslig information. Med den här informationen får en hackare eller skriptkille åtkomst till varje innehållsdel på din WordPress-blogg, vilket ger dem fria händer att ta bort dina inlägg, införa skadlig kod, backlänk till olagliga porrwebbplatser eller vad som helst annat de vill ha.

Som standard sitter wp-config.php i samma mapp som din WordPress-blogg. Så, om din bloggs startsida är på mysite.com/blog, så är din wp-config.php. Det är inte så hänsynslöst som det verkar sedan .php-filer är serverns skript som behandlas av servern. När du tittar på en .php-fil tittar du faktiskt på filens utgång. Detsamma gäller när du tittar på källan. Det enda sättet att ladda ner den råa koden för en .php-fil är via FTP.

Men bara för att du inte normalt kan komma åt en .php-fil betyder inte att du alltid är säker ...

Olyckor inträffar och sårbarheter finns. Om din webbserver-PHP-konfiguration bryts ner, är dina MIME-typer inte inställda på rätt sätt, eller om din webbserver annars är felkonfigurerad, kan din webbsida sluta servera ren text i stället för bearbetad PHP-utmatning. det är bara några exempel. Och precis som att vara depantsed under en pep rally i gymnasiet auditorium, det tar bara en split-sekund och innan du kan få dina knickers tillbaka på de har sett allt. Ja, de har sett allt.

I denna visar jag dig hur du behåller din wp-config.php med dina MySQL-databas användarnamn och lösenord säkra (r). Medan ingen webbplats eller blogg är 100% otillåtet kommer det här snabba tipset att göra hackning på ditt WordPress-blogg svårare för att vara inkräktare än en webbplats som inte har tagit dessa försiktighetsåtgärder. Vanligtvis är det bara att vara säkrare än din granne för att avskräcka från en hackers ansträngningar till en annan webbplats än din egen. Kom ihåg, om du någonsin är i skogen med en grupp människor och en björn dyker upp - du behöver inte springa fortare än björnen, bara snabbare än de andra. ( och alla skämtar åt sidan, är björnmassan din bästa insats om du någonsin verkligen är i den situationen )

Flytta din wp-config.php-fil

Med rätt filtillstånd och en korrekt konfigurerad webbserver borde det vara bra att hålla din wp-config.php-fil i samma offentliga mapp som resten av din blogg. Men när det gäller att skydda din webbplats är säkerhet en lök ( eller Ogre tydligen); Ju fler lager, ju mer du har.

WordPress Codex bekräftar detta sentiment och rekommenderar att du flyttar din wp-config.php från sin standardinstallationsplats. WordPress.org med självhäftande bloggar låter dig flytta din wp-config.php upp en nivå från din bloggs rot. Det är allt bra och bra, men för de flesta webbservrar är en nivå upp från din bloggrots fortfarande en public_html-mapp. Du är bäst att lägga den i en mapp som inte är en underkatalog i din public_html eller WWW-mapp. På så sätt är chansen att någon når den via en webbläsare eller någon annan HTTP-applikation nästan noll.

Här är vad du gör:

Steg 1

Öppna din WordPress.org-webbplats via ett FTP-program och navigera till roten.

Steg 2

Hämta wp-config.php till din hårddisk.

Steg 3

Byt namn på det till något annat än wp-config.php.

Gör det något nonsensiskt, så någon som snubblar på det ( kanske någon som har hackat in i din delade server via SSH) kanske inte känner igen det för vad det är. Så, istället för att kalla det " off-site-wordpress-config.php" kallar det " futurama-fan-fic.php ."

Steg 4

Ladda upp din omdämda wp-config.php-fil till en mapp ovanför din public_html eller www-mapp. Personligen skapade jag en hel katalog för konfigurationsfiler på plats. Men det är nog säkrare att sätta dem någonstans mer slumpmässigt.

Det viktigaste är att lägga den utanför din www eller public_html-mapp.

Steg 5

Öppna upp anteckningsblock eller din andra favorit PHP-redigerare.

Skapa en ny wp-config.php-fil som bara innehåller följande kod:

innefattar ( '/ home / usr / hobbies / futurama-fan-fic.php');
?>

Byt katalog här med serverns plats för din omdämna wp-config.php-fil. Observera att det här inte är en URL, det är en sökväg i förhållande till din serverplats. Så, gör det:

innefattar ( 'www.yourdomain.com/location/futurama-fan-fic.php');

kommer inte att fungera.

Som du förmodligen har samlat, kommer det här att göra väsentligen skapa en " genväg " till din faktiska wp-config.php-fil. Så, om någon hackar din wp-config.php-fil i din WordPress-katalog, kommer alla de hitta en fil som pekar på en annan fil.

För skojs skull kanske du vill lägga till en kommentar som läser:

// Tack Mario! Men vår prinsessa är i ett annat slott!

Steg 6

Ladda upp din nya wp-config.php-fil till din WordPress-rot. Skriv över den gamla ( du säkerhetskopierade först, eller hur? ).

Steg 7

Det är allt! Navigera till din WordPress.org bloggrots för att säkerställa att den fungerade.

Om du får ett fel som läser:

Varning : inkludera (/www.yourdomain.com/location/futurama-fan-fic.php ') [function.include]: misslyckades med att öppna ström: Ingen sådan fil eller katalog i /home/usr/public_html/blog.com/ wp-config.php på rad 2

Felaktigt fel : Ring till odefinierad funktion wp () i /wp-blog-header.php på rad 14

Då betyder det att du skrivit i serverns plats fel i din modifierade wp-config.php-fil. Om du har problem med att bestämma den absoluta sökvägen för din blogg, skapa en .php-fil med följande kod i den:

Detta visar dig den absoluta sökvägen för vilken katalog som filen är i och kommer också att belysa hur du flyttar över mappen public_html.

Om du får ett felmeddelande som läser:

Det verkar inte vara en wp-config.php fil. Jag behöver det innan vi kan komma igång. Behöver du mer hjälp? Vi har det. Du kan skapa en wp-config.php fil via ett webbgränssnitt, men det fungerar inte för alla serverns inställningar. Det säkraste sättet är att manuellt skapa filen.

Då betyder det att det inte finns någon wp-config.php-fil i din WordPress.org-rot. Dubbelkontrollera att du laddade upp den modifierade wp-config.php till din WordPress.org-rot eller mappen precis ovanför den och den omdämna wp-config.php-filen till en annan plats, snarare än vice versa.

Slutsats

Kommer du att flytta din wp-config.php gör din blogg bulletproof? Absolut inte. Men det är bara ett av de steg du kan ta för att göra din webbplats eller blogg säkrare. Och för mig hjälper det mig att sova bättre på natten - precis som att lägga en extra kedja eller dödsbolt på dörren.

Obs! Innan du lägger dig runt din filstruktur, se till att du gör saker bakom och känner dig bekväma med vad du gör. Du kan allvarligt röra upp din WordPress blogg om du tar bort fel sak. Du har blivit varnad.