Tämä opas antaa kymmenen käytännöllistä vinkkiä, joiden avulla parannat WordPress -sivustosi tietoturvaa. Mikäli haluat suojata oman blogisi helposti, ota yhteyttä Mikko Vireniukseen.
Asenna aina uusin versio
Asentaessasi WordPressiä puhtaalta pöydältä, varmista, että käytössäsi on järjestelmän uusin versio. Voit ladata viimeisimmän vakaan englanninkielisen version WordPressin viralliselta kotisivulta ja suomentaa sen Arkimedian kielipaketilla.
Pidä päivitykset ajan tasalla
Säännöllinen päivittäminen on ehdottomasti tärkein tietoturvaan liittyvä toimenpide. Pitämällä järjestelmän, lisäosat ja teemat ajan tasalla varmistat, että käytössäsi on viimeisin osaaminen myös tietoturvan osalta. Tutustu aikaisemmin kirjoittamaamme päivitysoppaaseen tai tilaa turvallinen päivitys.
Vaihda tietokantataulujen etuliite
Ennen asentamista tietokantataulujen etuliite kannattaa vaihtaa vaikeammin arvattavaksi. Voit määrittää uuden etuliitteen wp-config.php -tiedostossa. Tietokantataulujen etuliitettä voidaan muuttaa myös asennuksen jälkeen WP Prefix Table Changer -lisäosan avulla.
Tarkista tiedostojen kirjoitusoikeudet
WordPress -asennuksesi tiedostojen ja kansioiden kirjoitusoikeudet on oletuksena määritetty turvallisiksi, mutta ne kannattaa tarkistaa asennuksen jälkeen. Voit käyttää tarkistamiseen WP Security Scan -lisäosaa.
Suojaa wp-config.php -tiedosto
Suojaa tietokantayhteyden asetukset ja salasanan sisältävä wp-config.php -tiedosto joko siirtämällä tiedosto toiseen hakemistoon tai lisäämällä seuraava rivi .htaccess -tiedostoon.
<Files wp-config.php> Order Deny, AllowDeny from All</Files>
Suojaa wp-admin -kansio
Manuaalisen hakkeroinnin lisäksi salasanan murtamiseen voidaan käyttää botteja, jotka arvaavat väsymättä admin-tunnuksen salasanaa, kunnes löytävät oikean. Tämän vuoksi wp-admin -kansio kannattaa suojata huolellisesti; kansion suojaamiseen on useita ratkaisuja, joista tärkeimmät on esitelty seuraavassa.
- Mikäli sinulla on kiinteä IP-osoite, voit rajoittaa pääsyn wp-admin -kansioon pelkästään omalle IP-osoitteellesi.
- AskApache Password Protect -lisäosa lisää blogisi tietoturvaan toisen tason. Sen idea on yksinkertainen: lisäosa vaatii käyttäjänimen ja salasanan wp-admin -kansioon pyrkiviltä käyttäjiltä.
- Login Lockdown -lisäosa tallentaa jokaisesta epäonnistuneesta kirjautumisyrityksestä IP -osoitteen ja aikaleiman. Mikäli samasta IP-osoitteesta tulee lyhyen ajan sisällä monta epäonnistunutta kirjautumisyritystä, kirjautumistoiminto estetään. Tämä auttaa estämään aiemmin mainittua brute force -tyyppistä salasanan etsintää.
Estä kansioiden selaaminen
Mikäli et ole estänyt kansioiden selaamista, kaikilla sivustollasi vierailevilla on vapaa pääsy esimerkiksi wp-content/plugins -hakemistoon katsomaan, mitä lisäosia ja mitä versioita niistä käytät. Estä kansioiden selaaminen lisäämällä tyhjä index.html -tiedosto wp-content/plugins -kansioon tai lisäämällä seuraavan rivin .htaccess -tiedostoon
Options All -Indexes
Estä wp-alkuisten tiedostojen indeksointi
Estä hakukoneita indeksoimasta wp -alkuisten kansioiden sisältöä lisäämällä seuraava rivi robots.txt -tiedostoon.
Disallow: /wp-*
Poista versionumero lähdekoodista
Mikäli päivitykset ovat jostain syystä jääneet väliin ja käyttämäsi WordPressin versionumero on näkyvissä lähdekoodissa, blogisi on alttiina hakkereille ja hakkerointiohjelmille. Poista versionumero lähdekoodista lisäämällä seuraava rivi käyttämäsi teeman hakemistosta löytyvään functions.php -tiedostoon.
<?php remove_action(wp_head, wp_generator); ?>
Ota varmuuskopiot säännöllisesti
Varmuuskopioi WordPress -asennuksesi tiedostot ja tietokanta säännöllisesti. Tietokannan varmuuskopiointiin voit käyttää esimerkiksi wp-db-backup -lisäosaa.
Käytä satunnaisesti generoituja salasanoja
Asennuksen jälkeen pääkäyttäjän salasana kannatta vaihtaa välittömästi. Myös myöhemmin luotavista salasanoista kannattaa tehdä tarpeeksi pitkiä ja vaikeasti arvattavia. Voit luoda turvallisen salasanan esimerkiksi GRC:n salasanatyökalun avulla.
Lähteet
- Noupe – WordPress Security Tips and Hacks
- Matt Cutts – Three tips to protect your WordPress installation
- BlogSecurity.net – WordPress security whitepaper
- Labnol.org – WordPress Tips + Things You Can Do After Installing WordPress
Paranna blogisi tietoturvaa helposti
palkkaamalla ammattilainen suorittamaan tarvittavat tietoturvaan liittyvät korjaustoimenpiteet. Soita Mikolle 0505551222 tai ota yhteyttä sähköpostitse info@arkimedia.fi. Voit käyttää myös valmista yhteydenottolomakettamme.

