Preskoči na sadržaj
BeoHosting
BeoHosting
Sigurnost

Kako zaštititi WordPress admin panel

BeoHosting Team··9 min čitanja čitanja
Kako zaštititi WordPress admin panel

Zašto je zaštita admin panela kritična

WordPress admin panel je najčešća meta hakera jer im pristup admin panelu daje potpunu kontrolu nad sajtom. Svaki WordPress sajt ima podrazumijevanu login stranicu na adresi /wp-admin ili /wp-login.php što je opće poznata informacija. Automatizirani botovi 24 sata dnevno pokušavaju da pristupe ovim URL-ovima koristeći brute force napade, rečnike lozinki i ukradene kredencijale iz data breach-eva. Prema statistikama, prosječan WordPress sajt prima preko 10.000 neovlašćenih pokušaja prijave mjesečno.

Kompromitiran admin panel omogućava napadaču da instalira malware, ukrade podatke korisnika, koristi server za slanje spam emailova, postavi phishing stranice ili potpuno obriše sajt. Posljedice mogu biti katastrofalne uključujući gubitak prihoda, oštećenje reputacije, pravne probleme zbog curenja podataka i blacklisting od strane Google-a. Zaštita admin panela nije opciona već obavezna mjera sigurnosti za svaki WordPress sajt.

Promjena login URL-a

Zašto promijeniti URL

Promjena podrazumijevanog login URL-a je prva linija odbrane poznata kao security through obscurity. Iako ovo samo po sebi nije dovoljno za zaštitu, značajno smanjuje broj automatiziranih napada jer botovi traže /wp-admin i /wp-login.php adrese. Promijenjen URL eliminira ogromnu većinu automatiziranih brute force napada koji čine 95 posto svih napada na WordPress login stranice.

WPS Hide Login plugin

WPS Hide Login je lagan plugin sa preko milijun aktivnih instalacija koji jednostavno mijenja URL login stranice. Nakon instalacije, idite u Settings pa WPS Hide Login i unesite novi URL poput /moj-pristup ili /tajni-ulaz. Plugin ne mijenja fajlove i ne dodaje rewrite pravila već jednostavno presreće zahtjeve. Zapamtite novi URL ili ga sačuvajte na sigurnom mjestu jer ćete bez njega ostati zaključani iz admin panela. Ako zaboravite URL, možete deaktivirati plugin putem FTP-a ili phpMyAdmin-a brisanjem iz wp-content/plugins direktorijuma.

Alternativni načini

Ako ne želite koristiti plugin, možete sakriti login stranicu korištenjem htaccess pravila u Apache-u ili location bloka u Nginx-u. Na primjer, možete blokirati pristup wp-login.php za sve osim za određene IP adrese ili koristiti HTTP Basic Authentication kao dodatni sloj zaštite ispred WordPress login forme. Ovo dodaje dijalog za unos korisničkog imena i lozinke prije nego što se uopće prikaže WordPress login forma čime se napadaču daje dupla prepreka.

Ograničavanje pokušaja prijave

Brute force zaštita

Brute force napad pokušava različite kombinacije korisničkih imena i lozinki dok ne pogodi ispravne. WordPress podrazumijevano ne ograničava broj pokušaja prijave što znači da napadač može pokušati milijune kombinacija. Ograničavanje pokušaja prijave je apsolutno neophodna mjera koja blokira IP adresu nakon određenog broja neuspješnih pokušaja. Ovo čini brute force napade nepraktičnim jer napadač može pokušati samo nekoliko lozinki prije blokade.

Limit Login Attempts Reloaded

Limit Login Attempts Reloaded je najpopularniji plugin za ovu svrhu sa preko 2 milijuna aktivnih instalacija. Plugin blokira IP adresu nakon podešenog broja neuspješnih pokušaja sa progresivno dužim vremenima blokade. Preporučena konfiguracija je 3 dozvoljena pokušaja prije blokade od 20 minuta, pa 3 blokade prije produžene blokade od 24 sata. Plugin šalje email obavještenja administratoru o blokiranim IP adresama i pruža statistiku o broju blokiranih napada.

Fail2ban na server nivou

