Szerkesztés

Share via


WordPress az Azure-ban

Azure App Service
Azure Front Door
Azure Kubernetes Service (AKS)
Azure Web Application Firewall
Azure Private Link

A WordPress egy sokoldalú és népszerű tartalomkezelő rendszer, amely különböző méretű webhelyek létrehozására szolgál, több célra. A kis személyes blogoktól a nagy léptékű vállalati webhelyekig és e-kereskedelmi üzletekig a WordPress számos funkciót és testreszabást kínál a különböző igényeknek megfelelően. Azonban a telepítések különböző méretei és használati esetei miatt a WordPress egyedi üzemeltetési követelményekkel is rendelkezik, amelyek olyan tényezőktől függnek, mint a forgalom mennyisége és a tárolási igények.

Ez a cikk a WordPress Azure-beli üzembe helyezését ismerteti. Útmutatást nyújt a biztonságos, skálázható és költséghatékony telepítés biztosításához megfontolandó és implementálandó szempontokhoz.

Általános WordPress biztonsági és teljesítménytippek

Elsöprő népszerűsége miatt a WordPress a hackerek célpontja. A platformon futó webhelyek sebezhetőek lehetnek az olyan biztonsági fenyegetésekkel szemben, mint a kártevők és az adathalászati támadások. Az alábbi tippek segíthetnek ezeknek a kockázatoknak a megoldásában egy biztonságosabb és hatékonyabb WordPress-telepítés létrehozásával.

Akár virtuális gépet (VM-et) vagy Azure App Service használ az üzemeltetési architektúrához, akár más megoldást használ, ezek a tippek érvényesek.

Az Azure Web Application Firewall használata

Web Application Firewall segít a webhely biztonságossá tételében a gyakori webes támadások ellen. Ez szűrőként működik a webhely és az internet között. Ebben a kapacitásban Web Application Firewall figyeli a bejövő forgalmat, és blokkolja azokat a rosszindulatú kéréseket, amelyek kihasználhatják a webhely kódjában található biztonsági réseket. Web Application Firewall segít megvédeni webhelyét számos támadástól, beleértve az SQL-injektálást, a helyek közötti szkriptelést (XSS) és a helyek közötti kérelemhamisítást (CSRF).

A webalkalmazások központosított védelméhez az Azure Front Dooron Web Application Firewall kell használnia. Az Azure Front Door egy tartalomkézbesítési hálózat, amely gyors, megbízható és biztonságos hozzáférést biztosít a felhasználóknak az alkalmazások statikus és dinamikus webes tartalmaihoz. A Web Application Firewall az Azure Front Dooron való üzembe helyezése segít megvédeni a webszolgáltatásokat a gyakori biztonsági résekkel és biztonsági résekkel szemben.

A nem használt beépülő modulok és témák eltávolítása

Távolítsa el a nem használt beépülő modulokat és témákat a WordPress-telepítésből. Ez a lépés fontos a WordPress-webhely biztonságának és teljesítményének optimalizálásának elősegítéséhez. Még egy olyan beépülő modul vagy téma is, amelyet nem használ aktívan, biztonsági kockázatot jelenthet azáltal, hogy belépési pontot biztosít a támadóknak az elavult vagy nem felügyelt kódban található biztonsági rések kihasználásához. Emellett, ha sok beépülő modul és téma van telepítve a webhelyen, a terhelési idő és a kiszolgálói erőforrás-használat növelésével lelassíthatja a teljesítményét.

Statikus tartalom kiszervezése a PHP-processzortól

A PHP-processzor terhelésének csökkentése érdekében ki kell töltenie a statikus tartalmakat, például képeket, videókat és CSS-fájlokat. A statikus tartalom kiszervezése segít optimalizálni a webhely teljesítményét és csökkenteni a kiszolgáló terhelését. Amikor egy felhasználó felkeres egy webhelyet, a kiszolgáló PHP-kódot dolgoz fel, és dinamikusan generál HTML-tartalmat. Ez a folyamat erőforrás-igényes. A statikus tartalom azonban nem változik gyakran, így a statikus tartalmakat közvetlenül kiszolgáló fájlrendszerből vagy tartalomkézbesítési hálózatból is kiszolgálhatja. Ezeknek az eszközöknek a kiszervezésével csökkentheti a kiszolgáló processzorára és RAM-jára vonatkozó terhelést. Ez a konfiguráció gyorsabb lapbetöltési időt, jobb webhelyteljesítményt és jobb felhasználói élményt eredményez.

