A 403-as hiba egy gyakori HTTP állapotkód, amely akkor fordul elő, hogy ha a kliens kapcsolatba tudott lépni a szerverrel, de nincs engedélye a kért erőforrás (a weben lévő fájl) elérésére. Ez a hiba legtöbbször a kiszolgálón lévő fájlengedély-problémák miatt fordul elő, vagy azért, mert a webhelyről hiányoznak az index állományok.
Az index.php (vagy index.html) fájl a weboldal fő fájlja, amely alapértelmezett oldalként jelenik meg, amikor a felhasználó felkeres egy adott webcímet.
Milyen esetekben kapok 403-as hibát?
- Hiányzik az index fájl a webhely gyökérkönyvtárból (index.php, index.html, default.asp stb.)
- vagy weboldalhoz való hozzáférés korlátozása Geo_IP modul segítségével
- WordPress esetében ez a hiba például az adminisztrációhoz való többszöri sikertelen hozzáférési kísérletet jelent (jelszó és felhasználónév) megadása után, vagy olyan országból történő bejelentkezési kísérletet, amely nem szerepel a megengedett országok listáján. .htaccess fájl.
Hiányzik az index fájl a webhely gyökérkönyvtárában
A weboldal megjelenítéséhez szükséges, hogy a webhely gyökérmappájában jelen legyen az úgynevezett index fájl (a fő domainnél www, az aldomainnél pedig a subdoms/aldomain_neve). Ez a fájl, amelyet a webszerver először keres a megjelenítéséhez. Ha ez a fájl hiányzik a gyökérmappából, a kiszolgáló 403-as hibát ad vissza.
A weboldalhoz való hozzáférés korlátozása a Geo_IP modul segítségével
A hozzáférés a mod_geoip Apache modullal korlátozható. Ennek köszönhetően meghatározható, hogy a felhasználó melyik országból tekintheti meg a weboldalt, és melyikből nem. Ha egy felhasználó egy nem engedélyezett ország webhelyét próbálja meg megtekinteni, a szerver 403-as hibát ad vissza, és megtagadja a hozzáférést a webhelyhez.
A mod_geoip Apache modul az Apache webszerverhez való modul, amely lehetővé teszi a webhely látogatóinak földrajzi helyzetének azonosítását IP-cím alapján. Ez a modul a MaxMind által biztosított IP-címekre vonatkozó földrajzi információk adatbázisát használja, és lehetővé teszi az Apache webszerverek számára, hogy tartalmat jelenítsenek meg a látogatók földrajzi elhelyezkedése alapján.
403-as hiba a WordPress adminisztrációs felületén
Itt két okból adódhat probléma. Az első ok a szerveren alkalmazott brute force támadások elleni védelem. Ha valaki elavult hitelesítő adatokkal próbál bejelentkezni az adminisztrációba, a szerver több próbálkozás után 403-as hibát ad vissza, és 20 percre blokkolja a felhasználó IP-címét. A blokkolás ideiglenes.
A brute force támadás (más néven brute force attack) egy olyan titkosított vagy kódolt adatok elleni támadás, amelynek során a támadó egyszerűen úgy próbál hozzáférni az adatokhoz, hogy megpróbálja a jelszavak vagy kulcsok összes lehetséges kombinációját, amíg meg nem találja a megfelelőt. Ezt a fajta támadást gyakran használják jelszavak feltörésére, ahol a támadó olyan programot használ, amely a karakterek összes lehetséges kombinációját kipróbálja, akár egymás után, akár párhuzamosan több számítógépen egyszerre.
A második lehetőség, amikor 403-as hiba léphet fel a WordPress adminisztrációjában, a felhasználói hozzáférés korlátozása a mod_geoip modul segítségével. A Linux-kiszolgálón létrehozott webtárak tartalmazhatnak egy .htaccess fájlt a következő direktívával:
RewriteEngine on RewriteCond %{REQUEST_URI} /(xmlrpc|wp-login)\.php
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(CZ|SK|PL|HU)$
RewriteRule ^(.*)$ - [F,L]
A sor, amely az úgynevezett országkódot használja a hozzáférésre jogosult országok meghatározására:
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(CZ|SK|PL|HU)$
Ha például 403-as hibaüzenetet kap egy németországi kapcsolatról az adminisztráció elérésekor, akkor ezt a fájlt szerkeszteni kell, és a sorba hozzá kell adni az ország országkódját.
Tehát ebben az esetben ez a sor így nézne ki:
RewriteCond %{ENV:GEOIP_COUNTRY_CODE} !^(CZ|SK|PL|HU|DE)$
Az országkódok teljes listája itt található: https://www.geonames.org/countries/