Kotisivu » WordPress » 15 Hyödyllisiä .htaccess-katkelmia WordPress-sivustollesi

    15 Hyödyllisiä .htaccess-katkelmia WordPress-sivustollesi

    Ottaa a hyvin konfiguroitu .htaccess-tiedosto on tärkeää, jos haluat lisätä turvallisuutta ja vähentää haavoittuvuuksia WordPress-sivustossasi. Yleensä tärkein tavoite luoda a mukautettu .htaccess-tiedosto on estää sivustosi hakkeroiminen, mutta se on myös erinomainen tapa käsitellä uudelleenohjauksia ja hallita välimuistiin liittyviä tehtäviä.

    .htaccess on a määritystiedosto Apache-Web-palvelimissa. Useimmat WordPress-sivustot suoritetaan Apache-palvelimella, vaikka pieni osa on powered by Nginx. Tässä artikkelissa on a .htaccess-koodinpätkät, useimmat niistä voit suojata sivustosi, kun taas muu toteuttaa muita hyödyllisiä ominaisuuksia.

    Älä unohda varmuuskopioi .htaccess-tiedosto ennen kuin muokkaat sitä niin, että voit aina palaa edelliseen versioon jos jotain menee pieleen.

    Ja jos olet joku, joka ei kosketa kokoonpanotiedostoja, suosittelen sinua BulletProof Security plugin, joka on luotettavin (ja luultavasti vanhin) ilmainen .htaccess-tietoturva-laajennus Marketissa.

    Luo oletus WP .htaccess

    .htaccess toimii a per hakemistopohja mikä tarkoittaa, että jokaisella hakemistolla voi olla oma .htaccess-tiedosto. Se voi helposti tapahtua, että WordPress-sivustosi ei ole .htaccess-tiedostoa. Jos et löydä .htaccess-tiedostoa juurihakemistosta luo tyhjä tekstitiedosto ja nimeä se .htaccess.

    Alla on oletus .htaccess WordPress käyttää. Aina kun tarvitset tätä koodia, voit nopeasti etsiä sen WordPress Codexissa. Huomaa, että WP Multisite -palvelussa on erilainen .htaccess.

     # BEGIN WordPress  RewriteEngine On RewriteBase / RewriteRule ^ -rekisteri .php $ - [L] RewriteCond% REQUEST_FILENAME! -F RewriteCond% REQUEST_FILENAME! -D RewriteRule. /index.php [L]  # END WordPress 

    Linjat alkavat # ovat kommentteja. Älä muokkaa mitään rivien välistä # BEGIN WordPress ja # END WordPress. Lisää mukautetut .htaccess-säännöt näiden oletussääntöjen alapuolella.

    Kaikki tässä artikkelissa olevat koodinpätkät siirry ydin .htaccess-tiedostoon löytyy juurihakemistosta.

    1. Estä kaikkien .htaccess-tiedostojen käyttö

    Alla oleva koodi kieltää pääsyn kaikkiin .htaccess-tiedostoihin, jotka olet asentanut WordPressiin. Näin voit estää ihmisiä näkemästä Web-palvelimen kokoonpanot.

     # Estää pääsyn kaikkiin .htaccess-tiedostoihin  Tilaa Salli, kieltää kieltää kaikilta  

    2. Suojaa WP-asetukset

    wp-config.php tiedosto sisältää kaikki WP-kokoonpanot, mukaan lukien tietokannan käyttäjätunnus ja salasana. Voit joko kieltää sen kaikilta tai anna lupaa järjestelmänvalvojille käyttää sitä.

    Jos valitset jälkimmäisen kommentoi # Salli xx.xx.xx.xxx rivi (poista # linjan alusta) ja lisää järjestelmänvalvojan IP-osoite sijasta xx.xx.xx.xxx.

     # Suojaa wp-config  Tilauksen salliminen, kieltäminen # salli xx.xx.xx.xxx # Salli vuodesta yyy.yy.yy.yyy kieltää kaikilta  

    3. Estä XML-RPC DDoS-hyökkäys

    WordPress tukee XML-RPC: tä oletusarvoisesti mikä on käyttöliittymä, joka tekee etäkirjastosta mahdollista. Vaikka se on loistava ominaisuus, se on myös yksi WP: n suurimmista tietoturvaheikkoista, kuten hakkereita hyödyntää sitä DDoS-hyökkäyksille.

    Jos et halua käyttää tätä ominaisuutta, se on parempi vain poistaa sen käytöstä. Aivan kuten ennen, voit lisää poikkeuksia kommentoimalla # Salli xx.xx.xx.xxx rivi ja lisäämällä järjestelmänvalvojan IP-osoitteet.

     # Suojaa XML-RPC: tä, estää DDoS-hyökkäyksen  Tilauksen kieltäminen, Salli # Salli xx.xx.xx.xxx # Salli vuodesta yyy.yy.yy.yyy kieltää kaikilta  

    4. Suojaa admin-alueesi

    Se on myös hyvä idea suojaa admin-aluetta antamalla pääsy vain järjestelmänvalvojille. Täällä älä unohda lisää vähintään yksi “Sallia” poikkeus muuten et voi käyttää pääkäyttäjääsi ollenkaan.

     # Suojaa admin-aluetta IP AuthUserFile / dev / null AuthGroupFile / dev / null AuthName "WordPress Admin Access Control" AuthType Basic  Tilauksen kieltäminen, salli kieltää kaikista Salli xx.xx.xx.xxx -käyttöoikeus luvulta yy.yy.yy.yyy  

    5. Estä hakemistolistaus

    Useimmat WordPress-sivustot eivät poista hakemistoluetteloa, mikä tarkoittaa, että kuka tahansa voi selata kansioita ja tiedostoja, mukaan lukien mediatiedostot ja laajennustiedostot. On tarpeetonta sanoa, että tämä on valtava tietoturvaheikkous.

    Alla näet, miten a tyypillinen WordPress-hakemistoluettelo näyttää.

    Onneksi tarvitset vain yksi rivi koodia estää tämän ominaisuuden. Tämä koodinpätkä tulee palauta 403-virhesanoma kaikille, jotka haluavat käyttää hakemistojasi.

     # Estää hakemistoluettelon Asetukset -Luvut 

    6. Estä käyttäjätunnus

    Jos WP permalinks on käytössä, se on melko helppoa luetella käyttäjätunnuksia käyttämällä tekijän arkistoja. Paljastetut käyttäjätunnukset (mukaan lukien järjestelmänvalvojan käyttäjätunnus) voidaan sitten käyttää voimakas hyökkäykset.

    Aseta alla oleva koodi .htaccess-tiedostoon estä käyttäjätunnus.

     # Estää käyttäjänimien luettelon RewriteCond% QUERY_STRING author = d RewriteRule ^ /? [L, R = 301] 

    7. Estä roskapostittajat ja robotit

    Joskus haluat ehkä rajoittaa pääsyä tietyistä IP-osoitteista. Tämä koodinpätkä on helppo tapa estää roskapostittajia ja robotteja, joita tiedät.

     # Estää roskapostittajat ja robotit  Tilauksen salliminen, kieltää kieltäytyminen xx.xx.xx.xxx -palvelusta Kieltäytyy arvosta yy.yy.yy.yyy  Salli kaikki 

    8. Estä kuvien hotlinking

    Vaikka se ei ole turvallisuusuhka, kuvan hotlinking on edelleen ärsyttävää. Ihmiset eivät vain käytä kuviasi ilman lupaa mutta he jopa tekevät sen omalla kustannuksellaan. Näiden muutaman koodirivin avulla voit suojata sivustosi kuvien hotlinkingilta.

     # Estää kuvan hotlinkingin RewriteEngine-sovelluksen RewriteCond% HTTP_REFERER! ^ $ RewriteCond% HTTP_REFERER! ^ Http (t)?: // (www)? Webweb-sivustosi [NC] RewriteCond% HTTP_REFERER! s)?: // (www)? yourwebsite2.com [NC] RewriteRule (jpe? g? | png | gif | ico | pdf | flv | swf | gz) $ - [NC, F, L] 

    9. Rajoita suora pääsy laajennus- ja teema-PHP-tiedostoihin

    Se voi olla vaarallista, jos joku soittaa suoraan laajennus- ja teematiedostoihisi, tapahtuuko se vahingossa tai pahoinpitelijä. Tämä koodinpätkä tulee Acunetixin verkkosivujen tietoturvayhtiöstä; voit lukea lisää tästä haavoittuvuudesta blogipostissaan.

     # Rajoittaa pääsyä PHP-tiedostoihin pluginista ja teema-hakemistoista RewriteCond% REQUEST_URI! ^ / Wp-content / plugins / file / to / izslēgä .php RewriteCond% REQUEST_URI! ^ / Wp-content / plugins / directory / to / sulkea / RewriteRule wp-content / plugins / (. * php) $ - [R = 404, L] RewriteCond% REQUEST_URI! ^ / wp-content / themes / file / / sulje \ t REQUEST_URI! ^ / Wp-content / themes / hakemisto / kohteeseen / sulje / RewriteRule wp-content / themes / (. * Php) $ - [R = 404, L] 

    10. Määritä pysyvät uudelleenohjaukset

    Voit helposti käsittele pysyviä uudelleenohjauksia kanssa .htaccess. Ensin sinun on lisättävä vanha URL-osoite, seuraa sitten uusi URL-osoite joka osoittaa sivun, johon haluat ohjata käyttäjän.

     # Pysyvät uudelleenohjaukset Uudelleenohjaus 301 / oldurl1 / http://yoursite.com/newurl1 Uudelleenohjaus 301 / oldurl2 / http://yoursite.com/newurl2 

    11. Lähetä kävijät huoltosivulle

    Kirjoitimme tästä tekniikasta yksityiskohtaisesti täällä. Sinä tarvitset erillinen huoltosivu (maintenance.html esimerkissä) tätä .htaccess-sääntöä varten. Tämä koodi asettaa WordPress-sivuston huoltotilaan.

     # Ohjaa huoltosivulle  RewriteEngine on RewriteCond% REMOTE_ADDR! ^ 123 456 0789 000 RewriteCond% REQUEST_URI! /Maintenance.html$ [NC] RewriteCond% REQUEST_URI! (Jpe? G? | Png | gif ) [NC] RewriteRule. * /Maintenance.html [R = 503, L]  

    12. Rajoita kaikki käyttöoikeudet WP: hen

    / Wp-sisältää / kansio sisältää keskeiset WordPress-tiedostot jotka ovat välttämättömiä, jotta CMS toimisi. Sisältöä, laajennuksia, teemoja tai muuta, mitä käyttäjä haluaa käyttää täällä, ei ole. Niinpä turvallisuuden kovettamiseksi on parasta rajoittaa sitä.

     # Estää kaikki wp-kansiot ja tiedostot  RewriteEngine On RewriteBase / RewriteRule ^ wp-admin / sisältää / - [F, L] RewriteRule! ^ Wp-sisältää / - [S = 3] RewriteRule ^ wp-sisältää / [^ /] + \ t L] RewriteRule ^ wp-include / js / tinymce / langs /.+ php - [F, L] RewriteRule ^ wp-include / theme-compat / - [F, L]  

    13. Estä sivustojen väliset komentosarjat (XSS)

    Seuraava koodinpätkä on WP Mixistä ja se suojaa sivustoasi joitakin yleisiä XSS-hyökkäyksiä, nimittäin komentosarjojen injektiot ja pyrkimykset muuttaa globaaleja ja pyyntömuuttujia.

     # Estää joitakin XSS-hyökkäyksiä  RewriteCond% QUERY_STRING (% 3E) [NC, OR] RewriteCond% QUERY_STRING GLOBALS (= | [|% [0-9A-Z] 0,2) [OR] RewriteCond% QUERY_STRING  _REQUEST (= | [|% [0-9A-Z] 0,2) RewriteRule. * Index.php [F, L]  

    14. Ota selaimen välimuisti käyttöön

    Kuten aiemmin mainitsin, .htaccess ei ole vain turvallisuussyistä ja uudelleenohjauksista, mutta se voi myös auttaa sinua hallita välimuistia. Alla oleva koodinpätkä on peräisin Elegant-teemoista ja siitä tekee selaimen välimuistin mahdolliseksi antamalla vierailijoille tallentaa tietyntyyppisiä tiedostoja, joten ensi kerralla, kun he käyvät, heidän ei tarvitse ladata niitä uudelleen.

     # Ottaa käyttöön selaimen välimuistin  ExpiresActive On ExpiresByType image / jpg "access 1 year" ExpiresByType image / jpeg "access 1 year" ExpiresByType image / gif "access 1 year" ExpiresByType image / png "access 1 year" ExpiresByType text / css "access 1 month" ExpiresByType sovellus / pdf "access 1 month" ExpiresByType-teksti / x-javascript "access 1 month" ExpiresByType-sovellus / x-shockwave-flash "access 1 month" ExpiresByType-kuva / x-kuvake "access 1 year" VanheneeDefault "access 2 days"  

    15. Määritä mukautetut virhesivut

    Voit käyttää .htaccess-palvelua määrittämään mukautettuja virhesivuja WordPress-sivustossasi. Jotta tämä menetelmä toimisi, sinun täytyy myös luo mukautetut virhesivut (tilaustyönä 403.html, tilaustyönä 404.html esimerkissä) ja lataa ne juurikansioon.

    Voit määrittää mukautetun virhesivun kaikki HTTP-virheen tilakoodit (4XX- ja 5XX-tilakoodit).

     # Asettaa mukautetut virhesivut ErrorDocument 403 /custom-403.html ErrorDocument 404 /custom-404.html