SSL beállítás – teljes útmutató WordPress honlapokhoz
A tárhelyszolgáltatód hogyan áll az SSL kérdéséhez?
Egyes tárhelyszolgáltatók lehetővé teszik, hogy Te kezeld az SSL tanúsítványt, mások nem. Egyes tárhelyszolgáltatók biztosítanak ingyen SSL-t, míg mások külön díjat kérnek érte. Még mindig vannak olyan tárhelyek, ahol csak úgy lehet SSL-ed, ha dedikált IP címet is vásárolsz hozzá. Az egyik ilyen nagy nevű szolgáltató a bluehost.com (sőt, náluk csak a rajtuk keresztül vásárolt SSL-t tudod használni – legalábbis osztott tárhelyen).
Ha külön dedikált IP címet kell hozzá vásárolnod, akkor az átlagosan évi 12-15000 Ft plusz kiadást is jelent. Ha a szolgáltatón keresztül kell vásárolnod az SSL-t, akkor a határ nagyjából a csillagos ég. A Bluehostnál ez a kettő kb. 40 ezer forint plusz kiadás évente, de tudok olyanról is, hogy az SSL-ért 350 dollárt kérnek el évente.
Amennyiben a tárhelyszolgáltatód nem teszi lehetővé számodra az SSL tanúsítványok kezelését, akkor tőle kell kérned az SSL installálását. Ebben az esetben erősen javaslom, hogy az SSL telepítését követően látogasd meg a weboldal ellenőrző programokat:
- gtmetrix.com,
- developers.google.com/speed/pagespeed/insights/,
- jitbit.com/sslcheck/,
- tools.pingdom.com.
Ezekkel ellenőrizni tudod, hogy a robotok megfelelően látják-e a webodalad. Tavaly ugyanis belefutottam egy olyan szolgáltatóba, ahol az SSL telepítését követően a robotok 500 hibát kaptak a honlaptól válaszként, ráadásul – mint utólag a szerver error logból kiderült – a Facebookról érkező látogatók is 500-as hibát kaptak. Az ilyen pedig nem tesz jót sem a látogatottságodnak, sem a helyezésednek. Ha nem veszed időben észre, hamar elkezdesz visszafelé csúszni a találati listán.
Amennyiben a tárhelyszolgáltatód lehetővé teszi az SSL kezelését, több lehetőséged is van. Először is, a tárhelykezelő felületeden találsz egy SSL/TLS Manager vagy hasonló nevű linket/ikont.
Ingyen SSL
Az ingyen SSL a titkosítás technikai oldalát biztosítja, garancia (biztosítás) nincs hozzá. Egyszerű projektekhez teljesen megfelel. De ha pl. webáruházat üzemeltetsz, akkor már fektess be egy kis pénzt a tanúsítványba.
Let’s Encrypt
A Let’s Encrypt SSL-t akkor tudod használni, ha telepítve van a szerveren (vagy telepíted a VPS-edre). A projektet nagy nevek támogatják (Mozilla, Chrome, CISCO, stb.), nem kell attól tartanod, hogy „elhal”. A projekt weboldala: https://letsencrypt.org/. Azoknál a tárhelyszolgáltatóknál, ahol támogatva van, a tárhelykezelő felületen megtalálod – rendszerint Let’s Encrypt néven. A kezelése roppant egyszerű, rákattintasz az ikonra, ott a domain neved mellett az „issue” linkre, majd telepíted. Hátránya, hogy 3 havonta kell hosszabbítani.
Itt találsz hozzá egy lépésről-lépésre útmutatót:
https://extratarhely.com/ssl-beallitasa-cpanelen-lepesrol-lepesre/
Let’s Encrypt SSL ingyen netes szolgáltatásból
Léteznek más szolgáltatások is, ahol ingyenesen szerezhetsz SSL tanúsítványt, mint pl. a startssl.com, sslforfree.com. Mindegyik szolgáltatás megfelelő. A startssl kezelőfelülete nem a legegyszerűbb. Ha ezt választod, célszerű a honlapod SSL kezelőjében legenerálnod a CSR kódot, hogy biztosan ne legyen semmilyen problémád a telepítés során. Előfordult már, hogy a szerver nem fogadta el a máshol generált kódokat (beleértve a saját számítógépen generáltat is).
Most végigvezetlek, hogyan kell a egy domainhez SSL-t beállítani az sslforfree.com szolgáltatást használva. A példában a wordpresskonyv.com domaint állítjuk be.
Először belépünk a cpanel felületén az SSL/TLS Manager menübe, majd felkeressük az sslforfree.com weboldalt. Az SSL kezelőben az SSL tanúsítványok kezelése (Manage SSL sites) linket választjuk, majd itt kiválasztjuk a megfelelő domaint. Az sslforfree oldalon a weboldal mezőbe beírjuk a wordpresskonyv.com domaint. A Create linkre kattintva visszaadja, hogy Free SSL Certificate Validation for „wordpresskonyv.com, www.wordpresskonyv.com” és ad három érvényesítési lehetőséget.
- Automatikus FTP azonosítás. Ebben az esetben meg kell adni az ftp kapcsolódási adatokat.
- Manuális azonosítás. Ebben az esetben két domain validációs fájlt kell előbb letöltened, majd fel kell tölteni a domain .well-known/acme-challenge könyvtárába.
- DNS azonosítás. Ebben az esetben a DNS adatokhoz fel kell venni két txt rekordot, amit az sslforfree megjelenít, ha erre kattintasz.
A legegyszerűbb az ftp adatok megadása. Gyakorlatilag a fő user nevet és a hozzátartozó jelszót kell megadni az azonosításhoz (azt, amivel a cpanelre is be lehet lépni). Ezután a Download Free SSL Certificate linkre kattintva, a következő ablakban betölti a szükséges kódokat: Certificate, Private Key, CA bundle. Ezt kell bemásolni az SSL kezelő megfelelő mezőibe. A bemásolásnál kis zöld pipa jelzi, hogy jól csináltad.
Alaphelyzetben az SNI engedélyezés a Mail-hez ki van pipálva. Javaslom, ezt hagyd így. Majd klikkelj a Certifikáció telepítése gombra. A szervered szépen feltelepíti a tanúsítványt.
Mielőtt bezárod az sslforfree.com ablakot, érdemes letöltened a certifikációt (klikk a Download All SSL Certificate Files gombra), hogy meglegyen a gépeden is.
Ha tűzfalat használsz, ne felejtsd el a 67.222.10.211 IP címet fehérlistára tenni, pl. a htaccess fájlodba beírni: allow from 67.222.10.211
Tipp: Ha használsz cache bővítményt, kapcsold ki, ürítsd a cache-t, mielőtt az SSL beállításhoz kezdesz. Tudnak galibát okozni 🙂 Sőt, ha www-s domaint használsz, az sem árt, ha átmenetileg, a beállítás időtartamára letiltod az átirányítást.
SSL certifikáció vásárlása
Amennyiben az ingyenes SSL nem jó neked, akkor valahol vásárolsz egy certifikációt. Azt, hogy melyik fajtát, neked kell eldönteni. A legegyszerűbb és legolcsóbb a domain validációs tanúsítvány, ami egy domainre szól. Van ezen kívül multi domain, willcard (aldomainre is szóló), EV SSL (un. greenbar), ahol a vállalkozásod neve is szerepel a címsorban.
Bármelyiket is vásárolod, először a tárhelyed SSL kezelőjében generálnod kell egy CSR kódot. Tehát irány a tárhelykezelőd SSL menüpontja, azon belül a „Certificate Signing Request (CSR) link. Beírod a domaint – domained.com és új sorba a www.domained.com, kitöltöd a vállalkozásod adatait és legenerálod a kódot.
A CSR kódot és a Private Key kódot érdemes elmentened a gépedre is. A CSR kódra szükséged lesz a certifikáció vásárlásnál. A vásárlás után, attól függően milyen validálású tanúsítványt vettél, perceken belül (domainre szóló) vagy néhány napon belül (vállalkozásra szóló) megkapod a tanúsítványt, amit a tárhelykezelő felületed SSL kezelőjében a fent már ismertetett módon telepítened kell.
SSL Certifikáció vásárlásához javasolt szolgáltató: namecheap.com
A domain ezzel be van állítva, akár az ingyen SSL-t választottad, akár vásároltál tanúsítványt. Persze, itt még korántsem végeztünk 🙂 Most következik a WordPress beállítása.
WordPress beállítása SSL-hez
Most megyünk a tárhelykezelő felületre, azon belül a phpmyadminba. Itt kiválasztjuk a honlaphoz tartozó adatbázist, majd az SQL (SQL lekérések futtatása) linket. Az itt megjelenő ablakban le kell futtatni egyesével néhány kérést. Természetesen a domain név mellett a wp_ előtagot is írd át, ha más előtaggal telepítetted a WordPresst.
UPDATE wp_options SET option_value = replace(option_value, 'http://domain.com', 'https://domain.com') WHERE option_name = 'home' OR option_name = 'siteurl';
UPDATE wp_posts SET guid = replace(guid, 'http://domain.com','https://domain.com');
UPDATE wp_posts SET post_content = replace(post_content, 'http://domain.com', 'https://domain.com');
UPDATE wp_postmeta SET meta_value = replace(meta_value,'http://domain.com','https://domain.com');
Miután ezzel készen vagy, hívd be újra a az adatbázis listát, majd kattints a keresésre. A keresőmezőbe írd be a domained nevét http:// előtaggal, és kattints a mind kijelölése linkre, végül az indítás gombra. A következő ablakban látod, hol rejtőzik még néhány http kezdetű link. Itt már rendszerint keveset kellene találnod (feltéve, hogy nem használsz nyakatekert bővítményeket), így akár manuálisan is átírhatod.
Ha valamelyik táblában túl sok régi URL-t találsz, akkor a fentiek mintájára elkészítheted magadnak az SQL utasítást, pl.
UPDATE konyv_options SET option_value = replace(option_value, 'http://www.wordpresskonyv.com', 'https://www.wordpresskonyv.com');
Az első elem a tábla neve (konyv_options), a cserélendő elemet látod a phpmyadminban, az oszlop neve, amelyik alatt a régi URL-ek szerepelnek a tartalomban, mint option_value.
Ha a régi http URL-lel történő keresésre már nem kapsz vissza találatot, akkor készen vagy az adatbázissal.
Végül nyisd meg a .htaccess fájlodat és írd be az átirányítást.
– Apache szerver esetén:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://www.domained.com/$1 [R,L]
</IfModule>
– Nginx szerver esetén:
server {
listen 80;
server_name domained.com www.domained.com;
return 301 https://domained.com$request_uri;
}
Ha multisite-od van, akkor a wp-config.php-ba még ezt is írd bele:
define('FORCE_SSL_ADMIN', true);
Most már elvileg készen vagy.
Ennek ellenére még mindig lehet olyan, hogy nem szép zöld a https és a lakatod. Ennek több oka is lehet. Van olyan link még mindig az oldalon, ami http-vel kezdődik. Ez leginkább akkor fordul elő, ha valamilyen page buildert használsz – főleg sablonba építettek tudnak ilyet produkálni – vagy módosított sablont, ahol pl. a lekérések statikus URL-ekre vannak cserélve . Ekkor végig kell menned az oldalakon, sablon fájlokon és a builderben, sablonban is lecserélni a linkeket.
Mielőtt elkezdesz ilyen esetben a-tól z-ig keresgélni: a jitbit.com ssl checkere gyorsan megmondja, hogy hol és miért nem lett szép zöld az URL-ed eleje.
Természetesen, mint szinte mindenre, az SSL erőltetésére is vannak bővítmények, amivel a böngészőben ugyanígy szép zöld URL érhető el. Azonban ne feledd: minél több bővítményt használsz, annál több esély van a weboldalad lassulására és annál több esélyed van az egyes frissítéseknél az ütközésekre, problémákra.