A tartalomkézbesítési hálózati szolgáltatás, például az Azure Front Door statikus erőforrásainak kiszolgálása más előnyökkel is jár. Ha például statikus tartalmat tölt ki, csökkentheti a késést, és növelheti a webhely sebességét azáltal, hogy a kiszolgálókat a felhasználók földrajzi helyéhez közel helyezi.

Megjegyzés

Ahhoz, hogy az Azure Front Door egy privát végpont használatával biztonságossá tegye a forrást, az Azure Front Door prémium termékváltozatát kell használnia. További információ: A forrás védelme Private Link.

A tartalomkézbesítési hálózati gyorsítótár érvénytelenítése

A tartalomkézbesítési hálózatot (például az Azure Front Doort vagy az Azure Content Delivery Networket) használó nagy WordPress-telepítések esetében gyorsítótár-érvénytelenítési logikát kell implementálnia. Amikor új esemény történik, érvénytelenítenie kell a gyorsítótárat az érintett oldal tartalomkézbesítési hálózatában. Az események közé tartozik például egy új cikk közzététele, egy meglévő lap frissítése és egy megjegyzés hozzáadása. Az érvénytelenítési logikának meg kell keresnie a módosítás által érintett összes URL-címet. A logikának konkrétan meg kell keresnie és érvénytelenítenie kell a dinamikusan létrehozott lapokat, például a kategóriákat és az archívumokat a tartalomkézbesítési hálózati gyorsítótárban. Néhány telepített téma és beépülő modul esetén még egy kisebb módosítás is hatással lehet minden oldalra.

A felderítési logika megvalósításának egyszerű módja egy beépülő modul használata, amely lehetővé teszi a gyorsítótár érvénytelenítésének manuális aktiválását az összes URL-cím esetében. Ha azonban az összes URL-címet egyszerre érvényteleníti, a forgalom megugrik a WordPress-webhelyen. A Content Delivery Network gyorsítótár-érvénytelenítési logikáját az Azure Cache kiürítése és a Kampó üzembe helyezése a GitHubon című cikkben talál.

A kéttényezős hitelesítés engedélyezése

A kétfaktoros hitelesítés növeli a telepítés biztonságát, és segít megvédeni a rendszergazdai fiókokat a jogosulatlan hozzáféréstől és támadásoktól. A kéttényezős hitelesítés előnyeinek kihasználásához használhat egy beépülő modult, például a miniOrange hitelesítési beépülő modult. Ez a beépülő modul többek között lehetővé teszi a Microsoft Authenticator kéttényezős hitelesítési módszerként való konfigurálását azoknak a felhasználóknak, akik rendszergazdaként jelentkeznek be a WordPress-webhelyre.

XML-RPC-hozzáférés letiltása

Az XML-RPC egy távoli protokoll, amellyel külső alkalmazások kommunikálhatnak a webhely kiszolgálójával. Ez a protokoll azonban gyakori célpont a hackerek számára is, akik találgatásos támadások indítására vagy a tartalomkezelő rendszer biztonsági réseinek kihasználására használják. Ha az Azure Front Doort használja, letilthatja az XML-RPC-t úgy, hogy beállít egy megtagadási szabályt az URL-címekhez a formátummal /xmlrpc.php.

Hozzáférés korlátozása a felügyeleti panelhez

Alapértelmezés szerint a WordPress felügyeleti panelje bárki számára elérhető a fiók hitelesítő adataival és a megfelelő URL-címmel, amelynek formátuma /wp-login.php vagy /wp-admin. Ennek eredményeképpen a hackerek és más rosszindulatú szereplők megpróbálhatják kitalálni a hitelesítő adatait, munkamenet-eltérítést hajthatnak végre, találgatásos támadásokat indíthatnak, vagy kihasználhatják a WordPress biztonsági réseit a hozzáférés megszerzéséhez.