Za ozbiljniju zaštitu, Fail2ban na server nivou je superiorno rješenje jer blokira IP adrese na firewall nivou prije nego što zahtjev uopće dođe do WordPress-a. Fail2ban čita WordPress auth logove i automatski dodaje firewall pravila za IP adrese koje imaju previše neuspješnih pokušaja prijave. Ovo je efikasnije od plugin rješenja jer se troši manje server resursa na odbijanje napada. Konfiguracija uključuje kreiranje Fail2ban jail-a za WordPress i filter koji prepoznaje neuspješne login pokušaje u access logu.

Dvofaktorska autentifikacija (2FA)

Šta je 2FA i zašto je neophodan

Dvofaktorska autentifikacija dodaje drugi sloj zaštite pored lozinke tako što zahtijeva nešto što korisnik zna (lozinku) i nešto što korisnik ima (telefon sa autentifikatorom). Čak i ako napadač sazna vašu lozinku putem phishing-a, data breach-a ili brute force-a, ne može pristupiti admin panelu bez drugog faktora. Google istraživanje pokazuje da 2FA blokira 99.9 posto automatiziranih napada i 96 posto ciljanih phishing napada.

Implementacija 2FA

WP 2FA je odličan besplatni plugin koji podržava TOTP vremenski zasnovane jednokratne lozinke koje rade sa Google Authenticator, Authy, Microsoft Authenticator i drugim autentifikator aplikacijama. Nakon instalacije, svaki korisnik skenira QR kod sa autentifikator aplikacijom i pri svakoj prijavi unosi šestocifreni kod koji se mijenja svakih 30 sekundi. Plugin također podržava backup kodove za situacije kada korisnik nema pristup telefonu i mogućnost prisiljavanja 2FA za određene korisničke uloge.

Hardware sigurnosni ključevi

Za najviši nivo sigurnosti, WebAuthn standard omogućava korištenje fizičkih sigurnosnih ključeva poput YubiKey za prijavu u WordPress. Hardware ključevi su otporni na phishing jer su vezani za specifičan domen i ne mogu biti presretnuti. WordPress 5.6 i novije verzije imaju ugrađenu podršku za Application Passwords a plugini poput WP-WebAuthn dodaju punu podršku za FIDO2 hardverske ključeve. Ovo je preporučeno za administratore sajtova sa osjetljivim podacima.

IP Whitelist

Ograničavanje pristupa po IP adresi

Ako pristupate admin panelu sa fiksne IP adrese ili malog broja poznatih IP adresa, možete ograničiti pristup samo na te adrese. Ovo je najstroža forma zaštite jer potpuno blokira pristup admin panelu sa svih nepoznatih lokacija. U htaccess fajlu u wp-admin direktorijumu, koristite Order Deny Allow direktivu da dozvolite samo određene IP adrese. U Nginx-u koristite allow i deny direktive u location bloku za wp-admin.

Dinamički IP problemi

Većina korisnika ima dinamičku IP adresu koja se mijenja periodično što čini statički IP whitelist nepraktičnim. Rješenja uključuju korištenje VPN servisa sa fiksnom IP adresom koji daje konzistentnu IP adresu bez obzira na lokaciju. Alternativno, možete koristiti CloudFlare Access ili Zero Trust rješenja koja autentifikiraju korisnika prije nego što dozvole pristup admin URL-u. Neki plugini poput iThemes Security nude mogućnost slanja magic link-a na email za privremeno dodavanje IP adrese na whitelist.

Sigurnosni plugini

Wordfence Security

Wordfence je najpoznatiji WordPress sigurnosni plugin sa preko 4 milijuna aktivnih instalacija. Nudi web application firewall koji blokira poznate napade prije nego što dospeju do WordPress-a, malware skener koji pregleda sve WordPress fajlove i upoređuje ih sa originalima iz repozitorijuma, real-time threat intelligence sa informacijama o najnovijim pretnjama, login security sa 2FA i brute force zaštitom i live traffic monitoring koji pokazuje sve zahtjeve u realnom vremenu. Besplatna verzija pokriva većinu potreba dok premium verzija dodaje real-time firewall pravila i prioritetnu podršku.