21 kommenttia
Hyviä neuvoja! Pari kohtaa voisin vielä lisätä:
Käytä LoginLockdown sovellusta, joka estää brute force -tyyppiset hyökkäykset lukitsemalla ip-alueen virheellisten kirjausyritysten jälkeen.
Mainisemasi WP Security Scan sovellus piilottaa automaattisesti versionumeron lähdekoodista, joten sitä ei tarvitse erikseen tehdä.
Jos sinulla on kiinteä ip-osoite, voit suojata wp-admin kansion estämällä muiden pääsyn ip-osoitteen perusteella. Muutokset tulee tehdä .htaccess -tiedostoon.
Lisää wp-config -tiedostoon kolmeen kohtaa “secret key”, joka vaikeuttaa salasanan generoimista.
Tuossa muutama vinkki, joka tuli mieleen.
Ainiin, ehkä tärkein unohtui: Älä käytä admin-tunnusta bloggaamiseen, vaan tee erikseen käyttäjätunnus jokapäiväisten asioiden hoitamiseen, kuten artikkelien kirjoittamisen.
Admin salasanan joutuessa vääriin käsiin on peli jo menetetty, mutta pienemmillä oikeuksilla varustettu käyttäjä voidaan poistaa tunnuksen salasanan joutuessa vääriin käsiin.
@WS: Kiitos vinkeistä! Ne löytyvät kyllä artikkelini lähteistä, mutta taidan lisätä ne tähänkin artikkeliin. Tuosta admin-tunnuksesta tuli mieleen, että eikö riitä, jos vaihtaa salasanan esim. phpMyAdminin kautta? Kts. edellinen artikkelini.
Salasanan vaihtaminen toki onnistuu jälkeenpäin, mutta admin tunnuksella saa huomattavasti enemmän tuhoa aikaan, jos joku sen salasanan saa käsiinsä.
AskApache on myös mainio lisäosa lisäämän wordpress blogin turvallisuutta.
@WS: Lisäsin artikkeliin linkit ja kuvaukset wp-admin -kansion eri suojaustavoista.
Ihan perusjuttuihin kuuluu varmaankin myös se, että hallintaosioon kannattaisi kirjautua vain suojatussa (https/ssl) yhteydessä. Tätä varten löytyy tietenkin ihan oma plugin(Admin-SSL).
@2K: Kiitos vinkistä. Toisille perusjuttuja, toisille vähän tuntemattomampia. Luulen, että löytäisin nopeasti pari sataa suomalaista blogia, joissa tämän artikkelin tekniikoista ei ole yksikään käytössä. Mutta toivottavasti tästä eteenpäin on useammalla.
Tuhon SSL-suojaukseen taitaa tarvita varmenteen joltain operaattorilta, ennen kuin toimii? Sen hankinta ei kuitenkaan ole helppo juttu, ja se pitää uusia vuosittain. Parempi on, että ei kirjaudu paikoissa, joissa on vaara tulla urkituksi.
Viimeisin neuvoi oikein hyvä. Itse sitä mieltä, että mieluummin vain kotikoneelta. Ei siis koulun tai vaikkapa kirjaston.
Mikä on htaccess tiedosto?
.htaccess on tiedosto (huomaa piste), jonka avulla voit esim. salasanasuojata kansioita ja tiedostoja, uudelleenohjata sivuja, estää/sallia IP:n perusteella yms. Tiedoston voi luoda itse, mikäli sitä ei ole valmiina. Lue lisää http://luth.adslinfo.us/htaccess.html
Pitääkö siis luoda itse toi .htacces-tiedosto ja mihin? En ainakaan löytänyt wp:stä tuota.
Warning: Invalid argument supplied for foreach() in
Your User which is used to access your WordPress Tables/Database, hasn’t enough rights( is missing ALTER-right) to alter your Tablestructure.
Mitä toi tarkoittaa?
@Ilkka: .htaccess-tiedosto pitää luoda itse, mikäli sitä ei löydy WordPressin -juurihakemistosta. Juurihakemisto = hakemisto, joka sisältää mm. kansiot “wp-admin”,”wp-content” ja “wp-includes”.
Virhe tarkoittaa, että sinulla ei ole tarvittavia oikeuksia tietokantaan. Toisin sanoen et voi käyttää lisäosaa, joka näyttää ko. virheilmoituksen.
Rautalankasta: siis laitetaan sit se luotu .htacces-tiedosto wp-admin, wp-content….. joukkoon?
Eli täytyy sit nimetä wp_ muuksi ennen asennusta?
Mitäs toi tarkoittaa:
WP ID META tag removed form WordPress core
“admin” user exists.
.htaccess exists in wp-admin/
Oli tossa security-osiossa?
Toi noi..mitä tapahtuu jos hakkeri/haittaohjelma pääseen tunkeutuu wp:n? Jumittaako koko palvelimen?
@Ile:
1. Kyllä laitetaan.
2. wp_ kannattaa muuttaa ennen asennusta
3 Vapaasti käännettynä: “WP ID META elementti poistettu WordPressin lähdekoodista. admin -käyttäjä on olemassa. .htaccess-tiedosto löytyy jo wp-admin -kansiosta”
4. Yleensä hakkeriohjelmat aiheuttavat pienempää tuhoa, sotkemalla ohjelmakoodia ja rikkomalla näin joitain toiminnallisuuksia, jolloin järjestelmä pitää päivittää. Mikäli joku osaa/viitsii manuaalisesti hakkeroida sillon vahingot voivat olla suuremmat.
@Ile: Mikäli sinulla on vielä kysyttävää asiaan liittyen, pyytäisin, että tekisit sen tukifoorumin puolelle osoitteessa http://www.arkimedia.fi/wordpress-tuki
Moi
Eiks ton Wp-admin kansion voi suojata myös tolla .htaccess-tiedostolla?
Kauko: Kyllä voi käyttää .htaccess-tiedostoa. Toimii loistavasti!
onko tämä jotain piilokettuilua kirjoittajalle?
Jokainen kirjoittakoon miten haluaa.
Suojaa wp-config.php -tiedosto:
Artikkelissa taitaa olla virhe, heittä palvelin 500errorin tuolla pätkällä. Oikein menee näin:
order allow,deny
deny from all
Yksi paluuviite
WordPress-blogin tietoturva…
Tämä opas antaa kymmenen käytännöllistä vinkkiä, joiden avulla parannat WordPress -sivustosi tietoturvaa….