Web Application Firewall segíthet megelőzni bizonyos támadásokat, de sok rendszergazda inkább hálózati szinten korlátozza a WordPress felügyeleti panelhez való hozzáférést.

Letilthatja például a privát URL-címekhez való hozzáférést az Azure Front Doorban. Ezután a Azure Application Gateway használatával belső hozzáférést biztosíthat egy küllős topológiát használó magánhálózatról. A Application Gateway belső példányai támogatják Web Application Firewall szabályokat és az Azure Front Door-szabályokat. Ezek a szabályok segítenek megvédeni a WordPress-telepítést a belső támadásokkal szemben. Ha el tudja viselni a belső támadás kockázatát, használhatja a Azure Load Balancer belső példányát a Application Gateway helyett. Load Balancer az Open Systems-összekapcsolási (OSI) modell negyedik rétegében működik.

A WordPress felügyeleti panelhez való nyilvános hozzáférést letiltó architektúradiagram. A küllős topológiában található VPN belső hozzáférést biztosít.

Töltse le az architektúra Visio-fájlját.

Egyes WordPress beépülő modulokhoz nyilvánosan elérhető és eltávolítandó formátumú /wp-admin/admin-ajax.php URL-címekre van szükség.

Titkos kulcsok tárolása az Azure Key Vaultban

A WordPress azure-beli üzemelő példányainak biztonságának biztosítása érdekében javasoljuk, hogy a titkos kulcsokat, például az adatbázisjelszavakat, a TLS-t vagy az SSL-tanúsítványokat a Key Vault tárolja. Ez a felhőalapú szolgáltatás segít biztonságosan tárolni és felügyelni a titkosítási kulcsokat, tanúsítványokat és titkos kulcsokat.

Key Vault segít az engedélyezett alkalmazásoknak és szolgáltatásoknak a titkos kódok biztonságos elérésében. Nem kell egyszerű szövegben tárolnia őket a WordPress-tárolórendszerképben vagy az alkalmazáskódban.

Teljesítmény hangolása

A WordPress teljesítményének optimalizálásához különböző beállításokat kell hangolnia, és beépülő modulokat kell használnia. Az alábbi beépülő modulok hasznosak lehetnek a WordPress-telepítések hibakereséséhez:

  • A Lekérdezésfigyelő az egyes SQL-lekérdezésekre és egyéb műveletekre fordított idő lebontását biztosítja. Ilyenek például a PHP-hibák, a horgok és a műveletek, a blokkszerkesztő blokkok, az enqueued szkriptek és stíluslapok, valamint a HTTP API-hívások.
  • A Laps a WordPress-lapok betöltésének idejét részletezi.

A WordPress üzemeltetési kihívásai

A WordPress alkalmazásarchitektúrája számos üzemeltetési kihívást jelent, többek között a következőket:

  • Skálázhatóság. Az üzemeltetési architektúrának képesnek kell lennie a csúcsforgalmi időszakokban történő vertikális felskálázásra.
  • ReadWriteMany (RWX) tároló. Alapértelmezés szerint a WordPress a könyvtárban tárolja az /wp-content/ összes statikus objektumot, beépülő modult és témaforráskódot. A vertikális felskálázás során minden csomópontnak képesnek kell lennie arra a könyvtárra való olvasásra és írásra.
  • A másodpercenkénti bemeneti/kimeneti műveletek (IOPS) tárolási osztálya. A WordPress több mint 1000 kis .php fájlból áll, amelyeket a PHP-processzor a bejövő kérések során hivatkozik, tölt be és futtat. Egyes protokollok esetén a sok kis fájl betöltése növelheti a többletterhelést. A teljes teljesítmény így lassabb, mint egy azonos teljes méretű fájl betöltése. Ennek eredményeképpen a tárolási megoldásnak támogatnia kell a magas IOPS-t.
  • Gyorsítótár érvénytelenítése. Ha új tevékenység van az alkalmazásban, például amikor új cikket tesz közzé, érvénytelenítenie kell a gyorsítótárat az összes csomóponton.
  • A gyorsítótár összeállításának ideje. Egy adott csomópont első felhasználója esetében a válaszidő lassú lehet, amíg a gyorsítótár létre nem jön.

A WordPress üzemeltetési lehetőségei az Azure-ban

A WordPress App Service, Azure Kubernetes Service (AKS) és Azure Virtual Machines futtatható. A telepítés mérete fontos tényező a kiválasztott gazdagépen. Kis és közepes telepítés esetén a App Service költséghatékony megoldás. Nagyobb telepítések esetén azonban érdemes megfontolni az AKS-t vagy a virtuális gépek üzemeltetését.

WordPress a App Service

A Microsoft teljes körűen felügyelt megoldást kínál a WordPress futtatásához App Service on Linux virtuális gépeken. Részletes információkért lásd: WordPress-webhely létrehozása. Ez a megoldás:

  • A WordPress-telepítés gyors és egyszerű üzembe helyezéséhez készült.
  • Ideális kis- és közepes méretű WordPress-telepítésekhez.
  • Összetett konfiguráció vagy felügyelet nélkül biztosítja az Azure-platform méretezhetőségét, megbízhatóságát és biztonságát.
  • Automatikus frissítéseket, biztonsági mentéseket és monitorozást hajt végre, hogy a webhely mindig elérhető legyen.

További információ: WordPress a App Service.

Tárigényes számítási feladatok

A nagy WordPress-telepítések tárhelyigényesek lehetnek. Ezekben a forgatókönyvekben magas IOPS-osztályt és alacsony késést tartalmazó tárolási megoldást kell használnia. Javasoljuk, hogy Azure NetApp Files. Azure NetApp Files támogatja a tárolóigényes WordPress-telepítéseket. Emellett olyan további funkciókat is biztosít, mint az adatvédelem, a biztonsági mentés és visszaállítás, a régiók közötti replikáció és a vészhelyreállítás.

A WordPress tároló üzembe helyezéséhez az AKS-t kell használnia. A Azure NetApp Files segítségével implementáljon tárolót egy Kubernetes Container Storage Interface (CSI) illesztővel. Azure NetApp Files olyan ReadWriteMany módot kínál, amely lehetővé teszi, hogy az összes csomópont ugyanarra a tárolóra tudjon olvasni és írni. További információ: AKS WordPress architektúra.

A virtuális gépeken futó nagy WordPress-telepítés esetén a hálózati fájlrendszer (NFS) protokollon keresztül kell csatlakoztatnia Azure NetApp Files. További információ: WordPress virtuális gépeken.

Nem módosítható WordPress-tároló

A hagyományos üzemeltetési módszerek alternatív megközelítése a WordPress nem módosítható tárolóba való üzembe helyezése. Ennek a megközelítésnek előnyei és hátrányai vannak. A forráskód és a nem módosítható tárolókban lévő összes erőforrás javítva van, és az üzembe helyezés után nem módosítható. A tárolórendszerkép új verziójában minden módosítást el kell végeznie, beleértve az új beépülő modulok telepítését vagy a WordPress core frissítését. Bár ez a megközelítés segít biztosítani a konzisztenciát és leegyszerűsíti a visszaállításokat, a módosítások elvégzéséhez létre kell hoznia egy üzembehelyezési folyamatot. Emellett a nem módosítható tárolók korlátozottak lehetnek az általuk kínált állandó tárolási lehetőségekben. Előfordulhat, hogy ki kell dolgoznia egy megoldást a médiafájlok és más adatok kezelésére. A korlátozások ellenére a nem módosítható tárolótelepítések a biztonság, a méretezhetőség és a hordozhatóság szempontjából előnyökkel járnak.

A WordPress nem módosítható tárolóalapú verzióját különböző platformokon, például az Azure Container Appsben, az AKS-ben és App Service is üzembe helyezheti egyéni tárolórendszerképekkel. A tárolórendszerképet a Azure Container Registry tárolhatja.

Közreműködők

Ezt a cikket a Microsoft tartja karban. Eredetileg a következő közreműködők írták.

Fő szerző:

Egyéb közreműködők:

  • Adrian Calinescu | Vezető felhőmegoldás-tervező

A nem nyilvános LinkedIn-profilok megtekintéséhez jelentkezzen be a LinkedInbe.

Következő lépések

Termékdokumentáció:

Képzési modulok: