Modul 3 · 3.1
A https és a tanúsítvány
Modul 3: Cím, https és felhasználók · Olvasási idő: 8 perc
Tanulási cél: E lecke után teljesen https-re tudja állítani a WordPress-weboldalát, és tudni fogja, mire való a WordPress-cím és a weboldal címe.
Kulcsfogalmak: TLS, tanúsítvány, Let's Encrypt, automatikus megújítás, WordPress-cím (siteurl), weboldal címe (home), WP_HOME és WP_SITEURL, HSTS, kizárás
Mire való a https
A https használatával minden titkosítva halad a böngésző és a szerver között: jelszavak, űrlapok, sütik, és a hétköznapi oldalak is. Https nélkül bárki, aki ugyanazon a hálózaton van (egy nyilvános wifi, egy feltört router), olvashatja az adatokat, sőt az oldalt is megváltoztathatja. A böngészők „nem biztonságos”-ként jelzik a https nélküli weboldalt, és egyes funkciók (mint a helymeghatározás vagy a kamera) csak https mellett működnek.
A titkosítás neve TLS. Annak bizonyítására, hogy a böngésző valóban a example.com szerverrel kommunikál, nem egy közbeékelődő féllel, a szervernek tanúsítványa van: egy digitális igazolás, amelyet egy a böngészők által megbízhatónak tartott kibocsátó írt alá. A tanúsítvány megnevezi, mely nevekre érvényes, és meddig.
Ingyenes tanúsítványok és megújítás
A Let's Encrypt ingyenes tanúsítványokat bocsát ki. Szinte minden tárhelyszolgáltató automatikusan igényli és automatikusan meg is újítja ezeket. A Let's Encrypt tanúsítványa jelenleg 90 napig érvényes, és a Let's Encrypt bejelentette, hogy ezt az érvényességet fokozatosan 45 napra csökkenti. A kézi megújítás ezért nem megoldás: ennek automatikusan kell történnie.
Egy fizetős tanúsítvány nem titkosít jobban. A különbség a szervezet további ellenőrzésében rejlik (és néha egy garanciában). A legtöbb weboldalhoz egy ingyenes tanúsítvány tökéletesen megfelel.
Mire figyeljen:
- A tanúsítványnak minden olyan nevet le kell fednie, amelyet a látogató begépelhet:
example.coméswww.example.comis. Azt a nevet is, amely csak átirányít, mert a böngésző a tanúsítványt az átirányítás előtt ellenőrzi. - Az automatikus megújítás csak akkor sikerül, ha a DNS a szerverére mutat. Ha áthelyezte a DNS-t, vagy proxyt (mint a Cloudflare) állított be előtte, ellenőrizze, hogy a megújítás még működik-e.
- Egy CAA rekord a DNS-ben meghatározhatja, mely kibocsátók hozhatnak létre tanúsítványt. Ha a Let's Encrypt nincs ott felsorolva, az igénylés meghiúsul (DNS tanfolyam, 5.2 lecke).
Két cím a WordPressben
A Beállítások > Általános alatt két cím található. Feleslegesen kettőzöttnek tűnhetnek, de más a jelentésük:
| Mező | Az adatbázisban | Jelentés |
|---|---|---|
| WordPress-cím (URL) | siteurl | Hol vannak a WordPress fájljai (wp-admin, wp-includes) |
| Weboldal címe (URL) | home | A cím, amelyet a látogatók használnak |
Legtöbbször megegyeznek, például mindkettő https://example.com. Csak akkor térnek el, ha a WordPress egy almappában van, de a weboldalnak a főmappán kell megjelennie.
A WordPress ezekkel a címekkel építi fel az összes linket: oldalakhoz, stíluslapokhoz, képekhez, a kezelőfelülethez. Ha itt http:// szerepel, akkor a WordPress http:// linkekkel építi fel az oldalakat, még akkor is, ha a látogató https-en keresztül érkezik. Ez vegyes tartalmat (mixed content) (3.2. lecke) és oda-vissza átirányításokat okoz.
A weboldal átállítása https-re
Ha meglévő weboldala http-n fut, ezek a lépések:
- Tanúsítvány igénylése mindkét névre, és annak ellenőrzése, hogy a
https://example.comműködik (ekkor egy WordPress-oldalt lát, talán még formázás nélkül). - Biztonsági mentés készítése (8.1. lecke).
- Mindkét cím beállítása
https://-re a Beállítások > Általános menüpontban, majd mentés. Ki fogja jelentkeztetni; jelentkezzen be újra https-en keresztül. - A tartalomban lévő régi linkek átalakítása
http://example.com-rólhttps://example.com-ra. Ezt olyan eszközzel végezze, amely érti a szerializált adatokat, mint awp search-replacevagy egy keresés-csere bővítmény (3.2. lecke), soha ne egy sima SQL-utasítással. - Átirányítás: állítsa be, hogy a webszerver minden http-kérést 301-es átirányítással küldjön https-re (3.2. lecke). Sok tárhelyszolgáltatónál van erre egy jelölőnégyzet; ha nincs, néhány sor a
.htaccessfájlban megoldja. - Ellenőrzés e lecke és a 3.2. lecke feladatával.
Kizárva: ha a cím hibásan van beállítva
Ha elgépeli a címeket (htps://, rossz domain), a WordPress a mentés után erre a hibás címre irányítja Önt. A kezelőfelület ekkor már nem elérhető. Nincs ok a pánikra, két kiút van:
A wp-config.php fájlon keresztül. Illessze be a „Ennyi, itt a vége a szerkesztésnek” sor elé a következőt:
define( 'WP_HOME', 'https://example.com' );
define( 'WP_SITEURL', 'https://example.com' );Ezek a sorok megelőzik az adatbázisban lévő értékeket. A Beállítások > Általános mezői ekkor szürkén jelennek meg. Jelentkezzen be, állítsa be a helyes értékeket az adatbázisban, majd távolítsa el ismét a sorokat (vagy hagyja szándékosan ott, így senki nem tudja véletlenül megváltoztatni a címeket a kezelőfelületen keresztül).
A phpMyAdminon keresztül. Nyissa meg a wp_options táblát, és módosítsa a siteurl és a home értékeit.
HSTS: a böngésző megjegyezteti
A HSTS (Strict-Transport-Security) fejléccel a szerver azt üzeni a böngészőnek: „a következő időszakban ide csak https-en keresztül jöjjön.” A böngésző ezután saját maga alakítja át minden http:// hivatkozást https://-re, anélkül, hogy előbb egy nem védett kérést küldene.
Strict-Transport-Security: max-age=31536000; includeSubDomainsA HSTS egy jó kiegészítő lépés, de egy figyelmeztetéssel: az a böngésző, amely már látta a HSTS-t, ezután megtagadja, hogy a weboldalt érvényes tanúsítvány nélkül megnyissa, még a „folytatás mindenképp” lehetőséggel sem. Az includeSubDomains paraméterrel ez minden aldomainre érvényes. Ha van egy tanúsítvány nélküli aldomainje (például egy régi belső rendszer), az a HSTS után elérhetetlenné válik. Ezért kezdje egy rövid max-age értékkel (például egy nap, 86400), ellenőrizzen mindent, majd hosszabbítsa meg.
A gyakorlatban: így néz ki egy vezérlőpulton
Példaként a DirectAdmin szolgál. A cPanelben ez a rész SSL/TLS Status (AutoSSL) néven, a Pleskben SSL/TLS Certificates néven szerepel.
- Nyissa meg az SSL-tanúsítványok részt a domainjénél, és válassza az Ingyenes és automatikus Let's Encrypt tanúsítvány lehetőséget.
- Jelölje be az
example.comés awww.example.comopciókat, és igényelje meg a tanúsítványt. - A domainbeállításoknál jelölje be, hogy a látogatókat mindig https-re irányítsa (DirectAdminnál: Forceer SSL met https omleiding). Csak egyféle átirányítást használjon: két különböző egyidejűleg körbe-körbe irányítást okozhat („túl sok átirányítás”).
- A WordPressben lépjen a Beállítások > Általános menübe, és állítsa mindkét címet
https://-re.
Összefoglalás
- A https titkosít mindent a böngésző és a szerver között; a tanúsítvány igazolja, hogy ki a szerver.
- A Let's Encrypt ingyenes tanúsítványai rövid ideig érvényesek, és automatikusan megújulnak; minden olyan nevet le kell fedniük, amelyet a látogató begépel.
- A WordPress-címnek (siteurl) és a weboldal címének (home) is
https://kell lennie. - Ha egy hibás cím miatt kizárta magát, állítsa helyre a WP_HOME és a WP_SITEURL segítségével a wp-config.php fájlban vagy a phpMyAdminban.
- A HSTS egy jó kiegészítő lépés; kezdje rövid érvényességgel.
Kvíz
Feladat
Feladat A3.1: Megfelelő az Ön tanúsítványa? Adja meg a weboldala címét. A program TLS-kapcsolatot létesít a www nélküli névvel és a www-vel is (ha létezik), és ellenőrzi: érvényes és megbízható-e a tanúsítvány, lefedi-e mindkét nevet, érvényes-e még legalább 14 napig, és küld-e a weboldal HSTS fejlécet? Ha hiányzik a HSTS, az narancssárgán jelenik meg magyarázattal, nem hibaként.
Továbbolvasás
Ezek a cikkek a WebOké vezérlőpultjain bemutatott lépéseket írják le; más vezérlőpultokon hasonlóan működnek.
- DirectAdmin útmutató 6.1: Mi az SSL, és hogyan intézi azt a WebOké?
- DirectAdmin útmutató 6.2: Ingyenes Let's Encrypt tanúsítvány igénylése
- DirectAdmin útmutató 6.3: Tanúsítvány www, aldomain és wildcard részére
- DirectAdmin útmutató 6.4: Látogatók átirányítása mindig HTTPS-re
- SSL-tanúsítvány aktiválása, megújítása és a problémák megoldása
- Az ingyenes és a fizetős tanúsítvány közötti különbség
- Ingyenes DNS-tanfolyam 5.2: CAA: ki adhat ki tanúsítványokat?