Sucuri Security

Sucuri nudi cloud-based WAF koji je firewall na nivou DNS-a što znači da maliciozni zahtjevi nikada ne dospeju do vašeg servera. Ovo je posebno efikasno protiv DDoS napada i zero-day exploit-a jer Sucuri tim konstantno ažurira pravila. Plugin za WordPress nudi monitoring integriteta fajlova, sigurnosno logiranje, blacklist monitoring i post-hack akcije za čišćenje kompromitiranog sajta. Sucuri je premium servis ali je odlično ulaganje za poslovne sajtove i e-commerce platforme.

iThemes Security

iThemes Security, ranije poznat kao Better WP Security, nudi preko 30 sigurnosnih mjera u jednom pluginu. Ključne funkcionalnosti uključuju promjenu admin URL-a, zaštitu od brute force napada, detekciju izmjena fajlova, prisilne jake lozinke, zabranu problematičnih korisničkih agenata, skrivanje WordPress verzije i automatsko ažuriranje. Dashboard prikazuje sigurnosnu ocjenu sajta sa preporukama za poboljšanje. Pro verzija dodaje 2FA, zakazano skeniranje malvera i reCAPTCHA integraciju.

Dodatne mjere zaštite

Jaka lozinka i korisničko ime

Nikada ne koristite admin kao korisničko ime jer je to prvo što botovi pokušavaju. Koristite jedinstveno korisničko ime koje nije javno vidljivo na sajtu. Lozinka treba da ima najmanje 16 karaktera sa kombinacijom velikih i malih slova, brojeva i specijalnih karaktera. Koristite menadžer lozinki poput Bitwarden-a ili 1Password-a za generiranje i čuvanje jakih lozinki. Ne koristite istu lozinku za WordPress admin i druge servise jer curenje podataka na jednom servisu kompromitira sve račune sa istom lozinkom.

SSL certifikat

SSL certifikat šifruje komunikaciju između browsera i servera uključujući korisničko ime i lozinku pri prijavi. Bez SSL-a, podaci za prijavu putuju u čistom tekstu i mogu biti presretnuti na javnim WiFi mrežama ili kompromitiranim mrežama. Na BeoHosting-u svi planovi uključuju besplatan Let's Encrypt SSL certifikat sa automatskim obnavljanjem. Nakon instalacije SSL-a, dodajte u wp-config.php konstantu FORCE_SSL_ADMIN sa vrijednošću true da prisilite korištenje HTTPS-a za cijeli admin panel.

Redovno ažuriranje

Većina uspješnih napada na WordPress koristi poznate ranjivosti u zastarelim verzijama. Pogledajte detaljan vodič za zaštitu sajta, tema ili plugina. Ažurirajte WordPress, teme i plugine čim nova verzija poštane dostupna. Uključite automatsko ažuriranje za minor verzije WordPress-a i sigurnosne zakrpe. Prije velikih ažuriranja, napravite kompletan backup sajta. Obrišite nekorištene teme i plugine jer čak i deaktivirani plugini mogu sadržati ranjivosti koje napadači mogu eksploatirati.

Zaključak

Zaštita WordPress admin panela zahtijeva višeslojni pristup jer nijedna pojedinačna mjera nije dovoljna sama za sebe. Kombinirajte promjenu login URL-a za eliminaciju automatiziranih napada, ograničavanje pokušaja prijave za brute force zaštitu, 2FA za zaštitu od kompromitiranih lozinki, IP whitelist za najstroži pristup i sigurnosni plugin za sveobuhvatni monitoring i zaštitu. Na BeoHosting WP hosting planovima uključena je server-level zaštita sa Fail2ban-om, ModSecurity WAF-om i automatskim backup-om za maksimalnu sigurnost vašeg sajta.

BeoHosting Team

10+ godina iskustva — Stručnjaci za web hosting i infrastrukturu

  • Web Hosting
  • WordPress Hosting
  • VPS
  • Dedicated Serveri
  • Domeni
  • SSL
  • cPanel
  • LiteSpeed
  • Linux administracija
  • DNS

Posljednje ažuriranje: